import java.util.Scanner;public class TutorialMark
{
public static void main (String[] args)
{
final double IN_TUTE_PERCENT = 0.7;
final double OUT_TUTE_PERCENT = 0.3;
final int ONE_HUNDRED = 100;
int beforeTuteMark;
int beforeTuteMax;
int tuteMarks;
int tuteMax;
int afterTuteMarks;
int afterTuteMax;
int outTuteAvg;
int inTutePercent;
double tuteMark; Scanner scan = new Scanner(System.in);
System.out.println("\nThis is your Tutorial Mark Calculator - Welcome\n");
System.out.print("Please enter the you gained for the before-Tutorial test: ");
beforeTuteMark = scan.nextInt();
System.out.print("Please enter the maximum available s for the before-Tutorial test: ");
beforeTuteMax = scan.nextInt();
System.out.print("Please enter the number of s you gained for the in-Tutorial test: ");
tuteMarks = scan.nextInt();
System.out.print("Please enter the maximum available s for the in-Tutorial test: ");
tuteMax = scan.nextInt();
System.out.print("Please enter the number of s you gained for the after-Tutorial test: ");
afterTuteMarks = scan.nextInt();
System.out.print("Please enter the maximum available s for the after-Tutorial test: ");
afterTuteMax = scan.nextInt();
System.out.println();
outTuteAvg = beforeTuteMark + afterTuteMarks / beforeTuteMax + afterTuteMax * ONE_HUNDRED;
inTutePercent = tuteMarks / tuteMax * ONE_HUNDRED;
tuteMark = OUT_TUTE_PERCENT * outTuteAvg + IN_TUTE_PERCENT * inTutePercent;
System.out.println("You achieved an average for your out-of-Tutorial test of " + outTuteAvg + "%");
System.out.println("You achieved a for your in-Tutorial test of " + inTutePercent + "%");
System.out.println("Your final Tutorial is " + tuteMark + "%");
System.out.println();
}
}
这么一个类...要求:
修改TutorialMark的类
1把TutorialMark的类修改到正确的数学表达式,使这个程序能正确计算出结果。*参照上述例子的计算方法。
2修改TutorialMark的类使两部分占最终评估的比重有效(那两个百分数,例子里的70%跟30%),且可以被使用者输入:
•提示使用者这两个比重
•当结果被输出在显示器上时显示这两个比重
3为学生的名字(拼音)预作安排
•提示使用者他们的名字
•当结果被输出在显示器上时显示他们的名字在最上面一行
4为学生的科目预作安排
•提示使用者他们的科目
•当结果被输出在显示器上时在他们名字的下一行显示他们的科目
5引入随机类以便一个随机数字可以产生作为在小课上的测试分数。
注意:这个随机数字必须在限定范围内产生才能有效,范围参照小课测试分数,在个人数据部分(就是另一分有我学号075720的文件)。
7安排输出程序以便百分数以小数点后一位的形式保留并显示出来,
•例子:82。827142%显示在显示器上为82。8%
8个人数据使用及要求
•运行你的程序并使用提供的数据,随机加上数字作为在小课上的测试分数进行计算
•保存方法(这个我自己做)例子:假设在小课上的测试分数占最后评估的70%不在小课上的测试分数占最后评估的30%,某个学生获得如下分数:
•在小课之前的测试:21/35
•在小课上的测试:45/60
•在小课之后的测试:18/25
在小课上的测试部分将是:45/60或者75%
不在小课上的测试部分:将在小课之前的测试分数加上在小课之后的测试分数:
21/35+18/25=39/60或者65% 注意这里,计算方法是将分母相加做最后的分母,分子相加做最后的分子,没有通分等过程
每个被评估的部分都是通过乘上相对部分所占的百分数来计算的,比如:
•在小课上的测试评估=75%*70%=52。5%
•不在小课上的测试评估=65%*30%=19。5%
最后评估分数是将这两个部分相加:52。5%+19。5%=72%
注意:已给的程序不能正确计算出最终评估结果,需要进行修改谢谢了...
{
public static void main (String[] args)
{
final double IN_TUTE_PERCENT = 0.7;
final double OUT_TUTE_PERCENT = 0.3;
final int ONE_HUNDRED = 100;
int beforeTuteMark;
int beforeTuteMax;
int tuteMarks;
int tuteMax;
int afterTuteMarks;
int afterTuteMax;
int outTuteAvg;
int inTutePercent;
double tuteMark; Scanner scan = new Scanner(System.in);
System.out.println("\nThis is your Tutorial Mark Calculator - Welcome\n");
System.out.print("Please enter the you gained for the before-Tutorial test: ");
beforeTuteMark = scan.nextInt();
System.out.print("Please enter the maximum available s for the before-Tutorial test: ");
beforeTuteMax = scan.nextInt();
System.out.print("Please enter the number of s you gained for the in-Tutorial test: ");
tuteMarks = scan.nextInt();
System.out.print("Please enter the maximum available s for the in-Tutorial test: ");
tuteMax = scan.nextInt();
System.out.print("Please enter the number of s you gained for the after-Tutorial test: ");
afterTuteMarks = scan.nextInt();
System.out.print("Please enter the maximum available s for the after-Tutorial test: ");
afterTuteMax = scan.nextInt();
System.out.println();
outTuteAvg = beforeTuteMark + afterTuteMarks / beforeTuteMax + afterTuteMax * ONE_HUNDRED;
inTutePercent = tuteMarks / tuteMax * ONE_HUNDRED;
tuteMark = OUT_TUTE_PERCENT * outTuteAvg + IN_TUTE_PERCENT * inTutePercent;
System.out.println("You achieved an average for your out-of-Tutorial test of " + outTuteAvg + "%");
System.out.println("You achieved a for your in-Tutorial test of " + inTutePercent + "%");
System.out.println("Your final Tutorial is " + tuteMark + "%");
System.out.println();
}
}
这么一个类...要求:
修改TutorialMark的类
1把TutorialMark的类修改到正确的数学表达式,使这个程序能正确计算出结果。*参照上述例子的计算方法。
2修改TutorialMark的类使两部分占最终评估的比重有效(那两个百分数,例子里的70%跟30%),且可以被使用者输入:
•提示使用者这两个比重
•当结果被输出在显示器上时显示这两个比重
3为学生的名字(拼音)预作安排
•提示使用者他们的名字
•当结果被输出在显示器上时显示他们的名字在最上面一行
4为学生的科目预作安排
•提示使用者他们的科目
•当结果被输出在显示器上时在他们名字的下一行显示他们的科目
5引入随机类以便一个随机数字可以产生作为在小课上的测试分数。
注意:这个随机数字必须在限定范围内产生才能有效,范围参照小课测试分数,在个人数据部分(就是另一分有我学号075720的文件)。
7安排输出程序以便百分数以小数点后一位的形式保留并显示出来,
•例子:82。827142%显示在显示器上为82。8%
8个人数据使用及要求
•运行你的程序并使用提供的数据,随机加上数字作为在小课上的测试分数进行计算
•保存方法(这个我自己做)例子:假设在小课上的测试分数占最后评估的70%不在小课上的测试分数占最后评估的30%,某个学生获得如下分数:
•在小课之前的测试:21/35
•在小课上的测试:45/60
•在小课之后的测试:18/25
在小课上的测试部分将是:45/60或者75%
不在小课上的测试部分:将在小课之前的测试分数加上在小课之后的测试分数:
21/35+18/25=39/60或者65% 注意这里,计算方法是将分母相加做最后的分母,分子相加做最后的分子,没有通分等过程
每个被评估的部分都是通过乘上相对部分所占的百分数来计算的,比如:
•在小课上的测试评估=75%*70%=52。5%
•不在小课上的测试评估=65%*30%=19。5%
最后评估分数是将这两个部分相加:52。5%+19。5%=72%
注意:已给的程序不能正确计算出最终评估结果,需要进行修改谢谢了...
double inTutePercent;2. outTuteAvg = ((double)(beforeTuteMark + afterTuteMarks)) / ((double)(beforeTuteMax + afterTuteMax)) * ONE_HUNDRED;3. inTutePercent = ((double)tuteMarks) / ((double)tuteMax) * ONE_HUNDRED;
不过那里面确实少括号..
可那些功能没实现...算了,结了吧