对于循环除数 对于C++,我是个业余爱好者,但我已经收到了一个超出我的知识的任务。p>
任务是输入数字n,m。程序必须把它当作一个区间,在这个区间内,它检查是否有任何数是具有相同指数的数之和 编辑:(18.10.15) 结果我没有正确理解我的任务。这是: 用户输入两个数字。程序将其作为检查所有数字的间隔。如果间隔中有一个数字,其所有数字的同一指数之和就是该数字,则程序显示该数字 例如,我输入100和200。在这段时间里有153人。 153 = 1^3 + 5^3 + 3^3 (1+125+27) 节目显示153对于循环除数 对于C++,我是个业余爱好者,但我已经收到了一个超出我的知识的任务。p>,c++,for-loop,divide,C++,For Loop,Divide,任务是输入数字n,m。程序必须把它当作一个区间,在这个区间内,它检查是否有任何数是具有相同指数的数之和 编辑:(18.10.15) 结果我没有正确理解我的任务。这是: 用户输入两个数字。程序将其作为检查所有数字的间隔。如果间隔中有一个数字,其所有数字的同一指数之和就是该数字,则程序显示该数字 例如,我输入100和200。在这段时间里有153人。 153 = 1^3 + 5^3 + 3^3 (1+125+27) 节目显示153 cin >> n; cin >> m;
cin >> n;
cin >> m;
for (int i=n; i<=m; i++)
{
for (int k=n; k<=i; k++)
{
a = n % 10; //for example, I enter 153, then a=3
f = n /= 10; //f=15
b = f % 10; //b=5
f = f /= 10; //f=1
c = f % 10; //c=1
f = f /= 10;
d = f % 10;
for (int j=1; j<=5; j++)
{
a = a * a;
b = b * b;
c = c * c;
d = d * d;
if (a + b + c + d == n)
{
cout << n << endl;
}
}
}
}
cin >> n;
cin >> m;
for (int i=n; i<=m; i++)
{
for (int k=n; k<=i; k++)
{
a = n % 10; //for example, I enter 153, then a=3
f = n /= 10; //f=15
b = f % 10; //b=5
f = f /= 10; //f=1
c = f % 10; //c=1
f = f /= 10;
d = f % 10;
for (int j=1; j<=5; j++)
{
a = a * a;
b = b * b;
c = c * c;
d = d * d;
if (a + b + c + d == n)
{
cout << n << endl;
}
}
}
}
cin>>n;
cin>>m;
对于(int i=n;i
任务是输入数字n,m。程序必须将其作为一个区间,在这个区间内,它检查是否有任何数字是具有相同指数的数字之和
假设给定的范围为[n,m)
,那么下面是您的程序:
return (n != m);
任何数字都可以被视为具有相同指数的数字之和。例如:
0 = 0 ^ 3 + 0 ^ 3 + 0 ^ 3
1 = 1 ^ 3 + 0 ^ 3
2 = 1 ^ 3 + 1 ^ 3
3 = 1 ^ 3 + 1 ^ 3 + 1 ^ 3
以此类推,即使是负数也是如此
因此,在任何非空范围内,至少存在一个这样的数字。“我所知道的只是如何让程序分别检查每个数字。”
“程序不得使用数组。”
for(int i=n;i=0;p--){
整数位数=剩余/(整数)数学功率(10,p);
剩余=i%(int)数学功率(10,p);
//3802 = 3*10^3 + 8*10^2 + 0*10^1 + 2*10^0
}
}
...
很抱歉,Java不是C++很抱歉,我回答得这么晚,而且我的问题措辞很糟糕——英语不是我的母语
但事实证明我没有正确理解我的任务。这里是:
用户输入两个数字。程序将其作为检查所有数字的间隔。如果间隔中有一个数字,其所有数字的同一指数之和就是该数字,则程序显示该数字
例如,我输入100和200。在这个间隔中有153。
153 = 1^3 + 5^3 + 3^3 (1+125+27)
节目显示153
cin >> n;
cin >> m;
for (int i=n; i<=m; i++)
{
for (int k=n; k<=i; k++)
{
a = n % 10; //for example, I enter 153, then a=3
f = n /= 10; //f=15
b = f % 10; //b=5
f = f /= 10; //f=1
c = f % 10; //c=1
f = f /= 10;
d = f % 10;
for (int j=1; j<=5; j++)
{
a = a * a;
b = b * b;
c = c * c;
d = d * d;
if (a + b + c + d == n)
{
cout << n << endl;
}
}
}
}
cin >> n;
cin >> m;
for (int i=n; i<=m; i++)
{
for (int k=n; k<=i; k++)
{
a = n % 10; //for example, I enter 153, then a=3
f = n /= 10; //f=15
b = f % 10; //b=5
f = f /= 10; //f=1
c = f % 10; //c=1
f = f /= 10;
d = f % 10;
for (int j=1; j<=5; j++)
{
a = a * a;
b = b * b;
c = c * c;
d = d * d;
if (a + b + c + d == n)
{
cout << n << endl;
}
}
}
}
cin>>n;
cin>>m;
对于(int i=n;i查找pow
函数以计算指数值。输入到程序中的项数和指数是不是也需要搜索它们?我不明白这个问题。任何范围内的任何数字都可以被视为具有相同指数的数的总和。这些指数有无限的版本nts.Matthew,这是完整的任务吗?闻起来像是家庭作业问题,但似乎你可能遗漏了一些信息。首先,每个数字都必须是唯一的吗?你需要程序返回什么?“检查是否有任何数字是具有相同指数的数的总和”。在你的例子中,3*10^3+8*10^2+0*10^1+2*10^0
它们的指数不一样。:)OP的问题措辞非常糟糕,但我确实认为他希望所有指数都匹配。这是可能的,但我遵循了陈述;-)“我所知道的只是如何让程序分别检查每个数字。”“程序不得使用数组。”