求整数段和
题目描述给定两个整数A和B,输出从A到B的所有整数以及这些数的和。
输入
在一行中给出2个整数A和B,其中-100≤A≤B≤100,其间以空格分隔。
输出
首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。
输出样例:
-3 -2 -1 0 1
2 3 4 5 6
7 8
Sum = 30 #include <stdio.h>
#include <stdlib.h>
#define MIN -100
#define MAX 100
int main(void)
{
int a, b, i, sum;
// 获取输入
scanf("%d", &a);
scanf("%d", &b);
// 判断是否符合要求
if(!(MIN<=a && a<=b && b<=100))
{
printf("输入不符合要求。\n");
return 0;
}
sum = 0;
for(i=1; a<=b; i++, a++) // i 用于记数换行,a自增为退出条件
{
printf("%d ", a);
if(i%5==0) // 5列
{
printf("\n");
}
sum += a; // 求和
}
printf("\nSum = %d\n", sum);
return 0;
} A, B = map(int, input().split())
arr =
count = 0
for i in arr:
if count == 5:
print()
count = 0
print(f'{i:5}', end='')
count += 1
print(f'\nSum = {sum(arr)}')
D:\>python test.py
-3 8
-3 -2 -1 0 1
2 3 4 5 6
7 8
Sum = 30 本帖最后由 傻眼貓咪 于 2022-3-21 22:37 编辑
A, B = map(int, input().split())
sum = 0
for n, num in enumerate(range(A, B+1)):
print(f"{num:>5}", end = "") if (n+1)%5 else print(f"{num:>5}")
sum += num
print("\nsum =", sum)
页:
[1]