6-1 函数的定义 分数 20
设f(x)=x* x+2, 从键盘上给a,b,c输入数值,求f(a)+f(b)+f(c)的值。利用函数来实现,完成下面的程序。
deff (x):
其中x是一个整数,该函数功能计算题目中函数的数值。
#你的答案将被嵌入到这里 a=int(input( ))
b=int(input( ))
c=int(input( ))
print(f(a)+f(b)+f(c))
2
3
4
35
答案之一:
def f(x):
x=x*x+2
return x
6-2 计算工资 分数 20
编写函数pay(),带两个输入参数:小时工资和上周员工工作了的小时数。函数计算并返回员工的工资。加班工资的计算方法如下:大于40小时但小于或等于60小时按平时小时薪酬的1.5倍给薪;大于60小时则按平时小时薪酬的2倍给薪。
pay(salaryHour, hours)
salaryHour是平时小时薪酬,hours是员工工作的小时数
/* 请在这里填写答案 */
defmain(): salaryPerHour = int(input())
hours = int(input())
print(pay(salaryPerHour, hours))
main()
在这里给出一组输入。例如:
10
35
在这里给出相应的输出。例如:
350
在这里给出一组输入。例如:
10
45
在这里给出相应的输出。例如:
475.0
在这里给出一组输入。例如:
10
61
在这里给出相应的输出。例如:
720.0
答案之一:
def pay(salaryHour,hours):
if 40
6-3 整数数位和(高教社,《Python编程基础及应用》习题8-3)分数 20
编写一个函数,该函数接受一个正整数作为参数,返回该整数的各位数字之和。
defdigitSum(v)
v为输入整数(正整数);
函数返回一个整数,其值为v的各位数字之和。
a = int(input())
print(digitSum(a))
291
12
答案之一:
def digitSum(v):
sum=0
while v:
sum+=v%10
v//=10
return int(sum)
6-4 编写函数判断水仙花数 分数 10
给定一个三位数n,要求编写函数isflower(n)判断n是否为水仙花数,如果是,则返回True,否则返回False。所谓"水仙花数"是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153等于1的立方加上5的立方加上3的立方之和。
在这里描述函数接口。例如:
isflower (n)
其中 n 是传入的参数,表示需要判断的三位数。 n 的值的范围为[100,999]。
/* 请在这里填写答案 */
n = eval(input())
if isflower(n)==True:
print('Yes')
else:
print('No')
在这里给出一组输入。例如:
371
在这里给出相应的输出。例如:
Yes
答案之一:
def isflower (n):
a = n % 10
b = n // 10 % 10
c = n // 100
if n ==a*a*a+b*b*b+c*c*c:
return 1
else:
return 0
6-5 编写函数计算f(i) = 1/2 + 2/3 + 3/4 + ... + i/(i+1) (高教社,《Python编程基础及应用》习题8-4)分数 5
编写函数计算f(i) = 1/2 + 2/3 + 3/4 + ... + i/(i+1) 。
deff(i)
i为正整数,返回结果浮点数。
v=int(input())
print("%.4f" % f(v))
5
3.5500
答案之一:
def f(i):
if i<=1:
return 1/2
return i/(i+1)+f(i-1)
6-6 函数的定义与调用 分数 20
编写一个名为collatz()的函数,它有一个名为number的参数:
如果number是偶数,那么collatz()就打印number加上2
如果number是奇数,那么collatz()就打印number乘以2
def collatz(number)
/* 请在这里填写答案 */
number = int(input())
result = collatz(number)
print("输出结果为:", result)
在这里给出一组输入。例如:
7
在这里给出相应的输出。例如:
输出结果为: 14
答案之一:
def collatz(number):
if number % 2 == 0:
return number +2
else:
return 2 * number
6-7 编写函数,判断用户传入的列表长度并完成切片 分数 5
编写一个函数,判断用户传入的列表长度是否大于2,如果大于2,只保留前两个,并将新内容返回给调用者。
def func(list1)
/* 请在这里填写答案 */
print(func([1, 2, 3, 4]))
print(func([5, 6]))
无
在这里给出相应的输出。
[1, 2]
[5, 6]
答案之一:
def func(*list1):
for i in list1:
l = len(i)
if l > 2:
return(i[:2])
else:
return (i)