第1關:繪製一個座標點
1.某轟炸機在h=3km的高空以200m/s的速度水平勻速飛行,到達A點是投下一枚無動力炸彈,不考慮空氣阻力,重力加速度g的值取9.8,我們可以通過如下公式得到炸彈在任意時候的位置。
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt #導入matplotlib.pyplot
h, v0, g = 3000, 200, 9.8
for t in [10, 15, 20, 24]:
xt = v0*t
yt = h-1/2*g*t**2
plt.ylim((0, 3000))
plt.xlim((0, 5000))
plt.grid('on')
######## begin ############
# 請使用plot函數,繪製一個座標點
plt.plot(xt, yt, 'ro')
######## end ##############
plt.savefig('./student result/%s秒後.png' % str(t))
plt.close()
第2關:繪製n個座標點
2.某轟炸機在h=3km的高空以200m/s的速度水平勻速飛行,到達A點是投下一枚無動力炸彈,不考慮空氣阻力,重力加速度g的值取9.8,我們可以通過如下公式得到炸彈在任意時候的位置。
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt #導入matplotlib.pyplot
h, v0, g = 3000, 200, 9.8
t, n = 0, 30 #n爲要繪製的座標點數量,假設爲30
tmax = (2*h/g)**0.5
delta = tmax/(n-1) #delta爲相鄰兩時刻之間的間隔
while t<=tmax: #t從0變到tmax,每次加delta
###### begin ##########
# 請在此填寫表達式,計算時間爲t時,x軸與y軸的位置,並命名爲xt與yt
xt = v0*t
yt = h-1/2*g*t**2
######### end ############
plt.plot(xt,yt,'ro')
t = t+delta
plt.grid('on')
plt.axis([0, 5000, 0, h])
plt.savefig('./student result2/%s個點.png' % str(n))
plt.close()