作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我为一个要求正数的类编写了这个程序,并根据该数字执行计算。上周我从堆栈人员那里得到了一些很大的帮助,但我的教授要求我重写它并简化我的代码。我已经这样做了,现在数学计算不正确。我已经运行了调试器,但我没有看到传递的值在哪里不正确。此外,所有数字都未通过“if (number > 0)”测试。
即使我收到构建成功的消息,它会不会是编译错误?
提前致谢!
这是代码。
#include <iostream>
#include <string>
#include <fstream>
#include <iomanip>
#include <stdexcept>
#include <cstdlib>
using namespace std;
int main ()
{
system ("color F0");
int number, countIf = 0, countWhile = 0, countDo = -1, h = 0, i = 0, x = 0, y = 0;
char repeat = 'y';
do {
cout << "Please enter a positive integer or zero to quit: ";
cin >> number;
x = number, y = number;
cin.ignore();
if (number < 0)
cout << "Error: The integer entered was either not positive or a zero.\n" << endl;
else if (number > 0)
{
if (number%2 == 0 && number%5 == 0)
for (y%5; countIf <= y; countIf +=5)
{
i = y / 10;
i += countIf;
cout << countIf << " ";
}
else if
(countWhile < x && number%2 == 0)
{
countWhile += 2;
cout << countWhile << " ";
}
else
{
countDo +=2;
cout << countDo << " ";
}
}
cout << "\n\nDo you wish to continue? (Y or N): ";
cin >> repeat;
}
while (number != 0 && repeat == 'y' || repeat == 'Y');
//cout << "\nThanks for playing!" << endl;
system ("pause");
return 0;
}
输出应该类似于:
我得到的是:
最佳答案
我这样修改了你的代码:
else if
(countWhile < x && number%2 == 0)
{
for(countWhile+=2; countWhile<x; countWhile+=2)
cout << countWhile << " ";
}
else
{
for(countDo+=2; countDo<x; countDo+=2)
cout << countDo << " ";
}
我得到如下输出:
Please enter a positive integer or zero to quit: 82
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80
Do you wish to continue? (Y or N): y
Please enter a positive integer or zero to quit: 75
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73
希望这对您有所帮助。
关于c++ - 可能操作错误,随机个位数输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15891928/
我正在寻找一种快速添加数据行的方法,例如 3333456332.... 3334456332.... 3343446332.... 3331355332.... (但更长)并将每个数字加到这个结果中:
我有一个文件,其中包含未按字节对齐的数据,我想在文件中查找(例如 3 位),然后开始将字符读入缓冲区。有没有一种“简单”的方法可以做到这一点? 如果可能,我想避免对缓冲区中的每个字符进行位移。 最佳答
我是一名优秀的程序员,十分优秀!