1. 程式人生 > >循環和遍歷

循環和遍歷

foreach循環 ++ == 自變量 一個 break 意義 概念 找到

循環指的是簡單的重復某個行為指定的次數;
現在所學循環包括:seitch循環、while循環、for循環、foreach循環、dowhile循環等
遍歷:所謂遍歷,是指有某個範圍的樣本數,需要把樣本中的每個數據取出來一一分析。
結合循環和遍歷我們可以進行簡單的操作
案例:對10-15之間的所有數字求和
首先對於求和,需要定義一個求和的變量sum,因為是對一定範圍的數字求和,所以sum變量的取值為0
寫作 int sum=0;
定義變量後就需要將變量進行求和的運算,而求和的範圍是10-15,所以需要對sum的動作重復運算
sum重復的動作寫作 sum+=i 其中i是自變量10-15的數
此處的意義是先給i一個值 前面的sum定義為0 所以sum的值為0+i的和 然後繼續sum的循環 知道i的取值結束
所以又多出一個變量i 可以定義i的範圍 這裏兩步都需要定義一個循環動作 所以運用循環給i賦值 這裏給for循環為例
寫作 for(int =10;i<=15;i++)這裏的意思是 i從10開始計數 到15結束 從10開始自增
然後根據代碼輸出結果就可以了
具體步驟如下:
int sum=0;
for(int i=10;i<=15;i++)
{
sum+=i;
}
console.write("輸出的和為:"+sum)

遍歷有很多場景,其中查找問題是一個經典的場景
這裏舉一個經典案例:判斷一個數是否是質數
首先要解釋質數的概念:
1.如果n是一個質數,只能被1和n整除
2.如果n是一個質數,在2到n-1之間不存在一個數能整除n
3.樣本範圍2到n-1,看是否存在一個數能整除n,如果存在,則n不是質數,否則,n是質數
這就是一個查找問題,查找的內容是2至n-1之間的數,判斷這個數能否整除n,如果能則說明n不是質數,否則就是質數
首先我們要先查找2到n-1之間的數 所以定義了一個bool類型的判斷 isFind=false;這裏表示還沒有找到一個數 所以下一步就是對於這一步進行查找
首先我們要知道查找的範圍 所以運用for循環給出查找的重復動作 for(int i=2;i<n;i++)
然後對重復動作的數進行判斷是不是質數 這裏就需要一個條件 判斷質數的條件 n/i==0; 如果是則返回循環繼續查找 如果不是則不進入判斷語句而是執行下一步
實現的語句是: isFind=true; break;
然後判斷isFind 為false則表示找到質數 為true則找到的不是質數
具體代碼如下:
bool isFind=false;
for(int i=2;i<n;i++)
{
if(n%i==0)
{
isFind=true;
break;
}
}
is(isFind)//此處是isFind=true的縮寫
{
console.write(n+"不是質數");
}
else
{
console.write(n+"是質數");
}
這裏查找的是n能被2至n-1整除的數 找到了則表示這個數滿足條件所以不是質數 反之就是質數

循環和遍歷