[GESP 二级模拟] 周长与面积计算
GESP二级模拟题,多层循环、分支语句练习,难度★✮☆☆☆。
luogu-B3994 [GESP 二级模拟] 周长与面积计算
题目要求
题目描述
小洛有 个正方形,第 个正方形的边长为 ,第 个正方形的边长为 ,以此类推,第 个正方形的边长为 。它们被紧密地排列成一行。小洛想要知道这个图案的周长和面积分别是多少。
例如当 时的图案如下图所示。红色的边框代表整个图案的周长,绿色区域代表整个图案的面积:
输入格式
输入一个正整数 。
输出格式
输出两行。
第一行一个正整数代表图案的周长;
第二行一个正整数代表图案的面积;
样例输入 #1
5
样例输出 #1
40
55
样例输入 #2
9
样例输出 #2
108
285
提示
对于 的数据,;
对于所有数据,。
题目分析
解题思路
- 读取输入的正整数 。
- 计算图案的周长 ,根据题目描述,周长为 。
- 计算图案的面积 ,根据题目描述,面积为从 到 的所有正整数的平方和。
- 输出图案的周长 和面积 。
{% include custom/custom-post-content-inner.html %}
示例代码
#include <iostream>
using namespace std;
int main() {
long long n; // 定义一个长整型变量n
cin >> n; // 从标准输入流中读取n的值
long long s = 0, l = 0; // 定义两个长整型变量s和l,初始化为0
for (long long i = n; i >= 1; i--) { // 从n开始循环,每次递减1
s += i * i; // 计算i的平方并加到s上
}
l = (1 + n) * n; // 计算l的值
l += n * 2; // 计算l的值
cout << l << endl; // 输出l的值并换行
cout << s; // 输出s的值
return 0; // 返回0,表示程序正常结束
}
{% include custom/custom-post-content-footer.md %}
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
“luogu-”系列题目可在 洛谷题库 在线评测。
“bcqm-”系列题目可在 编程启蒙题库 在线评测。
GESP/CSP 认证学习微信公众号

Last updated on