3.1
编程题
1
试题编号
:
2023-09-23-01-C-01
试题名称
:买文具
时间限制
:
1.0 s
内存限制
:
128.0 MB
3.1.1
问题描述
开学了,小明来到文具店选购文具。签字笔
2
元一支,他需要 X支;记事本
5
元一本,他需要 Y本;直尺
3元一把,他需要 Z把。小明手里有Q 元钱。请你通过编程帮小明算算,他手里的钱是否够买他需要的文具。
3.1.2
输入描述
输入
4
行。
第一行包含一个正整数 X,是小明购买签字笔的数量。约定 1<=X<=10。
第二行包含一个正整数 Y,是小明购买记事本的数量。约定 1<=Y<=10。
第三行包含一个正整数 Z,是小明购买直尺的数量。约定 1<=Z<=10。
第四行包含一个正整数 Q,是小明手里的钱数(单位:元)。
3.1.3
输出描述
输出
2
行。如果小明手里的钱够买他需要的文具,则第一行输出
"Yes"
,第二行输出小明会剩下的钱数(单位:元);
否则,第一行输出
"No"
,第二行输出小明缺少的钱数(单位:元)。
3.1.4
样例输入
1
11120
3.1.5
样例输出
1
Yes10
3.1.6
样例输入
2
1115
3.1.7
样例输出
2
No5
解析:先计算购买笔,本,尺一共需要多少钱,然后判断是否大于Q,根据判断结果计算缺钱还是剩钱,详见代码:
#include <iostream>
using namespace std;
int main() {
int x, y, z, q;
cin >> x >> y >> z >> q;
int t = x * 2 + y * 5 + z * 3;//计算总花费
if (q >= t) {//钱够
cout << "Yes" << endl;
cout << q - t << endl;
} else {//不够
cout << "No" << endl;
cout << t - q << endl;
}
return 0;
}