【发布时间】:2013-03-01 15:20:10
【问题描述】:
我正在在线进行 C++ 挑战,我被困在这部分。
基本上,挑战如下。
“Derp 是一所大学的学生。他最喜欢的课是数学。年底快到了,Derp 问自己,他需要在最后一次考试中获得多少分才能获得“K”级。
老师今年考了5次,最高100分。
If <=60 = Grade : 1
If >=60 && <= 69 = Grade : 2
If >=70 && <= 79 = Grade : 3
If >=80 && <= 89 = Grade : 4
If >=90 && <= 100 = Grade: 5
如果你得到 89.8 分,你将获得 4 级,而不是 5 级。我们知道他的前四项测试的结果 - T1、T2、T3、T4。我们必须找出 Derp 在最后一次测试中需要多少最低分才能获得他想要的“K”级。
输入: 在输入中,我们首先通过 Derp "K" (2
输出: 我们必须输出 Derp 在他最后一次考试中获得的最低分数,以便在数学中获得他想要的“K”级。如果 Derp 没有机会获得“K”级,即使他的最后一次测试有最高分,我们必须输出“Impossible”。”
例子:
输入: 5 100 100 100 100
输出: 50
输入: 5 10 20 30 40
输出: 不可能
输入: 2 100 100 100 100
输出: 0
输入: 4 83 74 79 73
输出: 91
这是我目前得到的。
#include <iostream>
using namespace std;
int main()
{
int grade;
cin >> grade;
int t1,t2,t3,t4;
cin >> t1 >> t2 >> t3 >> t4;
if((t1+t2+t3+t4)/4<=59)
{
cout << "Grade: 1\n";
}
else if((t1+t2+t3+t4)/4>=60 && (t1+t2+t3+t4)/4<=69)
{
cout << "Grade: 2\n";
}
else if((t1+t2+t3+t4)/4>=70 && (t1+t2+t3+t4)/4<=79)
{
cout << "Grade: 3\n";
}
else if((t1+t2+t3+t4)/4>=80 && (t1+t2+t3+t4)/4<=89)
{
cout << "Grade: 4\n";
}
else if((t1+t2+t3+t4)/4>=90 && (t1+t2+t3+t4)/4<=100)
{
cout << "Grade: 5\n";
}
int t5;
return 0;
}
我也做了一些数学运算,得出了这个结论。
(100+100+100+100+x)/5>=90
(400+x)/5>=90
80+x/5 >= 90
x/5 >= 10
x >= 50
这基本上是上面的第一个示例输入/输出,以数学方式。我不确定我将如何编码。欢迎任何想法!
谢谢。
【问题讨论】:
-
你知道函数怎么写吗?
-
我在这里看到了一些重复。如果复制粘贴,最好引入
variable、function或class来封装它。 -
我确实知道如何编写函数,但我并没有真正用过很多。我解决的大多数任务都不需要创建函数..
-
不确定如何编写代码?您应该将您的问题限制在您面临的特定问题上,而不是仅仅将整个作业转储到 SO 上。 (基本上,只需忽略作业的部分和您已经工作的代码,专注于问题的本质。)
-
我的问题是如何在 C++ 中编写“数学”部分。我已经知道如何使用数学手动完成,但不是在 C++ 中。
标签: c++