为什么这个循环每次都向sqdNumber_result输出0
Why is this loop outputting 0 every time to sqdNumber_result?
我试图找到整数平方中每个数字的和,对于输入到sqdnumber的任何整数,它都会将0输出到sqdnumber_result,我不知道为什么。
此外,这是通过edX完成的,但我已经在这个问题上被困了一周左右,我研究了很多不同的主题,但没有发现任何对我有用的东西。
我用代码块写了这个,但测试它的系统使用了代码板
void squaredSum(int sqdnumber,int &sqdNumber_result) {
for (int i=1; i>1; i++){
if (sqdnumber >= ((10^(i-1))-1)){
int rem = (sqdnumber % (10^i));
int rem1 = (sqdnumber % (10^(i-1)));
int temp = (rem - rem1);
sqdNumber_result = sqdNumber_result + (temp^2);
}
else{
break;
}
}
}
我刚开始编程,只是在学习用C++做循环。
这是循环的第一次迭代,我让他们的系统实际上给了我一个输出(我已经写了大约20次并重写了它),但它并没有给我一个有意义的输出。
我不会问,但我已经无计可施了。
在C++中,^
是xor运算符,而不是n次方。为此,您应该使用pow。
for语句不循环。第一次迭代的条件为false
有两个问题:
for (int i=1; i>1; i++){
这个循环根本不会循环,因为条件i>1
永远不会满足。
第二个问题是使用^
进行功率操作。C++中的^
不是幂运算符,它是exclusive-or
运算符。
因此,乍一看,答案是使用std::pow
函数来计算幂。然而,如果指数是整数,使用它可能会有缺点。原因是pow
是不能保证对整数幂完美工作。
将此视为使用pow()进行积分指数的危险
建议只使用一个10次方的简单值数组并进行查找。
你说你是C++的新手,所以我试图在不使用for循环的情况下获得一个解决方案,并尽可能地简化它。如果这有任何帮助,请告诉我。
//Code to calculate the sum of each digit squared//
#include<iostream>
using namespace std;
int main ()
{
int integer1,integer2,sum, square;
cout<<"Please enter two integers"<<endl;
cin>>integer1>>integer2 ;
cout<<"The sum of your integers is"<<" "<<endl;
sum = (integer1+integer2);
cout<<sum<<endl;
cout<<"The square of your sum is"<<" "<<endl;
square = (sum*sum);
cout<<square<<endl;
return 0;
}
相关文章:
- 叮当声:折叠表情和"expression result unused"警告
- 错误 C4700:使用未初始化的局部变量'result'
- "Control reaches end on non-void function" with do { return result; } while(condition);
- Parsing result from getline
- C++ 中的错误"expression result is unused"
- 类 std::result 中没有名为 "type" 的类型
- 未解析的外部符号"private: static int Math::result"
- 运行时检查失败 #3 - 变量"result"在未初始化的情况下被使用
- Winsock 2 addrinfo *result?
- 摆脱编译器警告"warning: result of call is not used"
- 如果我们使用 "decltype(auto) f()" 作为函数声明,定义中带有"decltype(f()) result",会发生什么?
- CC1加:"-Wno-unused-result"错误
- 警告:忽略"int scanf(const char*, ...)"的返回值,使用属性 warn_unused_result [-Wunused-result] 声明
- C++执行命令行并获取Result
- 将vector元素赋值给调用emplace_back的函数的result
- 忽略警告"-Wunused-result"
- Xcode 系统使用C++清除并"expression result unused"错误
- WMI win32_physicalmedia or win32_diskdrive result prob
- if(result==NULL)总是返回false,即使查询返回零行也是如此
- Pass-by-value-Result?