-3

クラスの課題をしようとしていますが、婚姻状況を数式に入れる方法を理解するのに苦労しています。これはクラスの 3 週目なので、コードをシンプルに保つ必要があり、if else ステートメントを使用する必要があることを覚えておいてください。前もって感謝します

ここに課題があるので、私がやろうとしていることをよりよく理解できます。

ユーザーに時給、労働時間、独身、既婚、離婚、寡婦のいずれであるかを尋ねるアプリケーションを設計する必要があります。次に、ユーザーの総支払額と正味支払額を計算します。ユーザーが 40 時間を超えて働いた場合、残業は通常料金の 1.5 倍で計算され、別途表示されます。ユーザーが結婚している場合は、15% の均一税率を使用します。ユーザーが独身の場合は 22%、離婚している場合は 23%、寡婦の場合は 13% (これらはあまり現実的ではないことがわかります)

そして、これまでの私のコードは次のとおりです。

double hourlyRate;
int hoursWorked;
string marriageStatus;
double Percent;

Console.WriteLine("Enter your Pay Rate");
Convert.ToDouble(Console.ReadLine());

Console.WriteLine("Enter the hours you worked this week");
Convert.ToInt16(Console.ReadLine());

Console.WriteLine("Enter your Marital status: M for married, S for single, D for divorced and W for widow");

if (marriageStatus == M)
    percent = .15
4

3 に答える 3

1

ユーザー入力に基づいて、marriageStatus 変数を設定していません。

したがって、次のことを行う必要があります。

marriageStatus = Console.ReadLine();

if(!String.IsNullOrEmpty(marriageStatus)) {
marriageStatus = marriageStatus.ToUpper();
if (marriageStatus == "M") {
    //do married stuff
} else if (marriageStatus =="W") {
  //do widowed stuff
} else if (marriageStatus == "S") {
  // do Single Stuff
} else if (marriageStatus == "D") {
  // do divorced stuff
} else {
  // invalid input - error handling
}
}
于 2012-11-16T00:13:50.483 に答える
0

いくつかの問題:

  1. コンソールから読み取っていますが、その入力をどこにも保存していません。読み取ったものを変数に入れる必要があります。
  2. mariageStatusif ステートメントでは、変数と変数を比較していますMが、M存在しません。ここで使用したいの"M"は、まったく異なるリテラルと比較することです。
于 2012-11-16T00:14:20.810 に答える
0

これにより、ユーザー入力が文字列に格納されます

string input = Console.ReadLine();

その後、あなたは行くことができます

if(input == "m" || input == "M")
{ percentage = 0.15;}
else if (input == "s" || input == "S")
{  percentage = .50; } 
else if (input = "w" || input == "W")
{percentage = .90; }
else
{
//there was an error
percentage = 0.0;
}
于 2012-11-16T00:17:13.267 に答える