CH2 重複結構 ( 迴圈 )
回想起來吧 ~
程教 文月
複習 -for 迴圈
★for 迴圈語法:for(int 迴圈變數 = 起始值 ; 終止值 ; 遞增
減值 )
{
重覆的程式}
解題範例 - 印出 1 到 100
★code 如下:for(int i=1;i<=100;i++)
{
cout<<i<<endl;
}
執行結果
複習 -while 迴圈
★while 迴圈語法:while( 執行條件 )
{
重覆的程式 控制迴圈變數之 的改變值}
解題範例 - 印出 1 到 100
★code 如下: int i=1;
while(i<=100){
cout<<i<<endl;i++;
}
執行結果
現在立刻試試看!
到程式班部落格去解解看課堂習題吧!
1. 印出 1 到 1000 所有偶數 #include<iostream>using namespace std; int main(){
for(int i=1;i<=( 填空處 );i=i+( 填空處 )){cout<<i<<endl;}
}
1000 2
2. 印出 100 到 -100 的所有整數★參考解答 -while迴圈#include<iostream>using namespace std; int main(){
int i=100;while(i>=-100){
cout<<i<<endl;i--;
}}
特別注意這裡是大於喔
2. 印出 100 到 -100 的所有整數★參考解答 -for迴圈#include<iostream>using namespace std; int main(){
for(int i=100;i>=-100;i--){cout<<i<<endl;}
}
特別注意這裡是大於喔
迴圈中的迴圈 - 巢狀迴圈
★其實很簡單,把迴圈放進迴圈就 ok 了!
★那我們趕快來看範例吧!
解題範例 - 九九乘法表
注意紅色與藍色的變化想想看 .. 一個變數在內層還哪
是外層迴圈 ?呢
解題範例 - 九九乘法表★code如下: int a,b;
for(a=1;a<10;a++)
{
for(b=1;b<10;b++)
{
cout<<a<<"*"<<b<<"="<<a*b<<" ";
}
cout<<endl;
}
特別注意這邊要輸出空白
猜對了 ?嗎前面的變數是外
層的迴圈
解題技巧 - 存極值
★要怎麼存取多個數字中的最大數字 ?呢★範例題:找出 n 個數字中最大的值
Code 怎麼寫 ?呢那麼我們來看看範例解答吧!
解題技巧 - 存極值int n,m,m2=0;cin>>n;for(int i=0;i<n;i++){
cin>>m;if(m>m2){
m2=m;}
}cout<<m2;
輸入整數 n 後,一個迴圈來讀取跑 n 個數
值
輸入整數 m 後,判別是否比上個極值m2
大 ( 初始 為值 0)
解題技巧 - 存極值
3
11 13 12
13
ConsolePauser.exe
輸入 3( 有 3 個數字要做判斷 )輸入 11,13,12
輸出 :13
解題技巧 - 計數器
★計數器,顧名思義是計算次數的工具。★什麼時候會用到 …讓我們來看看範例!呢
★範例 1 :輸出 n 個數字中 " 1 " 的數量
解題範例 1- 找出所有 1★code如下: int n,m,sum=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>m;
if(m == 1){
sum=sum+1;
}
}
cout<<sum<<endl;
關係運算子 "=="是判斷是否等於的意思
在 sum 的作用即是個計數器,從 0 開始,如果發現 m 是1 , sum 即會加 1 。最後在
輸出 m=1 的總數。
解題範例 1- 找出所有 1
7
1 2 1 4 22 1 26
3
ConsolePauser.exe
輸入 7( 有 7 個數字要做判斷 )
輸入 1,2,1,4,22,1,26
輸出 :3
解題範例 2-找出奇偶數int n,m,sum1=0,sum2=0;cin>>n;for(int i=0;i<n;i++){
cin>>m;if(m%2 == 1){
sum1=sum1+1;}else if(m%2 == 0){
sum2=sum2+1;}
}cout<<"總共有 "<<sum1<<"個奇數 "<<endl;cout<<"總共有 "<<sum2<<"個偶數 "<<endl;
奇數偶數分開計算
利用除以 2的餘數判別
解題範例 2-找出奇偶數
5
13 12 14 15 1
總共有 3個奇數總共有 2個偶數
ConsolePauser.exe
輸入5( 有 5個數字要做判斷 )
輸入 13,12,14,15,1
輸出 : 總共有 3個奇數總共有2個偶數
報告到此結束,謝謝大家!趕快去練習題目吧 >w<!!