Skip to main content

3.1 if ... else ...

每一行程式碼都會執行到?

我們寫的每一行程式碼都有用嗎?當然有用。那每一行都會被執行嗎?這要看情況。

之前我們寫的程式,會從 main() 函數的第一行開始一行一行依序執行下去,直到程式結束。但在真實世界運作的程式是要有彈性的,例如:指紋鎖必須要在使用者指紋與內部設定吻合時,才會開鎖,否則什麼都不做。也就是這樣一個結構:

接下來我們我們以「計算絕對值」為例,來看看這種結構。

if

練習:讀入使用者輸入的整數 $a$,計算並輸出其絕對值 $|a|$。

絕對值表示數線上原點到該數值的距離,所以若 $a\ge 0$ 則 $a$ 的值就是其絕對值,否則將 $a$ 的值乘上 -1 才是其絕對值。

#include <iostream>

using namespace std;

int main()
{
    int a;
    
    cin >> a;
    
    if(a<0)
    {
        a = -1*a;
    }
    
    cout << "|a|=" << a << endl;

    return 0;
}

在這裡我們使用到 if 敘述,它的語法如下: