(C++) 带条件的循环语句 - while


带条件的循环。 while
语句 研究for循环,我们说过,如果已知任何动作的重复次数,那么就可以使用for循环运算符来缩短程序。但是,如果重复次数未知怎么办?这种情况经常发生。
 
例子
记住一个数字从十进制数字系统到任何其他数字系统的转换,我们需要将数字(然后是除法的结果)除以数字系统的底数,直到我们在答案中得到零。我们将共享多少次未知。并且有相当多的程序实现了这样的算法。 

如果不知道确切的迭代次数,如何实现算法?

对于这种情况,在编程中有一个带条件的循环语句。 
在 Python 编程语言中,条件循环语句以单词 while 开头,并具有以下结构。
while (
{
 循环体
}

我们已经知道:
- condition 是一个表达式,可以计算为 true 或 false(如在条件语句中);
- loop body 是要重复的命令,它们是缩进的。

运营商是如何运作的?
1. 首先,程序计算单词 while 后方括号中的条件。如果满足条件 (true),则程序执行循环体中包含的语句。
2.循环体执行完成后,程序返回检查条件,再次检查。
3. 重复这些动作(检查条件-执行循环体)直到条件变为假。
4.如果在第一次执行这条语句时条件没有立即满足(假),那么程序永远不会执行循环体。

分析这个运算符的工作,应该清楚循环体必须包含一个影响条件的运算符。
例如,在循环中,条件中使用的变量的值可能会递增。

我们将称之为“静默计数”的程序示例。
让程序代替我们来计数,例如,最多 10。
该程序应输出短语“Start”和“Finish”,并在这些操作之间显示正在计算的数字。

例如,像这样:
开始
1 2 3 4 5 6 7 8 9 10
完成

使用 while 循环的程序如下所示: #include; 使用命名空间标准; 主要的() { 诠释我; 输出 << "开始\n"; 我 = 1; 而(我<= 10) { 输出 <<我 << “ "; 我++; // 影响条件中变量变化的运算符 } 输出 << “\n完成”;
在这个程序中,我们给变量i = 1赋值——起点。
此外,只要我们有 i 变量的值不大于(即小于或等于)我们需要的值,我们: 
 1.显示变量i的值;
 2.将变量 i 的值增加 1 - 此运算符影响括号中条件的值。变量 i 递增,这意味着在某个时候条件 i <= 10 将变为假。当i等于11时就会出现这种情况。此时循环体将不再执行,程序将执行循环后的下一条语句,即<代码>输出 << “\n完成”。

任务
您必须输入一个数字(小于 3,000,000)并确定其中的位数。
 
解决思路
我们只需要依次从数字中截去最后一位(这可以通过将数字减少 10 次,使用整数除以 10 来完成),每次我们都需要增加计数器。 

这样一来,我们把号码的所有数字都截掉后,就可以在计数器中得到他们的号码了。

该算法可以表述如下:
直到数字为零,每次减 10,计数器加 1。
  <头> <正文>
该程序将如下所示。 #include; 使用命名空间标准; 主要的() { intn,计数; 辛>>名词; 计数 = 0; 而(n!= 0) { 计数++; n = n / 10; } 输出 << “数字-” << n<< “包含“ <<计数 << “数字”;   你需要牢记这个程序,因为。在此基础上,解决了其他许多与数字计算有关的问题。

数 (n) 计数器
123 0
12 1
1 2
0 3

任务

程序的输入是数据流—以零结尾的整数序列(零不包含在序列中)。 你需要找到这个序列的元素的总和。
 
求解算法
<前> 总和=0 input x // 输入第一个数字 while x != 0 // 条件中设置了输入结束标志,  nc // 也就是说,直到您输入零    sum = sum + x // 你可以用原始数字做一些事情。 // 您可以为某些条件添加数字检查等。    input x // 输入下一个数字 节 print sum //结果输出