Python —— 4 习题练习

1. 华氏温度转摄氏温度
1 # 编写一个函数将华氏温度转换为摄氏温度 公式为C = (F-32)*5/9
2 def func1():
3     f = int(input("请输入华氏温度:"))
4     return (f-32) * 5/9
5 c = func1()
6 print("摄氏温度:%dC°" % c)

 

2. 求三位数的素数
 1 # 编写一个函数,通过调用该函数求出所有3位数的素数
 2 import math
 3 def func2():
 4     for i in range(100, 1000):
 5         flag = True
 6         for j in range(2, int(math.sqrt(i))+1):
 7             if i % j == 0:
 8                 flag = False
 9                 break
10         if flag == True:
11             print(i, end=" ", flush=True)
12 s = func2()

 

3. 编写一个函数,求满足以下条件的最大的n值:1^2+2^2+3^2+4^2+...+n^2 < 1000
1 def func3():
2     su = 1
3     for n in range(1, 100):
4         su *= n
5         if su > 1000:
6             max_n = n
7             return max_n
8 max_n = func3()
9 print("最大n的值:%d" % (max_n-1))

4. 编写一个函数multi(),参数个数不限,返回所有参数的乘积
1 def multi(*n):
2     s = 1
3     for i in n:
4         s *= i
5     return s
6 s = multi(1, 2, 3, 4, 5)
7 print("参数的乘积:%d" % s)

 

5. 编写一个函数,功能是求两个正整数m和n的最大公约数
 1 def func5(m, n):
 2     if m > n:
 3         r = n
 4     else:
 5         r = m
 6     for i in range(1, r+1):
 7         if (m % i == 0) and (n % i == 0):
 8             gys = i
 9     return gys
10 gys = func5(12, 6)
11 print(gys)

6. 编写将十进制转化为二进制的函数
1 def func6(n):
2     b = " "
3     while n != 0:
4         b = str(n % 2)+b
5         n //= 2
6     return b
7 n = int(input("请输入一个十进制数:"))
8 b = func6(n)
9 print("%d的二进制数:%s" % (n, b))

 

7. 编写一个判断字符串是否是回文的函数。回文就是一个字符串从左到右和从右到左是完全一样的
 1 def func7(str):
 2     e = len(str)
 3     for i in range(e+1):
 4         if (str[i] == str[e-1]) and i < e-1:
 5             return True
 6         else:
 7             return False
 8     return True
 9 s = str(input("请输入字符串:"))
10 if func7(s):
11     print("%s是回文" % s)
12 else:
13     print("%s不是回文" % s)

8. 编写一个函数,实现统计字符串中单词的个数并返回
1 def func8(str):
2     count = 0
3     for i in str:
4         if 'a' <= i <= 'z' or 'A' <= i <= 'Z':
5             count += 1
6     return count
7 s = str(input("请输入一个字符串:"))
8 count = func8(s)
9 print("字符串中单词的个数:%d" % count)

 

 
 

 

posted @ 2021-06-05 09:48  笺笙  阅读(3490)  评论(0编辑  收藏  举报