練習一絕對值
描述:寫一程式輸入一實數 x,程式計算該實數 x 的絕對值並輸出。
輸入:輸入一個實數。
輸出:輸出那個實數的絕對值。
範例
輸入輸出
10.310.3
-2.92.9
-1717

演算法
簡碼流程圖
輸入一浮點數至 x
如果 x ≥ 0 則:
      輸出 x
否則:
      輸出 -x
時間複雜度 $O(1)$
空間複雜度 $O(1)$


練習二數字篩選
描述:給定一個整數數列,輸出所有大於等於 10 的數字。
輸入:第一列輸入 n
第二列以後連續輸入一串整數,每個數字以跳行隔開。
輸出:所有滿足條件的數字,依序列印在螢幕上,每個數字跳行隔開。
如果 n 個數字都沒有大於等於 10 的數字,則輸出 "X"。
範例
輸入輸出
5
3
15
8
22
7
15
22
6
19
7
0
10
9
30
19
10
30

演算法
簡碼流程圖
  1. 輸入讀取:
    • 讀取第一行的整數 n,表示後續數列中有 n 個整數。
  2. 過濾條件:
    • 設定旗標 found = false。
    • 依序讀取接下來的 n 個整數。
  3. 輸出結果:
    • 判斷每個讀取的數字 $v$,如果 $v\ge 10$,則輸出 $v$,且設定 found = true。
    • 讀完 n 個數字,若 found = false,則輸出 "X"。
時間複雜度 $O(n)$
空間複雜度 $O(1)$

練習三尋找所有組合
描述:輸入兩個正整數 n 和 m,輸出從 1 到 n 及 1 到 m 的所有組合,且組合的兩數不能相同。(注意:是組合,不是排序)。
輸入:兩個正整數 n 和 m(空白隔開)。(必須 $n\le m$)
輸出:每組組合一行,格式為 x y($x < y$),中間空白隔開。
範例
輸入輸出
3 41 2
1 3
1 4
2 3
2 4
3 4
2 51 2
1 3
1 4
1 5
2 3
2 4
2 5

演算法
簡碼流程圖
  1. 輸入資料
    • 輸入正整數 n 和 m。($n\le m$)
  2. 產生組合及輸出
    • 假設 $x$ 從 1 到 $n$:。
      • 假設 $y$ 從 $x+1$ 到 $m$:
        • 將組合 ($x,y$) 輸出。
時間複雜度 $O(n\times m)$
空間複雜度 $O(1)$