今週はこのタイプの質問の週のようです。そして、すべての新しいものといくつかの古いものを読んだ後、私は同じように混乱しています!
5 人の従業員のテキスト ファイルがあり、それぞれの従業員の名前の下に 10 の給与値がリストされています。このファイルを読み込んで、従業員名、最低給与、最高給与、および各人の平均給与を見つけて表示します。ファイルの読み取りを制御するループ、配列にデータを追加するループ、計算を行うループの 3 つが必要です。Math.round
各人の情報を 1 行に出力する必要があり、聞いたことがないような方法で小数点以下 2 桁に丸められるようにする必要があります。
私が持っているコードの混乱をお見せするのは恥ずかしいのですが、それはそれほど多くないからです。どのように進めればよいか、正しい考えを持っているかどうかさえわかりません。あなたの助けに感謝します。
更新されたコード:もう一度!
import javax.swing.*;
import java.io.*;
public class MinMaxSalary3
{
public static void main(String args[])throws Exception
{
// Declare input file to be opened.
FileReader fr = new FileReader ("salary.dat");
BufferedReader br = new BufferedReader (fr);
//General Declarations
final String TITLE = "Employee's Salary Report";
String employeeName, salaryString;
double avgSalary=0.0;
double totalSalary = 0.0;
double sum = 0.0;
// Declare Named Constant for Array.
final int MAX_SAL = 10;
// Declare array here.
int salary[] = new int[MAX_SAL];
System.out.println (TITLE);
while ((employeeName = br.readLine()) != null)
{
System.out.print ("" + employeeName);
// Use this integer variable as your loop index.
int loopIndex;
// Assign the first element in the array to be the minimum and the maximum.
double minSalary = salary[1];
double maxSalary = salary[1];
// Start out your total with the value of the first element in the array.
sum = salary[1];
// Write a loop here to access array values starting with number[1]
for (loopIndex = 1; loopIndex < MAX_SAL ;loopIndex++)
// Within the loop test for minimum and maximum salaries.
{
if (salary[loopIndex] < minSalary)
{
minSalary = salary[loopIndex];
if (salary[loopIndex] > maxSalary)
maxSalary = salary[loopIndex];
}
{
// Also accumulate a total of all salaries.
sum += sum;
// Calculate the average of the 10 salaries.
avgSalary = sum/MAX_SAL;
}
// I know I need to close the files, and end the while loop and any other loops. I just can't think that far right now.
}
{
// Print the maximum salary, minimum salary, and average salary.
System.out.println ("Max Salary" + maxSalary);
System.out.println ("Min Salary" + minSalary);
System.out.println ("Avg Salary" + avgSalary);
}
System.exit(0);
}
}
}