Python小测试_2

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一周

1.下列关于函数的描述中,正确的说法有哪些?

·函数可以是自己定义的,也可以是Python内置的·一个函数可以被重复调用多次

·函数可以不带参数,也可以带多个参数·函数可以有返回值,也可以没有返回值

2.一个if语句下可以有多少个elif分支?

·可以是0个,也可以是多个。

3.当p为True,q为False时,布尔表达式not ( p and not q )的结果是什么?【pycharm 上运行】

请在下面的输入框里填写答案True或False。【写print()里运行】·False

4.给定一个正整数x,希望用一个表达式直接求出它的十位数。例如:当x等于923时,得到的结果是2;当x等于1234时,得到的结果是3。下列哪些表达式可以计算出正确的结果?【写print()里运行】

(请在PyCharm中验证下列每个表达式的结果之后再作答)

x / 10 ·(x // 10) % 10 (x - x % 10) / 10 ·int(((x - x % 10) % 100) / 10) * 比如: x1=923

x2=1234

print(x1 / 10)

5.函数random.randint(0, 10) 和random.randrange(0, 10)产生的随机数范围不同。值得注意的是,【pycharm 上运行】

在大多数Python编程中更习惯使用random.randrange(),因为该函数产生的数值更符合Python的范围习惯。

哪个数字是这两个函数其中一个可以产生的,而另一个函数无法产生的?请把这个数输入到下面的输入框中。

·10 * 因为: randint a<=x<=b 等于10

randrange a<=x

6.在PyCharm中编程实现数学函数f(x)=2x^2-(x-1)^3+1/x,然后利用你的函数计算f(-1),f(1)和f(2)。【pycharm 上运行】* x1=-1

请将三个结果中的最大值输入在下列方框中. x2=1

·9 x3=2

fx1=2*x1**2-(x1-1)**3+1/x1

print(fx1)

7.在银行存款或是投资理财时我们会接触到复利这个概念。下面这个公式就是以复利模式来计算期末本息合计的:

FV=PV(1+rate)^periods 【pycharm 上运行】

其中PV是指你的本金,也叫现值。FV是约定期限后的本息合计,也就是第一个计息周期到达后,计算利息,将利息加入本金产生本息合计,第二个计息周期到达后以上期的本息合计为本金再计算利息,逐期滚算到约定期末的本之息和,也叫终值。rate是指利率。periods是计息周期数,而计息周期是计算利息的时间单位,如:年,半年,季,月,周或天。

下面是一个利息计算程序的模板:

def future_value(present_value, annual_rate, periods_per_year, years):

# present_value表示现值PV

# annual_rate表示年利率

# periods_per_year表示每年的计息周期数

# years表示以年为单位的存款时间

rate_per_period = annual_rate / periods_per_year

#rate_per_period表示每个计息周期的利率

periods = periods_per_year * years

# 从这里开始输入你的代码来实现该函数的功能

第一周第一页print("存入1000元,年利率为3%,按年计算利息,存3年,最终的本息合计是:", future_value(1000, 0.03, 1, 3)) print("存入1000元,年利率为3%,按月计算利息,存3年,最终的本息合计是:", future_value(1000, 0.03, 12, 3)) print("存入1000元,年利率为3%,按天计算利息,存3年,最终的本息合计是:", future_value(1000, 0.03, 365, 3)) 完成你的程序并运行它,注意观察运行结果,请将三种计息方法中最终本息合计的最大值填写在下面的文本框中,小数点后保留四位有效数字。

·1094.1702 * def future_value(present_value, annual_rate, periods_per_year, years):

rate_per_period = annual_rate / periods_per_year

periods = periods_per_year * years

return present_value * (1 + rate_per_period) ** periods

print(future_value(1000,0.03,1,3))

print(future_value(1000,0.03,12,3))

print(future_value(1000,0.03,365,3))

8.计算正多边形的面积有很多种方法。给出多边形的边数n,每条边的长度s,那么正多边形的面积可以表示为:ns^2/4tan·pi/n 【pycharm 上运行】

例如,某一正多边形有5条边,每条边长度为7厘米,则其面积为84.3033926289 平方厘米。

编写一个函数来计算正多边形的面积,该函数有2个参数:多边形的边数和每条边的长度。

请用你编写的函数计算正9边形(边长为1厘米)的面积。将得到的结果(不包含单位)输入到下面文本框中,小数点后保留四位有效数字。提示:通过导入math模块(import math)来使用正切函数(math.tan)和圆周率(math.pi)·6.1818 * import math

n= 9

s= 1

a = n * s**2 /( 4 * math.tan(math.pi/n))

9.下面的程序分别在第2行和第8行存在语法错误.这些语法错误是什么? print(a)

def max_of_2(a, b): * def max_of_2(a, b):

if a>b if a>b:

return a return a

else: else:

return b return b

def max_of_3(a, b, c): def max_of_3(a, b, c):

return max_of_2(a, max_of_2(b, c)) return max_of_2(a, b, c)

·缺少冒号·格式缩进不正确

10.下面代码有许多错误,其中数学计算是正确的,因此错误都是语法错误,根据错误提示,修改程序,使其能够正确运行。

import math 【pycharm 上运行】

define project_to_distance(point_x, point_y, distance):