第1关:飞行炮弹空气阻力计算
任务描述
炮弹弹道是武器学中的一个重要概念,是指炮弹出炮口后在空中的飞行轨迹。在研究炮弹弹道时,空气阻力往往不可忽略。
已知炮弹在空中飞行时所受空气阻力(单位为 N)的计算公式如下:
F=0.5CρSv 方,其中,阻力系数 C=0.1,空气密度 ρ=1.2kg/m 三次方,S 为垂直于速度方向的炮弹横截面积(单位为 m 方),v 为炮弹的飞行速度(单位为 m/s)。
相关知识
过关的步骤是,先按“编程要求”在右边编程窗口中编写程序,然后点击右下角的“评测”按钮。
评测结束后,点击右下方窗口的测试集,可以查看评测结果。测试集窗口由两部分组成,左边是正确结果,右边是你编写的程序的实际运行结果,若两者一致,则通过本关。
编写程序时,注意不要改动 Begin-End 区间之外的代码,否则可能导致不能通过本关。如果不小心改动了,可以通过点击右上角的“恢复初始代码”按钮进行恢复。 或者,可以通过完成实训“绘制炸弹轨迹 I”,熟悉平台的使用方法。
编程要求
补全 Begin-End 区间的代码,其功能是根据给定的横截面积 S(用变量 S
表示)与飞行速度 v(用变量 v
表示),计算炮弹所受空气阻力 F(用变量 F
表示),说明如下: 1)S
和 v
的值在程序运行时由系统自动设置(初始代码第 1-2 行),不要再额外设置,编程时假设其已知即可; 2)初始代码最后一行是打印计算结果,不要再额外添加打印语句,按要求算出变量 F
的值即可; 3)不要改动 Begin-End 区间之外的代码; 4)公式中,阻力系数 C 取 0.1,空气密度 ρ 取 1.2kg/m3; 5)F
只保留整数部分,即算出 F
后,要用 int
函数将其转换成整数类型。
测试说明
本关共有若干测试集,在每个测试集中,系统会自动设置变量 S
和 v
的值,程序的功能是据此计算 F
的值。例如,测试集 1 的输入是:
0.01
333
测试集 1 的运行结果为:
66
answer
S = eval(input()) #获取炮弹的横截面积S
v = eval(input()) #获取炮弹的飞行速度v
########## Begin ##########
C = 0.1
ρ = 1.2
F = 1/2*C*ρ*S*v**2
########## End ##########
print(int(F)) #打印炮弹受到的空气阻力