PTA L1-008 求整数段和
给定两个整数A和B,输出从A到B的所有整数以及这些数的和。
输入格式:
输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。
-3 8
输出格式:
首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。
-3 -2 -1 0 1
2 3 4 5 6
7 8
Sum = 30
一定要注意格式不能错,审清题目!
代码如下:
#include<iostream>
using namespace std;
int main()
{
int a, b,k=1,sum=0;
cin >> a >> b;
for (int i = a; i <= b; i++)
{
if (k == 6) { k = 1; cout<<endl; }//k负责判断换行
if ((i < 0 && i>-10) || (i>9 && i<100)) { cout << " " << i; }//需要三个空格补齐五个字符的数
else if(i==100 || (i<-9 && i>-100)) { cout << " " << i; }//需要二个空格补齐五个字符的数
else if (i ==-100 ) { cout << " " << i; }//需要一个空格补齐五个字符的数
else { cout << " " << i; }//需要四个空格补齐五个字符的数
k++;
sum += i;
}
cout << endl;
cout <<"Sum = "<< sum;
}