题目描述
读入两个整数值A和N,计算从A开始的N个连续整数的和。
注意,如果读入的N为0或负数,则继续读取数字直至读入N值为正整数为止。
输入格式
共一行,包含整数A和若干个整数N。
输出格式
一个整数,表示从A开始的N个连续整数的和。
数据范围
1≤A≤100,
−100≤N≤100
输入样例1:
3 2
输出样例1:
7
输入样例2:
3 -1 0 -2 2
输出样例2:
7
算法1
#include<iostream>
using namespace std;
int main()
{
int a,n,num=0;
cin>>a;
while(cin>>n)
if(n>0)
break;
for(int i=1;i<=n;++i){
num+=a;
++a;
}
cout<<num;
return 0;
}
算法2
那么如何不用循环来求这个和呢?
数列啊!!!!
#include<iostream>
using namespace std;
int main()
{
int a,n,num;
cin>>a;
while(cin>>n,n<=0){} // while(cin>>n,n<=0);也可
cout<<(a+a+n-1)*n/2;
return 0;
}
niubility!! 还用上的数列公式啊。。
我就发个暴利破解吧:
牛逼
厉害
很棒哦,加油!