---
# System prepended metadata

title: Wk_6

---

### WK6_B1121138_1012
4.1 range 函式 認識 range 函式 range 函式的語法 4.2 for 迴圈 巢狀 for 迴圈 break 命令 continue 命令 4.3 while 迴圈

【inclass practice】 
{綜合演練} 實作5: 一個正整數除了1和自己外，無法再被其他數整除，這個數就是質數。 請輸入一正整數，列出此數的所有正因數，並判斷使數字是否為質數

{範例}

 1. 最小公倍數
 2. 顯示正整數數列，排除5的倍數
 3. while迴圈計算階乘
{補充 while 練習} 猜數字遊戲：寫一個程式，隨機選擇一個1到100的數字，然後要求玩家通過輸入猜測該數字，直到猜對為止。使用while迴圈來實現，並在玩家猜對時結束遊戲。
```python=
n = int(input())
for i in range (1 , n + 1):
    if i % 5 == 0:
        continue
    print (i)
```
```python=
n = int(input())
for i in range (1 , n + 1):
    if i % 5 == 0:
        break
    print (i)
```
    11
    1
    2
    3
    4
```python=
a = int(input("a = "))
b = int(input("b = "))
maxnum = a * b
for i in range (1 , maxnum + 1):
    if i % a == 0 and i % b == 0:
        ans = i
        break
print (i)
```
    a = 5
    b = 4
    20
```python=
a = int(input("a = "))
i = 2
ans = 0
while i < a:
    if a % i == 0:
        print(i)
        ans += 1 
    i += 1 
if ans > 1:
    print("no")
else:
    print("yes")
```
    a = 90
    2
    3
    5
    6
    9
    10
    15
    18
    30
    45
    no
```python=
import random
ans = random.randint(1, 100)
while True:
    a = int(input())
    if a == ans:
        print("Y")
        break
    else:
        print("N")
```
    8
    N
    5
    N
    4
    N
    6
    N
    45
    N
    87
    N
    65
    N
    12
    N
    45
    N
    32
    N
    55
    N
    99
    N
    444
    N
    47
    N
    12
    N
    32
    N
    14
    N
    15
    N
    16
    N
    13
    N
    1
    N
    7
    N
    17
    N
    18
    N
    19
    N
    11
    N
    20
    N
    21
    N
    23
    N
    24
    N
    25
    N
    26
    N
    27
    N
    28
    N
    29
    N
    30
    N
    31
    N
    32
    N
    33
    N
    34
    N
    35
    N
    36
    N
    37
    N
    38
    N
    39
    N
    40
    N
    41
    N
    42
    N
    43
    N
    45
    N
    44
    N
    46
    N
    47
    N
    48
    N
    49
    N
    50
    N
    51
    N
    52
    N
    53
    N
    54
    N
    55
    N
    56
    Y
```python=
a = 15
p = 1
counter = 0
while p <= a:
    if a % p == 0:
        counter += 1
    p += 1
if counter > 2:
    ans = "合數"
else:
    ans = "質數"
print (a , "是" , ans , counter)
```
    15 是 合數 4 
```python=
target_number = random.randint(1, 100)

guess = None
attempts = 0

while guess != target_number:
    guess = int(input("請猜一個1到100的數字："))
    attempts += 1

    if guess < target_number:
        print("太低了！再猜一次。")
    elif guess > target_number:
        print("太高了！再猜一次。")

print(f"恭喜！你猜對了，答案是{target_number}。你總共猜了{attempts}次。")
```
    請猜一個1到100的數字：50
    太高了！再猜一次。
    請猜一個1到100的數字：25
    太高了！再猜一次。
    請猜一個1到100的數字：13
    太高了！再猜一次。
    請猜一個1到100的數字：6
    太高了！再猜一次。
    請猜一個1到100的數字：3
    恭喜！你猜對了，答案是3。你總共猜了5次。
```python=
import random
target_number = random.randint(1, 10)

guess = None

while guess != target_number:
    guess = int(input("請猜一個1到10的數字："))

    if guess < target_number:
        print("太低了！再猜一次。")
    elif guess > target_number:
        print("太高了！再猜一次。")

print(f"恭喜！你猜對了，答案是{target_number}。")
```
    請猜一個1到10的數字：8
    太高了！再猜一次。
    請猜一個1到10的數字：5
    太高了！再猜一次。
    請猜一個1到10的數字：4
    太高了！再猜一次。
    請猜一個1到10的數字：3
    太高了！再猜一次。
    請猜一個1到10的數字：2
    太高了！再猜一次。
    請猜一個1到10的數字：1
    恭喜！你猜對了，答案是1。
```python=
import time

countdown = int(input("請輸入倒數的秒數："))

while countdown > 0:      

    print(countdown)

    time.sleep(1)

    countdown -= 1    
   
print("阿拉花瓜！")
```
    請輸入倒數的秒數：10
    10
    9
    8
    7
    6
    5
    4
    3
    2
    1
    阿拉花瓜！
```python=
total = 0

while True:
    num = int(input("請輸入一個整數（輸入0結束）："))
    if num == 0:
        break
    total += num

print(f"總和：{total}")
```
    請輸入一個整數（輸入0結束）：9
    請輸入一個整數（輸入0結束）：7
    請輸入一個整數（輸入0結束）：5
    請輸入一個整數（輸入0結束）：5
    請輸入一個整數（輸入0結束）：6
    請輸入一個整數（輸入0結束）：5
    請輸入一個整數（輸入0結束）：0
    總和：37