【题解】[NOIP2017 普及组] 成绩

【题解】[NOIP2017 普及组] 成绩

小鱼干 134 2022-09-30

[NOIP2017 普及组] 成绩

题目背景

NOIP2017 普及组 T1

题目描述

牛牛最近学习了 C++ 入门课程,这门课程的总成绩计算方法是:

总成绩=作业成绩$ \times 20%+小测成绩小测成绩×30%+期末考试成绩期末考试成绩 \times 50%$

牛牛想知道,这门课程自己最终能得到多少分。

输入格式

三个非负整数 A,B,CA,B,C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是 100100 分。

输出格式

一个整数,即牛牛这门课程的总成绩,满分也是 100100 分。

样例 #1

样例输入 #1

100 100 80

样例输出 #1

90

样例 #2

样例输入 #2

60 90 80

样例输出 #2

79

提示

输入输出样例 1 说明

牛牛的作业成绩是 100100 分,小测成绩是 100100 分,期末考试成绩是 8080 分,总成绩是 100×20%+100×30%+80×50%=20+30+40=90100 \times 20\%+100 \times 30\%+80 \times 50\%=20+30+40=90

输入输出样例 2 说明

牛牛的作业成绩是 6060 分,小测成绩是 9090 分,期末考试成绩是 8080 分,总成绩是 60×20%+90×30%+80×50%=12+27+40=7960 \times 20\%+90 \times 30\%+80 \times 50\%=12+27+40=79

数据说明

对于 30%30\% 的数据,A=B=0A=B=0

对于另外 30%30\% 的数据,A=B=100A=B=100

对于 100%100\% 的数据,0A,B,C1000≤A,B,C≤100A,B,CA,B,C 都是 1010 的整数倍。

题目分析

阅读题目,可知题目要求的是课程的总成绩。根据题面信息:总成绩=作业成绩$ \times 20%+小测成绩小测成绩×30%+期末考试成绩期末考试成绩 \times 50%$ 。

C++中不存在百分号,需将其转换成小写的形式。

  • 20%=0.220\% = 0.2
  • $30% = 0.3 $
  • $50% = 0.5 $

代码实现

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
	int a,b,c;
	cin>>a>>b>>c;//输入三部分的成绩
	cout<<a*0.2+b*0.3+c*0.5;//根据规则进行计算
	return 0;
}