20192416「Pythonプログラミング」実験2レポート
コース:「Pythonプログラミング」
クラス:1924
名前:名前を
付けたくない匿名学生ID:20192416
実験教師:王志強先生
実験日:2020年4月11日
必須/選択科目:選択科目
1.実験的な内容
- 完全なアプリケーションプログラム、加算、減算、乗算、除算などの完全な演算、およびその他の機能を設計して完成させます。
- 基本的な文法、判断文、ループ文、論理演算などの知識ポイントを調べます。
2.実験プロセスと結果
一生懸命働いた後、比較的単純な計算機が完成しました。加算、減算、乗算、除算、モジュロ、三角関数、平方根が可能です。仕様を満たさない一部のケースについてエラーが報告され、ユーザー(私のみ)のエクスペリエンスが向上します。
import math
print("这是一个巨菜的计算器:")
a = int (input("输入0:结束 输入1:加 输入2:减 输入3:乘 输入4:除 输入5:模 输入6:三角函数 输入7:求平方根\n"))
if a==0:
print("结束")
elif a==1:
print("输入相加的数,最后一个数为0时结束")
b = float(input())
c=0
while(b!=0):
c=c+b
b = float(input())
print("他们的和为",c)
elif(a==2):
print("先输入被减数,依次输入减数,最后一个数为0时结束")
b = float(input())
c=b*2
while(b!=0):
c=c-b
b = float(input())
print("结果为",c)
elif a==3:
print("输入相乘的数,最后一个数为1时结束")
b = float(input())
c=1
while(b!=1):
c=c*b
b = float(input())
print("他们的积为",c)
elif a==4:
print("先输入被除数,依次输入除数,最后一个数为1时结束")
b = float(input())
c = b*b
while(b!=1 and b!=0):
c=c/b
b = float(input())
else:
print("error")
print("他们的结果为",c)
elif a==5:
print("分别输入a和b,将输出结果a%b")
b=float(input())
c=float(input())
print(b,"%",c,"=",b%c)
elif a==6:
print("下面进行三角函数的计算")
a = float (input("输入1:sin 输入2:cos 输入3:tan "))
b = float (input("输入要进行计算的角度:"))
c = b/180*math.pi
if a==1:
print("sin(",b,"°)=",round(math.sin(c),3))
if a==2:
print("sin(",b,"°)=",round(math.cos(c),3))
if a==3:
print("sin(",b,"°)=",round(math.tan(c),3))
elif a==7:
b= float(input("输入要计算的数:"))
if (b>=0):
print("结果为:",math.sqrt(b))
else:
print("error")
3.実験および解決プロセス中に発生した問題
- 質問1:数学で根関数と三角関数を表現する方法がわかりません。
- 問題1の解決策:さまざまな特殊演算子がインポート計算によって読み込まれます。例:math.sqrt()、math.sin()、math.piなど
- 質問2:三角関数の予約ビットが多すぎて見栄えがよくありません。
- 問題2の解決策:ラウンド(a、b)aは処理される数として使用され、bは予約された有効な数です。
知覚
この実験は比較的スムーズですが、能力が限られているため、より複雑な混合操作を行うことは不可能です(知識の貧弱さが私の想像力を制限します)。これは残念です。次の研究では、より強力なプログラミングスキルを習得し、より優れたコードを記述したいと思っています。