第1关:具体值表达式的转换
任务描述
本关主题是具体值组成的表达式的建模,实践如何将这样的数学表达式转换成Python
表达式。
本关任务:仔细阅读背景知识,找到数学运算符与Python
数值运算符之间的对应关系,将下面数学表达式转换为Python
表达式,并用print
语句打印结果。
例如,对数学表达式1+1
,对应的Python
表达式和结果输出语句为print(1+1)
。
请用print
语句输出下列数学表达式的值,或实际问题的答案。
相关知识(略)
编程要求
根据提示,在右侧编辑器Begin-End
处补充代码,完成如下要求:
第一题
求1234
除以123
的余数。
第二题
某个国家的人均寿命是90
岁,请问人均能活多少秒?
第三题
123/12
的商。
第四题
123/12
的值。
第五题
请问一个新生儿能活十亿秒吗?即计算并输出十亿秒是多少年。
第六题
33+43+53=63
是否成立?
第七题
分别计算1.02365
和1.01365
,可知“多百分之一努力,得千分收成”。
第八题
计算并判断1.013∗0.992
是否大于1.01
,输出判断结果。可知“三天打鱼,两天晒网,终将一无所获”。
测试说明
直接输出每道题的答案,每个答案占一行,中间不能空行。
注意:请不要直接print
最终数字,否则平台发现此类情况后,将一律扣掉本关经验值,并且追加处罚措施。
祝你成功!
def print_(x):
if type(x) == float:
print("%.4f" % x)
else:
print(x)
# ********** Begin ********** #
#请在每一题的print语句内完成题目所需的表达式
#第一题
print_(1234%123)
#第二题
print_(90*365*24*60*60)
#第三题
print_(int(123/12))
#第四题
print_(123/12)
#第五题
print_(1000000000/(60*60*24*365))
#第六题:要求编写两式比较的表达式,输出为True或False
print_(bool(3**3+4**3+5**3==6**3))
#第七题
print_(1.02**365)
print_(1.01**365)
#第八题:要求编写两式比较的表达式,输出为True或False
print_(bool((1.01**3)*(0.99**2))>1.01)
# ********** End ********** #
第2关:Python数学函数
任务描述
本关任务:仔细阅读下面的相关知识,找到数学函数与Python
数学函数之间的对应关系,将下面数学表达式转换为Python
表达式,并用print
语句打印结果。
相关知识
本关主题是对包含特殊运算符的表达式的建模,实践如何利用Python
数学函数将这样的数学表达式转换成Python
表达式。
Python
一个很吸引人的特点是其外围库非常丰富。math
模块中定义了非常丰富的数学函数,可以在命令提示符下运行下述命令查看所有预定义的数学函数:
>>>import math
>>>help(math)
或:
>>>import math
>>>dir(math)
下面列出一些常用的数学函数,请仔细阅读,通过完成本关任务,了解和掌握math
库中数学函数的使用。
-
abs(x)
:返回整数的绝对值,如abs(-10)
返回10
。 -
ceil(x)
:返回数字的向上取整,如math.ceil(4.1)
返回5
。 -
exp(x)
:返回e
的x
次幂,如math.exp(1)
返回2.718281828459045
。 -
fabs(x)
:返回浮点数的绝对值,如math.fabs(-10)
返回10.0
。 -
floor(x)
:返回数字的向下取整,如math.floor(4.9)
返回4
。 -
log(x,base)
:如math.log(math.e,math.e)
返回1.0
,math.log(100,10)
返回2.0
。 -
log10(x)
:返回以10
为基数的x
的对数,如math.log10(100)
返回2.0
。 -
max(x1,x2,...)
:返回给定参数的最大值,参数可以为序列。 -
min(x1,x2,...)
:返回给定参数的最小值,参数可以为序列。 -
modf(x)
:以元组的形式返回,(小数部分,整数部分)。两部分的数值符号与x
相同,整数部分以浮点型表示。 -
pow(x, y)
:xy
运算后的值。 -
round(x [,n])
:返回浮点数x
的四舍五入值,如给出n
值,则代表舍入到小数点后的位数。 -
sqrt(x)
:返回数字x
的平方根,返回类型为实数,如math.sqrt(4)
返回2.0
。