gpt4 book ai didi

c++ - 步骤程序?开始、结束、步骤整数

转载 作者:行者123 更新时间:2023-11-30 05:28:11 24 4
gpt4 key购买 nike

我已经坚持了将近两个星期了,有人可以指导我吗?我应该让用户输入一个初始起始值,他们想要结束的整数,以及一个步进整数(起始值将乘以什么)。

例如。起始整数:10结束整数:200步进整数:20

输出:10、30、50、70、90、....、200

并且当用户输入错误值(例如小于起始整数的结束整数)时,消息会提示他们重试。

我相信我收到了整条消息提示,但不确定如何通过步进使起始整数相乘,并在结束整数处停止。

这是我目前的代码:

#include <iostream>
#include <string>

using namespace std;



int main()
{


int step;
int stop;







int start = -1; //Local variable declaration



cout << "Please enter a positive integer you'd like to start with." << endl; //Starting integer
cin >> start;


if (start < 0)

cout << "Please enter a positive integer.";


if (start >= 0)

cout << "Please enter an integer to end with, it must be bigger than previous number chosen."; //Ending integer
cin >> stop;


if (stop < start)
cout << "Please enter a value that is larger than the previous number chosen." << endl;



if (stop > start)
cout << "Please enter the value you'd like to increase by." << endl; //Stepping integer
cin >> step;



cout << "Integers:";
while (start < stop)
{
cout << start << ", ";
start+=step;
}

return 0;

}

当我运行它时,它会遍历整个 for 循环,并显示 while 循环但仅作为用户输入的步进整数,然后立即退出。


编辑 - 上面的代码是从以前的代码更新而来

感谢迄今为止的所有帮助!如前所述,我已经删除了 for 循环,并删除了 'cin >> start;'在“请输入一个正整数”之后。 - 这就是为什么我的程序没有运行整个周期的原因。

如果用户第一次按照说明操作,程序运行完美,但是如果他们首先输入负值,他们将得到以下结果:

输入:-5输出:请输入一个正整数。输入:5输出:请输入您希望增加的值。

如果他们输入的停止值小于起始值,他们将得到以下结果:

输入:5输出:请输入一个更大的停止值....输入:3输出:整数:…………

即使在用户首先输入负值和/或比开始值更小的停止值之后,我如何获得继续顺序的提示?我不认为这是一个犯罪;命令,但如果我错了请纠正我!

最佳答案

也许这可以帮助:

int start = 10;
int stop = 200;
int step = 20;
do
{
cout << start << " ";
start = start + step; // increment. Shorter version: start += step;
} while (start < stop);

当获取输入时尝试类似的东西

int start = -1;

while(start < 0)
{
cout << "Please enter a positive integer you'd like to start with." << endl;
cin >> start;
}

并为 stopstep 做类似的事情,例如

int end = -1;

while(end < start)
{
cout << "Please enter an integer to end with, it must be bigger than previous number chosen."; //Ending integer
cin >> end;
}

关于c++ - 步骤程序?开始、结束、步骤整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36951575/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com