質問はかなり長いですが、私が提供した情報が十分であることを願っています. BaysittingJob
オブジェクトを構築してその値を表示する必要があるポイントを除いて、すべてのコードが機能します。どうもありがとう。
アプリケーションで目的の結果を出力できません。次のようになっています。
- 2 桁の年号と 4 桁の連番でジョブ番号を表示する
- 選択したベビーシッター コードに基づいて、暗殺されたベビーシッター (コードは 1 から 3 まで)
- 子供の数
- 労働時間数
- 勤務時間数と選択したベビーシッターに基づく料金 ベビーシッター コードが 1 の場合、1 時間あたり $7 の料金が請求されます ベビーシッター コードが 2 または 3 の場合、料金は最初の子供の場合は 1 時間あたり $9 で、追加の子供は 1 時間あたり $4 です子
BabysittingJob
public class BabysittingJob {
private int jobNumber;
private int babysitterCode;
private String babysitter;
private int childrenNumber;
private int hoursWorked;
private double fee;
public BabysittingJob(int year, int sequentialNumber, int babysitterCode, int childrenNumber, int hoursWorked, String babysitter) {
year = year % 2000;
int jobNumber = ((year * 10000) + sequentialNumber);
if (babysitterCode == 1) {
babysitter = "Cindy";
} else if (babysitterCode == 2) {
babysitter = "Greg";
} else if (babysitterCode == 3) {
babysitter = "Marcia";
}
}
{
if (babysitterCode == 1) {
fee = hoursWorked * 7 * childrenNumber;
} else if (babysitterCode > 1 && childrenNumber == 1) {
fee = hoursWorked * 9 * childrenNumber;
} else if (babysitterCode > 1 && childrenNumber > 1) {
fee = (hoursWorked * 9) + ((--childrenNumber) * hoursWorked * 4);
}
}
public void displayResult() {
System.out.println("Your job number is:" + jobNumber + "Your baby sitter is:" + babysitter
+ "The number of children is:" + childrenNumber + "The number of hours worked is:"
+ hoursWorked + "Your fee is $:" + fee);
}
}
CreateBabysittingJob
...
import java.util.Scanner;
public class CreateBabysittingJob {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter year.");
int year = input.nextInt();
while (year < 2013 || year > 2025) {
System.out.println("Enter a year between 2013 and 2025");
year = input.nextInt();
}
System.out.print("Enter job number");
int jobNumber = input.nextInt();
while (jobNumber < 1 || jobNumber > 9999) {
System.out.println("Enter a number between 1 and 9999");
jobNumber = input.nextInt();
}
System.out.print("Enter babysitter code");
int babysitterCode = input.nextInt();
while (babysitterCode < 1 || babysitterCode > 3) {
System.out.println("Enter a number between 1 and 3");
babysitterCode = input.nextInt();
}
System.out.print("Enter number of children");
int childrenNumber = input.nextInt();
while (childrenNumber < 1 || childrenNumber > 9) {
System.out.println("Enter a number between 1 and 9");
childrenNumber = input.nextInt();
}
System.out.print("Enter number of hours");
int hoursWorked = input.nextInt();
while (hoursWorked < 1 || hoursWorked > 12) {
System.out.println("Enter a number between 1 and 12");
hoursWorked = input.nextInt();
}
BabysittingJob ca = new BabysittingJob(year, jobNumber, babysitterCode, childrenNumber, hoursWorked);
ca.displayResult();
}
}