python函数练习题

#!/usr/bin/env python
# coding: utf-8

# In[ ]:


def BMI(h,w):
    bmi=w/(h*h)
    return bmi


# In[4]:


"""1、两个数的最大值
编写一个名为max的函数,接受两个整数作为参数,并返回两者中的较大值。例如,如果7和12作为参数传递给函数,该函数将返回12。
函数接口定义:
max(x, y)   x 和 y是传入的两个整数。
测试程序样例:
def main():
                        a = int(input())
                        b = int(input())
                        print(max(a, b))
main()
输入样例:给出一组输入。例如:2
3
输出样例:3"""
def max(x,y):
    if x>=y:
        return x
    else:return y
def main():
                        a = int(input())
                        b = int(input())
                        print(max(a, b))
main()


# In[11]:


"""3、编写函数计算一个或不特定多个数的乘积
函数接口定义:
def caculate(*t)
打*号的参数t接受多个参数成员,参数成员预期为整数或浮点数类型。
测试程序样例:
s = input().split()        #接受输入字符串并按空格分拆,存入列表,列表成员为字符串类型
t = [float(x) for x in s]    #使用列表推导将列表s中的成员全部转换成浮点数,存入另一个列表t
print("%.4f" % caculate(*t))
输入样例:3 2 1
输出样例:6.0000"""
def caculate(*t):
    s=1
    for i in t:
            s*=i
    return s
def main():
    s = input().split()        #接受输入字符串并按空格分拆,存入列表,列表成员为字符串类型
    t = [float(x) for x in s]    #使用列表推导将列表s中的成员全部转换成浮点数,存入另一个列表t
    print("%.4f" % caculate(*t))
main()


# In[25]:


"""2、编写函数计算f(i) = 1/2 + 2/3 + 3/4 + ... + i/(i+1) 
函数接口定义:
def f(i) 
i为正整数,返回结果浮点数。
测试程序样例:
v=int(input())
print("%.4f" % f(v))
输入样例:5
输出样例:3.5500"""
def f(i):
    s=0
    for a in range(i+1):
            s+= a/(a+1)
    return s
v=int(input())
print("%.4f" % f(v))


# In[126]:


"""4、缩写词
缩写词是由一个短语中每个单词的第一个字母组成,均为大写。例如,CPU是短语“central processing unit”的缩写。
函数接口定义:
acronym(phrase);
phrase是短语参数,返回短语的缩写词
测试程序样例:
phrase=input()
print(acronym(phrase))
输入样例:central  processing  unit
输出样例:CPU"""
def acronym(phrase):
    s=phrase.split() 
    p=''
    for i in range(len(s)):
            q=''.join(s[i])
            q=q[0]
            p=p+q
    return p.upper()
phrase=input()
print(acronym(phrase))


# In[84]:


"""5、计算工资
编写函数pay(),带两个输入参数:小时工资和上周员工工作了的小时数。函数计算并返回员工的工资。加班工资的计算方法如下:
大于40小时但小于或等于60小时按平时小时薪酬的1.5倍给薪;大于60小时则按平时小时薪酬的2倍给薪。
函数接口定义:
 pay(salaryHour, hours)
salaryHour是平时小时薪酬,hours是员工工作的小时数
测试程序样例:
def main():
     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):
    s=0
    if hours>60:
        s=salaryHour*40+(1.5*salaryHour*20)+(2*salaryHour*(hours-60))
    elif hours>40 and hours<=60:
        s=salaryHour*40+(1.5*salaryHour*(hours-40))
    else:
        s=salaryHour*hours
    return s
def main():
     salaryPerHour = int(input())
     hours = int(input())
     print(pay(salaryPerHour, hours))
main()


# In[99]:


"""6、编写函数判断水仙花数
给定一个三位数n,要求编写函数isflower(n)判断n是否为水仙花数,如果是,则返回True,否则返回False。
所谓"水仙花数"是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153等于1的立方加上5的立方加上3的立方之和。
//1-99有多少水仙花数?
函数接口定义:
在这里描述函数接口。例如:
isflower (n)
其中 n 是传入的参数,表示需要判断的三位数。 n 的值的范围为[100,999]。
测试程序样例:
n = eval(input())
if isflower(n)==True:
    print('Yes')
else:
    print('No') 
输入样例:
371
输出样例:
Yes"""
def isflower (n):
    a=int(n%100/10)
    b=int(n/100)
    c=int(n%10)
    if a*a*a+b*b*b+c*c*c==n:
        return True
    else:return False
n = eval(input())
if isflower(n)==True:
    print('Yes')
else:
    print('No') 


# In[125]:


"""7、回文数
本题要求实现一个函数,判断某整数是否是回文数,如果是,返回True,否则返回False。
回文数指的是,若某整数正着读和倒着读都一样,则称该数为回文数。比如8778、12321等。
函数接口定义:
def isHuiwen(n)
其中参数n是任意整数。
测试程序样例:
n = int(input())
if isHuiwen(n):
    print("yes")
else:
    print("no")
输入样例:
12321
输出样例:
yes
输入样例:
1232
输出样例:
no
"""
def isHuiwen(n):
    n=str(n)
    n[1:len(n)+1]
    m=n[::-1]
    if m!=n:
        return False
    else:return True
n = int(input())
if isHuiwen(n):
    print("yes")
else:
    print("no")

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值