20212202付詩瑜 實驗報告2
阿新 • • 發佈:2022-03-31
# 學號 2021-2202-2 《Python程式設計》實驗x報告
課程:《Python程式設計》 班級: 2122 姓名: 付詩瑜 學號:20212202 實驗教師:王志強 實驗日期:2022年3月31日 必修/選修: 公選課
## 1.實驗內容 此處填寫實驗的具體內容; 創造一個計算器,可進行實數和複數運算
## 2. 實驗過程及結果 ------------------------------------過程--------------------------------------- print('計算器') flag = True
while flag == True: choise = input('選擇計算器型別:0或1:') if choise == '0': op = input('請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):') if op == '0': break a = int(input('操作一:')) b = int(input('操作二:')) if op == '+': result = a + b elif op == '-': result = a - b elif op == '//': result = a // b elif op == '*': result = a * b elif op == '/': result = a / b # elif op=='0': # flag = False else: print('輸入有誤,重新輸入') continue
print('a' + op + 'b=', result) # 迴圈結束 elif choise == '1': op = input('請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):') if op == '0': break complex1 = complex(input('第一個複數:\n')) complex2 = complex(input('第二個複數:\n')) result = 0 if op == '+': result = complex1 +complex2 elif op =='-': result = complex1-complex2 elif op =='*': result= complex1*complex2 elif op =='/': result = complex1/complex2 print(result) #a = int(input('a+bi的實部a:\n')) #b = int(input('a+bi的虛部b:\n')) #c = int(input('c+di的實部c:\n')) #d = int(input('c+di的虛部d:\n')) #resulta = 0 #resultb = 0 #if op == '+': # resulta = a + c # resultb = b + d # print('(', a, '+', b, 'i)', op, '(', c, '+', d, 'i)')
-----------------------------------結果------------------------------------------- 計算器 選擇計算器型別:0或1:0 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):* 操作一:65896 操作二:5623 a*b= 370533208 選擇計算器型別:0或1:1 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):* 第一個複數: 159+654j 第二個複數: 3543-6465j (4791447+1289187j) 選擇計算器型別:0或1:0 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):0
Process finished with exit code 0 ## 3. 實驗過程中遇到的問題和解決過程 - 問題1:如何進行復數的運算? - 問題1解決方案:1.分別輸入實部和虛部。 2.python自帶複數庫,直接輸入複數,形式:a+bj。 - 問題2:break,continue出錯。 - 問題2解決方案:這兩個函式只能在while等(大)迴圈語句中,不能再大if判斷中。 - 問題3:一下子結束不了。 - 問題3解決方案:判斷結束語句應放在前面,break跳出大迴圈。
## 其他(感悟、思考等)
程式碼需不斷除錯,找更好的解決方法,增加python知識。
## 參考資料
- [《Java程式設計與資料結構教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程式設計與資料結構教程(第二版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.html) - ...
課程:《Python程式設計》 班級: 2122 姓名: 付詩瑜 學號:20212202 實驗教師:王志強 實驗日期:2022年3月31日 必修/選修: 公選課
## 1.實驗內容 此處填寫實驗的具體內容; 創造一個計算器,可進行實數和複數運算
## 2. 實驗過程及結果 ------------------------------------過程--------------------------------------- print('計算器') flag = True
while flag == True: choise = input('選擇計算器型別:0或1:') if choise == '0': op = input('請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):') if op == '0': break a = int(input('操作一:')) b = int(input('操作二:')) if op == '+': result = a + b elif op == '-': result = a - b elif op == '//': result = a // b elif op == '*': result = a * b elif op == '/': result = a / b # elif op=='0': # flag = False else: print('輸入有誤,重新輸入') continue
print('a' + op + 'b=', result) # 迴圈結束 elif choise == '1': op = input('請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):') if op == '0': break complex1 = complex(input('第一個複數:\n')) complex2 = complex(input('第二個複數:\n')) result = 0 if op == '+': result = complex1 +complex2 elif op =='-': result = complex1-complex2 elif op =='*': result= complex1*complex2 elif op =='/': result = complex1/complex2 print(result) #a = int(input('a+bi的實部a:\n')) #b = int(input('a+bi的虛部b:\n')) #c = int(input('c+di的實部c:\n')) #d = int(input('c+di的虛部d:\n')) #resulta = 0 #resultb = 0 #if op == '+': # resulta = a + c # resultb = b + d # print('(', a, '+', b, 'i)', op, '(', c, '+', d, 'i)')
-----------------------------------結果------------------------------------------- 計算器 選擇計算器型別:0或1:0 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):* 操作一:65896 操作二:5623 a*b= 370533208 選擇計算器型別:0或1:1 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):* 第一個複數: 159+654j 第二個複數: 3543-6465j (4791447+1289187j) 選擇計算器型別:0或1:0 請輸入需要的操作(+)(-)(*)(/)(//)(0,表退出):0
Process finished with exit code 0 ## 3. 實驗過程中遇到的問題和解決過程 - 問題1:如何進行復數的運算? - 問題1解決方案:1.分別輸入實部和虛部。 2.python自帶複數庫,直接輸入複數,形式:a+bj。 - 問題2:break,continue出錯。 - 問題2解決方案:這兩個函式只能在while等(大)迴圈語句中,不能再大if判斷中。 - 問題3:一下子結束不了。 - 問題3解決方案:判斷結束語句應放在前面,break跳出大迴圈。
## 其他(感悟、思考等)
程式碼需不斷除錯,找更好的解決方法,增加python知識。
## 參考資料
- [《Java程式設計與資料結構教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程式設計與資料結構教程(第二版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.html) - ...