GESP认证C++编程真题解析 | 202412 一级
编程题
B4062 温度转换
【题目来源】
洛谷:[B4062 GESP202412 一级] 温度转换 - 洛谷 (luogu.com.cn)
【题目描述】
小杨最近学习了开尔文温度、摄氏温度和华氏温度的转换。令符号 \(K\) 表开尔文温度,符号 \(C\) 表摄氏温度,符号 \(F\) 表华氏温度,这三者的转换公式如下:
\(C=K−273.15\)
\(F=C×1.8+32\)
现在小杨想编写一个程序计算某一开尔文温度对应的摄氏温度和华氏温度,你能帮帮他吗?
【输入】
一行,一个实数 \(K\),表示开尔文温度。
【输出】
一行,若输入开尔文温度对应的华氏温度高于 \(212\),输出 Temperature is too high!;
否则,输出两个空格分隔的实数 \(C\) 和 \(F\),分别表示摄氏温度和华氏度,保留两位小数。
【输入样例】
412.00
【输出样例】
Temperature is too high!
【算法标签】
《洛谷 B4062 温度转换》 #GESP# #2024#
【代码详解】
#include <bits/stdc++.h>
using namespace std;
double k; // 定义变量k,表示输入的绝对温度(单位:开尔文)
int main() {
cin >> k; // 输入绝对温度k
double c = (k - 273.15); // 将开尔文温度转换为摄氏温度
double f = c * 1.8 + 32; // 将摄氏温度转换为华氏温度
// 判断华氏温度是否超过212度
if (f > 212) {
cout << "Temperature is too high!" << endl; // 输出提示信息
} else {
printf("%.2lf %.2lf\n", c, f); // 输出摄氏温度和华氏温度,保留两位小数
}
return 0;
}
【运行结果】
412.00
Temperature is too high!
B4063 奇数和偶数
【题目来源】
洛谷:[B4063 GESP202412 一级] 奇数和偶数 - 洛谷 (luogu.com.cn)
【题目描述】
小杨有 \(n\) 个正整数,他想知道其中的奇数有多少个,偶数有多少个。
【输入】
第一行包含一个正整数 \(n\),代表正整数个数。
之后 \(n\) 行,每行包含一个正整数。
【输出】
输出两个正整数(英文空格间隔),代表奇数的个数和偶数的个数。如奇数或偶数的个数为 \(0\),则对应输出 \(0\)。
【输入样例】
5
1
2
3
4
5
【输出样例】
3 2
【算法标签】
《洛谷 B4063 奇数和偶数》 #GESP# #2024#
【代码详解】
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10; // 定义常量N,表示数组的最大大小
int n; // n: 输入的整数个数
int odd, even; // odd: 奇数个数,even: 偶数个数
int main() {
cin >> n; // 输入整数个数n
// 遍历输入的n个整数
for (int i = 1; i <= n; i++) {
int x;
cin >> x; // 输入当前整数x
if (x % 2) odd++; // 如果x是奇数,odd加1
else even++; // 如果x是偶数,even加1
}
// 输出奇数个数和偶数个数
cout << odd << " " << even << endl;
return 0;
}
【运行结果】
5
1
2
3
4
5
3 2
浙公网安备 33010602011771号