iT邦幫忙

2021 iThome 鐵人賽

DAY 8
0
Software Development

C++ 三十天學習紀錄系列 第 8

【Day8】 Introduction – while & for

緊接著,我們就要來介紹 while、for 迴圈啦!但是在介紹之前,要先提到一些基本但常用的運算子。

Logic operator
||:或 (or)
&&:且 (and)
!:否 (not)

例如:
if(a >= 10 && a <= 20) 亦即a是在 10~20 之間,要特別注意的是,我們不能寫if(10 <= a <= 20),每一個條件都一定要分開來寫!

Self-assignment operator
a += 1:相當於 a = a + 1,也就是說新的a的值會等於舊的 a 的值再 +1。
同樣的邏輯也可以運用在-=*=/=

Increment / decrement operator
a++:相當於 a += 1,也就是 a = a + 1。
a--:相當於 a -= 1,也就是 a = a – 1。

接下來,我們就進入正題!

While 迴圈

執行流程如下:
檢查 condition,若符合就執行 statements
->檢查 condition,若符合就執行 statements
->檢查 condition,若符合就執行 statements
->檢查 condition,若符合就執行 statements
->檢查 condition,若符合就執行 statements
-> ……,直到不符合 condition才會停止執行。

舉一個老師的例子:

以上的程式碼會不斷執行,每跑一圈 i 就會 +1,直到 i = 100,當 i = 101 時,while迴圈中的 statements 便不會執行而輸出最終 sum 的結果:5050。

這邊再補充一點,有的時候我們不知道要輸入進多少筆資料,不過只要有輸入就要進行一次的判斷之情況下,我們可以使用while (cin >> variable),只要有輸入就會回傳true,因此這個迴圈就會被執行,之後會有例題讓大家更熟悉這個用法。

For 迴圈

寫一個for迴圈需要有三個要素:
init:初始化一個 counter variable
cond:設立一個 counter variable的條件,只要符合這個迴圈就會執行
some:每跑一圈會如何調整 counter variable
statements:這個迴圈要做甚麼事
我們可以將前面舉的 while 的例子改成 for 的方式來寫:

那以上就差不多是基本語法 if、while、for 的介紹啦!最後,要再提到兩個專門用在迴圈中的工具,就是continuebreak

Continue
continue被執行的時候,這一圈迴圈的 statements 就不會被執行,舉個最簡單的例子:

這時候我們會發現輸出的結果為:

我們可以看出來,5並沒有被輸出,也就是說,當 i = 5 的時候,並不會執行任何事情,會直接跳到 i = 6。

Break
當執行到break的時候,會直接跳出迴圈。我們一樣拿上面的例子來看,不過將continue改成break

輸出結果:

也就是說,當 i = 5 時,就跳出迴圈而不再執行了,因此只會輸出到 4。


上一篇
【Day7】 Introduction – If-Else
下一篇
【Day 9】Introduction - Practice 1
系列文
C++ 三十天學習紀錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言