1

配列内の整数の合計を取得する際に問題があり、整数 * 1.5 の積を取得する際にも問題があります。私はJavaが初めてで、何時間もこれに取り組んでいるため、以下のコードは完全にオフになっている可能性があります。このプログラムの目的は、5 日間の毎日の労働時間数を入力することです。それと賃金率を使用して、平均労働時間、合計時間、および合計賃金を出力することになっています。残業代がある場合は、残業代も含めて支払う必要があります。どんな助けでも大歓迎です。

String name;
String id;
int payRate;
int[] hours = new int[5];
int avgHours;
int totalPay;
int totalHours = 0;
int counter;
int overTime = 0;

//housekeeping
System.out.print("Enter the Employee's name: ");
inputString = input.readLine();
name = inputString;

System.out.print("Enter the Employee's ID: ");
inputString = input.readLine();
id = inputString;

System.out.print("Enter the Employee's pay rate: ");
inputString = input.readLine(); 
payRate = Integer.parseInt(inputString);

//hoursPay
counter = 0;
for(hours[counter] = 0; counter < 5; counter++)
{
    System.out.print("How many hours did the employee work? ");
    inputString = input.readLine();
    hours[counter] = Integer.parseInt(inputString);
}//endfor
    for(totalHours = 0; counter < 5; hours[counter]++);
    {
        totalHours += hours[counter];
        if(totalHours > 40)
        {
            overTime = payRate + (payRate / 2);
        }//endif
    }//endwhile

//print
if(counter == 5)
{
    System.out.println(name + " " + id + " $" + payRate + "/hour" );

    avgHours = totalHours / counter;
    totalPay = totalHours * payRate + overTime; 
    System.out.println...
    System.out.println...
    System.out.println...
4

2 に答える 2

0

代わりに

for(totalHours = 0; counter < 5; hours[counter]++);

書きます

for(counter = 0; counter < 5; counter++)
  1. セミコロンが削除されました。
  2. counter代わりにインクリメントhours[counter]
于 2013-08-26T04:21:27.760 に答える
0

@bp_1、すべてのコードをもう一度やり直して、以下に貼り付けました。できます。コーディング中に犯した根本的なエラーがありました。あなたのコードと私のコードを比較すると、違いがわかります。

String name;
String id;
int payRate;
int[] hours = new int[5];
int avgHours;
int totalPay;
int totalHours = 0;
int counter;
int overTime = 0;
Scanner input = new Scanner(System.in);
//housekeeping
System.out.print("Enter the Employee's name: ");
String inputString = input.nextLine();
name = inputString;

System.out.print("Enter the Employee's ID: ");
inputString = input.nextLine();
id = inputString;

System.out.print("Enter the Employee's pay rate: ");
inputString = input.nextLine();
payRate = Integer.parseInt(inputString);

//hoursPay
counter = 0;
for (hours[counter] = 0; counter < 5; counter++) {
System.out.print("How many hours did the employee work? ");
inputString = input.nextLine();
hours[counter] = Integer.parseInt(inputString);
}//endfor

counter = 0;// reset counter here
for (totalHours = 0; counter < 5; counter++) {
totalHours += hours[counter];
if (totalHours > 40) {
overTime = payRate + (payRate / 2);
}//endif
}//end of for loop

if (counter == 5) {
System.out.println(name + " " + id + " $" + payRate + "/hour");
avgHours = totalHours / counter;
totalPay = totalHours * payRate + overTime;
System.out.println("Average Hours: " + avgHours);
System.out.println("Total pay: " + totalPay);
System.out.println("Total Hours: " + totalHours);
System.out.println("Overtime ($): " + overTime);
}//end of if
于 2013-08-26T09:49:37.200 に答える