Menu
Coddy logo textTech

復習 - 関数の引数

CoddyのDartジャーニー「基礎」セクションの一部 — レッスン 76/94。

challenge icon

チャレンジ

簡単

TravelPlanner 関数を作成してください。この関数はユーザーが旅行を計画するのを支援します。関数は以下を行うべきです:

  • 必須 の名前付きパラメータ destination (String) を受け取る
  • 必須 の名前付きパラメータ durationInDays (int) を受け取る
  • デフォルト値が 1000 の オプション の名前付きパラメータ budget を受け取る
  • デフォルト値が 1 の オプション の名前付きパラメータ travelers を受け取る
  • デフォルト値が false の オプション の名前付きパラメータ includeInsurance を受け取る

関数はこの正確な形式で旅行の詳細を含むフォーマットされた文字列を返すべきです:

Trip to [destination] planned:
- Duration: [durationInDays] days
- Travelers: [travelers]
- Budget per person: $[calculated budget]
- Insurance: [Yes/No]

計算された予算は、総予算を旅行者数で割り、四捨五入して最も近い整数としたものです。

自分で試してみよう

// 下記のTravelPlanner関数を完成させる
String TravelPlanner({
  // TODO: destinationとdurationInDaysの必須名前付きパラメータを追加
  // TODO: デフォルト値1000のbudgetのオプション名前付きパラメータを追加
  // TODO: デフォルト値1のtravelersのオプション名前付きパラメータを追加
  // TODO: デフォルト値falseのincludeInsuranceのオプション名前付きパラメータを追加
}) {
  // TODO: budgetをtravelersで割って1人あたりの予算を計算
  // ヒント: 整数を得るために.round()を使用
  
  // TODO: 複数行文字列を使用してフォーマットされた旅行詳細を返す
  // ヒント: 複数行文字列にはトリプルクォート'''または"""を使用
  // 出力には以下を含める:
  // - 目的地
  // - 日数
  // - 旅行者数
  // - 1人あたりの予算($記号付き)
  // - 保険(Yes/No)
  
}

void main() {
  // 必須パラメータのみでテスト
  print(TravelPlanner(destination: 'Paris', durationInDays: 7));
  
  // すべてのパラメータでテスト
  print(TravelPlanner(
    destination: 'Tokyo',
    durationInDays: 10,
    budget: 5000,
    travelers: 3,
    includeInsurance: true,
  ));
}

基礎のすべてのレッスン