函数设计 练习题(Python)

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()

输入样例1:

在这里给出一组输入。例如:

 10
 35

输出样例1:

在这里给出相应的输出。例如:

350

输入样例2:

在这里给出一组输入。例如:

10
45

输出样例2:

在这里给出相应的输出。例如:

475.0

输入样例3:

在这里给出一组输入。例如:

10
61

输出样例3:

在这里给出相应的输出。例如:

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的参数:

  1. 如果number是偶数,那么collatz()就打印number加上2

  1. 如果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)

你可能感兴趣的:(Python作业,python)