#46313: 呵呵


rayc57429@gmail.com (Ray Chang)

學校 : 不指定學校
編號 : 147841
來源 : [163.21.203.7]
最後登入時間 :
2025-06-03 09:55:31

???
m,n = map(int,input().split())

print(m-n)

 

可以忽略除了m n以外的其他東西

#46314: Re: 呵呵


11310709@std.tcfsh.tc.edu.tw (g.botdc.cloudns.be)

學校 : 不指定學校
編號 : 299619
來源 : [61.223.54.144]
最後登入時間 :
2025-06-14 20:12:56

???
m,n = map(int,input().split())

print(m-n)

 

可以忽略除了m n以外的其他東西


問題是什麼?

你的問題可能是 `input().split()` 讀取的值 **不足以填充 `m, n` 這兩個變數**,導致錯誤。

### **可能的錯誤**
如果輸入不符合期待格式,例如:
```python
m, n = map(int, input().split())  # 期望兩個整數
```
但你只輸入 **一個數字**,例如:
```
5
```
Python 會報錯:
```
ValueError: not enough values to unpack (expected 2, got 1)
```
這是因為 `map(int, input().split())` 只轉換了一個值,而程式期望兩個。

### **解決方法**
#### **方法 1: 確保輸入兩個數值**
- 在程式執行時,請輸入 **兩個數字**,例如:
  ```
  10 5
  ```

#### **方法 2: 使用 `split()` 處理變數數量不定的輸入**
如果不確定使用者會輸入多少個數字,可以使用 **列表 (`list`)**:
```python
nums = list(map(int, input().split()))  # 轉換為整數列表
if len(nums) == 2:
    m, n = nums
    print(m - n)
else:
    print("輸入錯誤,請提供兩個數字")
```
這樣可以避免輸入錯誤,確保程式正常運作。

你的程式是在哪種情境下出錯呢?如果還有其他問題,讓我知道!