2021年3月23日 星期二

C++第二課(說明)

 學習目標:

1.      迴圈的使用(for loop)

 

 

Exercise 2-1



學習要點:

1.      要執行指定次數的迴圈,需要使用FOR 這指令,語法如下:

For (起始變量值 ; 迴圈重複條件式; 變量增減控制) {

    迴圈內要執行的指令

}

例如以上例子:

i=1;

for ( i ; i<4 ; i=i+1) {

  cout<<”*”;

}

(1)   起始變量名 i , 進入迴圈前的值是1 (因為 i=1 )

(2)   i=i+1  這個變量增減控制指令,要求每執行完一次迴圈內的指令後變值值加1

-          C++,也可以寫成 i++ i++的作用跟 i=i+1 是一樣的。

(3)   迴圈一直進行,直至符合i<4 的條件,注意,由於起始值是1,每次加1,即是達到3還會執行,因3仍然小於4 (3<4),但如 i變成4的話,便不再執行。即是說,最終祇會輸出 ***

-          如果想達到3還會執行的話,有時也可寫成 i<=3i<4 i<=3於這裡是一樣的,因為沒有使用小數點。

2.      留意: 以上迴圈結束後,i的值是4

3.      單迴圈較簡單,但也可以使用以下表格追踪變量及結果的變化。

迴圈次數

變量i

執行結果

1

1

*

2

2

**

3

3

***

4

4

已跳離迴圈,沒有執行指令

4.      留意,使用單迴圈時,起碼需要一個變量(variable),以便貯存迴圈的執行次數。

 

Exercise 2-2



學習學習:

1.      輸出一個*後,如要換行,其實可輸入”\n”

-          也可以輸入”endl”,視乎使用者覺得哪一更清晰。

2.      提提你,於C++程式中,可用 i++ 取代i=i+1

<<作業2-1>>

讓使用者自行輸入次數,然後輸出相應數目的 *

輸出如下圖:



建議答案



 

 

 Exercise 2-3



學習要點:

1.       其實這題目沒有新的指令用法,祇是複習而已。複習cout<< 內可以是變量的,例如這題的 i

2.       留意,for (i; i<=50;i=i+1); 內起始的i的值不一定是1的,可以是其他數字,最後的變量增加也不一定是加1,可以是其他的。不過 i++ 便一定是每次把i1

 

<<Assignment 2-2>>

Output the numbers from 10 to 40 as follow:




Suggested Answer



 <<Assignment 2-3>>

Output the even numbers from 1 to 50 as follow:


Suggested Answer



<<Assignment 2-4>

Let the user enter a smaller number first, and then a greater number and then output all the integers(整數) between these two numbers. The output is as follow:



Suggested Answer



Preview Exercise

 


學習重點:

1.       這裡需要使用雙層的迴圈,想一想,哪層是外的? 哪層是內的? 按上題,由於輸入每行出現8個數目,首先進行的迴圈應位於內。

2.       內迴圈應每次執行8(用變量j控制次數),輸出數目字(但數目字是用i控制的,於同一行每執行一次迴圈後,輸出的數目應加1,因此要i=i+1

3.       執行一次後,要換行,否則第二次執行時便會於同一行輸出,便覆蓋了第一行的數字。

4.       留意,執行8次後,j的值變成9的,因此要把j變回1才可輸出第二行。

5.       留意,執行8次後,i的值也會變成9,但外迴圈會自動把i的值再加1,那便變成10,因此要先把i的值減1才再開始第二次內迴圈。

沒有留言:

張貼留言

如何於C++產生亂數?

 如 何於 C++ 產生亂數 ?   以下是一個例子,輸出一個由 0-4 的亂數。留意,行號 2,3,8,9,10 及 11 是需要的。 備註 : 如要輸出 0-9 的話,把行 11 的 rand()%5 改成 rand()%10 便可以。   -----...