2016-10-02 7 views
0

これは私の最初の質問ですので、エラーがある場合はお詫び申し上げます。私はC#と私の最初の質問で非常に新しいです。これは私に課された割り当てからの抜粋です:請求書からの複数のチップオプションのコーディング

プログラムは食事のため 料、(100のパーセントとして)税率を入力するようユーザーに依頼する必要があり、利用者が希望する場合パーセント(%)または の金額($)で先端を表示します。パーセントで転倒した場合、次のいずれかのオプションを選択するようユーザーに尋ねる:

%
15%
20%
カスタム

10カスタムオプションは、入力するようユーザーに求めます税を追加する前に計算されるチップのパーセント。ユーザーが金額でチップを選択した場合は、チップ金額を入力するようにユーザーに依頼します。食事代、税額、チップ金額(チップパーセンテージ)、および総請求額を画面に表示します。

私は税金とアウトプットを持っています。しかし、私はヒントの好みと異なるパーセンテージとカスタムの間の選択に立ち往生しています。どんな助けでも大変感謝しています。

編集:これはコンソールに出力するだけで、すべてのコードをメインで実行することができます。指示はパーセントと量の選択のために1または2を入力し、異なる百分率には1〜4を入力します。

+1

どのようにアプリケーションを構築していますか?これはデスクトップまたはWebアプリケーションですか? WinForms? WPF? ASP.NET WebForms? ASP.NET MVC? – Dai

+0

私はMicrosoft Visual Studio 2015を使用しています。それを追加する必要があります。 –

+0

"Visual Studio 2015"を使用している場合は何も教えてくれませんが、VS2015を使って上記のプロジェクトタイプを* – Dai

答えて

0

すべてのオプションをユーザーに表示し、それらの間で選択するようにユーザーに求めます。プログラムは入力が有効で、入力が有効なオプションに対応していることを確認します。

int ReadInt(Int32 min, Int32 max) { 

    while(true) { 

     Console.WriteLine("Please enter an integer between {0} and {1} (inclusive).", min, max); 

     Int32 value; 
     if(Int32.TryParse(Console.ReadLine(), out value))) return value; 
    } 
} 


static void Main() { 

    // ... 

    Console.WriteLine("[1] - 10%"); 
    Console.WriteLine("[2] - 15%"); 
    Console.WriteLine("[3] - 20%"); 
    Console.WriteLine("[4] - Custom"); 

    Console.WriteLine("Select a tip option."); 

    Int32 opt = ReadInt(1, 4); 

    Int32 tipAmount; 
    switch(opt) { 
     case 1: { 
      tipAmount = 10; 
      break; 
     } 
     case 2: { 
      tipAmount = 15; 
      break; 
     } 
     case 3: { 
      tipAmount = 20; 
      break; 
     } 
     case 4: { 
      Console.WriteLine("Enter an integer tip percentage value:"); 
      tipAmount = ReadInt(0, 100); 
      break; 
     } 
     default: throw new InvalidOptionException("Impossible user input."); 
    } 

    Decimal tipAmount = (((Decimal)tipAmount)/100.0M) * invoiceAmount; 

    Console.WriteLine("Please pay {0:C} to the waitstaff as compensation for their institutional labor exploitation."); 

    // ... 

} 
+0

申し訳ありませんが、割り当てはパーセント値と小数値のどちらかを選択するよう求められているので、後でそれを追加できますか?答えの中にあるもののように並べ替えますが、1または2を入力します。これはパーセンテージまたは通常の量です。 –

+0

@SpencerWattamaniukこれはすでに 'case 4'の答えです。 – Dai

+0

私は私のプログラミングにコードを入力しましたが、デバッグできない5つのエラーが発生します。 ReadIntsの下でエラーが発生し、デフォルトのtipAmountの下に2つのエラーが発生します。 –

関連する問題