我正在努力学习编码,但我无法理解#34; for"循环。
if / else if / else语句很简单。
if (this is true) {
do this.
else [otherwise, but] if (this is true) {
do that.
else
do this.
"而"和"做/同时"循环也很容易。
while (this is is true) {
do this.
或
do this {
}
while (this is true).
现在,我知道" for"的结构。循环:(开始,结束,增量)。我甚至可以制作一个适用于基本问题的工具。但是,我不知道计算机在想什么。"我不能像其他人一样把它用于基本的英语术语。任何帮助将不胜感激。
答案 0 :(得分:4)
For循环是数字上下文中的循环。
而不是写这个:
x = 0;
while (x < 5) {
x++;
}
你可以这样写:
for (x = 0; x < 5; x++)
哦,部分内容如下:
for (start; condition; increment)
它们的含义如下:
答案 1 :(得分:1)
for
循环只是意味着您指示程序重复执行操作。
行动是什么?无论你决定它是什么。
你做了多少次? 与for
循环指定的次数相同。
你做什么的?这也是你指定的东西。
示例:
for(i in 1:nrow(x)){
x[i,3] <- "A"
}
在R.中循环for
循环。它表示对于第1行到名为x
的对象的最后一行,使第3列成为字符&#34; A&#34;。
操作为<- "A"
,表示分配字符A
的值。
多少次这样做? 1:nrow(x)
该怎么办? x[i,3]
另一个例子:
for(i in 1:10){
a[i] <- TRUE
}
此处的操作是指定值TRUE
。
这样做的次数是(对)1到10(即1,2,3,4,5,6,7,8,9,10)。
该怎么办?对象a
的元素。
答案 2 :(得分:0)
基本上,计算机正在寻找一个值列表,并且正在说“无论你放入循环中,我都要对此列表中的每个项目执行一次”。就这样 “对”。
令人困惑的是,您经常看不到计算机正在使用的“列表”。 for循环的格式因编程语言而异,但在您的情况下,请考虑您正在使用的示例:
for (x = 0, x < 4, x ++){
print(x)
}
你可以想到有一个从0开始的数字列表,并且步长为1,运行到4。
因此,计算机正在考虑“对于值列表0,1,2,3中的每个值,我将在循环中执行操作”。
答案 3 :(得分:0)
for
循环只是while
循环的通用结构的便捷表示法。
考虑像这样构造的while
循环(一个非常常见的用例):
int i = 0;
while (i < size) {
float value = arrayOfValues[i];
// do something with the value
i = i + 1;
}
以下for
循环执行相同的操作,但它只是简化了一些代码,并且在某些语言(如java)中缩小了i
到循环的范围。
for(int i = 0; i < size; i = i + 1){
float value = arrayOfValues[i];
// do something with the value
}
在某些语言(例如java)中,符号的进一步简化如下:
for(float value:arrayOfValues){
// do something with the value
}
答案 4 :(得分:0)
在C ++中,for构造非常有用。 for循环在()中有三个字段。它们是初始化,测试(这是暂时工作的部分)和增量字段。
首次遇到for循环时,会进行初始化,但只会发生一次;之后再也不会再执行了。
然后测试条件,如果是,则执行循环体。
最后执行增量字段。通常会有一个变量增量,如x ++或类似的东西,但它可以是有效的声明。
在while语法中执行与for循环相同的操作是可能的:
int index = 0;
while( index < count )
{
do_stuff();
index++;
}
在for循环中它看起来像这样:
for( int index = 0 ; index < count ; index++ )
{
do_stuff();
}
答案 5 :(得分:0)
在许多编程语言中,for循环是各种常用循环场景的简写形式,可以通过变量if if语句和while循环的组合来完成,尽管更加冗长。
每种语言都定义了自己的循环语义(或者根本没有for循环),但是有许多语言实现了两种非常常见的类型:
“setup”,“condition”,“update”循环,它通常用于迭代一定次数,更新变量以跟踪迭代的位置。在C风格的语言(例如C / C ++,Java,Javascript)中,它看起来像这样:
for(setup; condition; update)statement;
这可以使用像这样的while循环来表示:
setup;
while (condition) {
statement;
update;
}
在英语中,你可以把它想象成:
Perform these { setup } steps.
While { condition } is true: perform { statement } and { update }.
如上所述,这通常用于迭代一定次数:
for (int i=0; i<10; i++) doSomethingWith(i);
每个循环的迭代集合或用于对元素集合中的每个元素执行某些操作,例如列表,数组或映射/关联数组。这种循环风格的语法在不同语言中的一致性较低,但通常采用for (element in collection) statement;
例如,在Java中,迭代集合采用以下形式:
for (Type obj : collectionOfObj) statement;
用英语写的东西是这样的:
for each thing in { collectionOfObj }, assign the thing to a variable named { obj } of type { Type } and then execute { statement }.
许多语言对于for循环的功能有不同的语法或略有不同的规则。有些语言旨在允许程序员使用语言本身构建不同的循环结构。我建议你阅读你正在使用的语言的结构,如果你理解的话,你可以毫不费力地习惯各种形式的for
,因为你需要使用它们。 / p>
答案 6 :(得分:0)
所有&#34;循环&#34;是一回事。 &#34;而&#34;循环可以替换为&#34; for&#34;循环。
int i = 0;
while (i < 10){
do something;
i++;
}
和&#34; for&#34;循环是 for(i = 0; i&lt; 10; i ++) 做点什么;