编写一个C++程序来查找从1到n的自然数之和。此程序允许您输入最大数字来计算自然数之和。接下来,我们使用while循环通过递增i值来迭代从1到n。在循环中,我们将i的每个值加到sum中并打印sum。
#include<iostream>
using namespace std;
int main()
{
int number, i = 1, sum = 0;
cout << "\nPlease Enter the Number to find Sum of Natural Num = ";
cin >> number;
while( i <= number)
{
sum = sum + i;
i++;
}
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}
Please Enter the Number to find Sum of Natural Num = 10
The Sum of Natural Number from 1 to 10 = 55
下面的程序显示了使用Do While循环的自然数之和示例代码。
#include<iostream>
using namespace std;
int main()
{
int number, i = 1, sum = 0;
cout << "\nPlease Enter the Number to find Sum of Natural Num = ";
cin >> number;
do
{
sum = sum + i;
i++;
} while( i <= number);
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}
Please Enter the Number to find Sum of Natural Num = 20
The Sum of Natural Number from 1 to 20 = 210
C++ 程序使用 For 循环查找自然数之和
在这里,我们在for循环中添加了一个额外的cout语句:cout << “\n Iteration = ” << i << “, i = ” << i << “, sum = “<< sum << ” + ” << i << ” = “<< sum + i;。此语句可帮助您逐次理解程序。
#include<iostream>
using namespace std;
int main()
{
int number, i = 1, sum = 0;
cout << "\nPlease Enter the Number to find Sum of Natural Num = ";
cin >> number;
for(i = 1; i <= number; i++)
{
cout << "\n Iteration = " << i << ", i = " << i << ", sum = "<< sum << " + " << i << " = "<< sum + i;
sum = sum + i;
}
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}

这个程序有助于使用函数计算自然数之和。
#include<iostream>
using namespace std;
int sumOfNaturalNumbers(int number)
{
int sum = 0;
for(int i = 1; i <= number; i++)
{
sum = sum + i;
}
return sum;
}
int main()
{
int number;
cout << "\nPlease Enter the Number to find Sum of Natural Num = ";
cin >> number;
int sum = sumOfNaturalNumbers(number);
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}
Please Enter the Number to find Sum of Natural Num = 25
The Sum of Natural Number from 1 to 25 = 325
使用数学公式计算自然数之和
众所周知,计算自然数之和的数学公式为=数字 * (数字 + 1) / 2)。
#include<iostream>
using namespace std;
int sumOfNaturalNumbers(int number)
{
if(number == 0)
{
return number;
}
else
{
return (number * (number + 1) / 2);
}
}
int main()
{
int number;
cout << "\nPlease Enter the Number = ";
cin >> number;
int sum = sumOfNaturalNumbers(number);
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}
Please Enter the Number = 50
The Sum of Natural Number from 1 to 50 = 1275
下面的程序将使用递归计算自然数之和。
#include<iostream>
using namespace std;
int sumOfNaturalNumbers(int number)
{
if(number == 0)
{
return number;
}
else
{
return (number + sumOfNaturalNumbers(number - 1));
}
}
int main()
{
int number;
cout << "\nPlease Enter the Number = ";
cin >> number;
int sum = sumOfNaturalNumbers(number);
cout << "\nThe Sum of Natural Number from 1 to " << number << " = " << sum;
return 0;
}
Please Enter the Number = 90
The Sum of Natural Number from 1 to 90 = 4095