不计算一个范围内的完美数
Not counting number of perfect numbers within a range?
我想找到一个范围内的完美数的个数。这就是我迄今为止所做的。
#include <iostream>
using namespace std;
int main()
{
// cout<<"Hello World";
int sum = 0;
int count = 0;
int x,y;
cout<<"Enter the first number";
cin>> x;
cout<<"Enter the second number";
cin>>y;
for(int i=x;i<=y;i++)
{
for(int j=1; j<i; j++)
{
if(i%j == 0)
{
sum=sum+j;
}
}
if(sum == i)
{
count++;
}
}
cout<<"The number of pefect numbers are: "<<count;
}
然而,当我输入范围时,它会告诉我,在例如1-10的范围内可用的完美数字的数量是0。
为什么?我搞不清楚这里出了什么问题?
需要为每个输入生成sum=0
。例如
if(sum == i) {
count++;
}
sum = 0; /* add this line here */
或
for(int i=x;i<=y;i++) {
sum = 0; /* or make sum as 0 here */
for(int j=1; j<i; j++) {
if(i%j == 0) {
sum=sum+j;
}
}
if(sum == i) {
count++;
}
}
另请阅读为什么"使用命名空间std"被认为是不好的做法?
相关文章:
- 为什么在全局范围内使用"extern int a"似乎不行?
- 错误:未在此范围内声明'reverse'
- 并行用于C++17中数组索引范围内的循环
- 求出有多少个数字是完美平方,而sqrt()是L,R范围内的素数
- 不计算一个范围内的完美数
- 错误:"imread"未在此范围内声明
- 我在范围内未声明的错误类有问题
- 如何在cpp中使用地图显示给定日期范围内(在下面的问题中)的费率?
- 我有一个数组,我想输入一个范围,然后找到范围内所有偶数的总和?
- 未在此范围内声明错误 'xy'
- 在C++中使用变量而不是"#define"来指定数组大小是不是一种糟糕的做法?(C错误:在文件范围内
- 命名空间范围内的外部 - GCC vs clang vs msvc
- 如何改进一堆在已知值范围内评估变量的 else-if 条件?
- 如何仅使用 While 循环在给定范围内找到可被 7 整除的计数整数
- Socklen_t未在此范围内声明
- 错误:'[' 之前预期的非限定 id 和错误:'users'未在此范围内声明
- 查找给定范围内最长连续 1 的频率
- "Main"已在当前范围内声明
- 给定范围内的完美平方:循环执行异常
- 求出给定范围内的完美正方形的数量