ParisGabriel:Python全栈工程师(0基础到精通)教程 第十课

  ParisGabriel
 
                   Python人工智能从入门到精通
 
 
 
 
                       week summer   exercises
                     周末回顾总结  温故而知新  测试练习题
 
             
 
 
 
 
练习:

1. 古代的秤是16两一斤 请问216两是几斤几两
 答案:

print(206 // 16, "axe", 216 % 16, "liang")

2. 凌晨0:0:0计时 到现在已经过了63320秒 现在是几时几分几秒
答案:

a = 63320
x = a % 3600
print(a // 3600, x // 60, a % 60)

3. 温度转换:
摄氏度=5.0/9.0*(华氏度-32)
请问100华氏度是多少摄氏度?
如果当前温度是摄氏度温度能否算出华氏度温度是多少?
答案:

c = 5.0 / 9.0 * (100 - 32)
print(c)
s = 100 * 9.0 / 5.0 + 32
print(s)

4. 输入两个整数,分别用变量x,y绑定
1)打印输出计算这两个数的和
2)打印输出计算这两个数的积
3)打印输出计x的y次方

答案:

x = int(input())
y = int(input())
print('''
%d
%d
%d
''' % ((y + x), (y * x), (y ** x)))

5. 今天是小明的20岁生日,假设每年都有365天,计算他过了多少个星期天,剩余多少天

答案:

a = 362 * 20
print(a // 7, "yu", a % 7)

6. 分别输入
当前时间的时、分、秒 在终端打印输出当前距离0:0:0过了多少秒

答案:

h = int(input())
m = int(input())
s = int(input())
print(h * 3600 + m * 60 + s, "miao")

7. 北京出租车价格 3公里以内13元
基本单价:2.3元/公里(超出3公里以外)
回空费:超过15公里 每公里 加收单价的50%的会空费(3.45元/公里)
输入公里数 打印费用金额

答案:

a = int(input())
if a > 15:
    m = (a - 15) * 3.45 + (15 - 3) * 2.3 + 13
elif a > 3:
    m = (a - 3) * 2.3 + 13
elif 0 < a < 4:
    m = "13"
else:
    m = "cuo"
print(m)

8. 输入一个学生的三科成绩(3个整数:
打印出最高分、最低分、平局分是多少

答案:

L = []
s = 0
for x in range(3):
    a = input()
    s += int(a)
    L += [a]
print(max(L))
print(min(L))
print((s / 3))

9. bmi指数(body、mass、index)以称身体质量指数
bmi的计算公式: bmi = 体重/身高的平方
标准表:
bmi< 18.5 体重过轻
18.5<=bmi<24 体重正常
bmi> 24 体重过重
输入体重(公斤) 身高(米) 打印出 bmi的值 并打印体重状况

答案:

a = int(input())
b = float(input())
bmi = a / (b * 2)
if bmi < 18.5:
    print("qing")
elif bmi > 24:
    print("zhong")
else:
    print("zhengchang")

10. 输入一个字符串用s绑定
判断输入有几个空格
将原字符串的左右空格空白符去掉
打印剩余的字符个数
判断输入的是否是数字
如果是数字判断这个数是否大于100

答案:

s = input(":")
s.count(" ")
s.strip()
print(len(s))
if s.isdigit():
    if int(s) > 100:
        print(s, ">100")
    else:
        print(s, "<100")
else:
    print("bushi")

11. 输入3行文字,让这三行文字在一个方框内居中显示
显示如下:
+---------------+
|     hello     |
|  123123    |
|       |
+---------------+
请不要输入中文

答案:

L = []
s = 0
for x in range(1, 10):
    a = input("plaese input at will string:")
    L += [a]
    if len(a) > s:
        s = len(a)
print("+" + "-" * (s) + "+")
for m in L:
    print(("|" + m.center(s) + "|"))
print("+" + "-" * (s) + "+")

12. 输入一行字符串,将字符串中Unicode编码值最大的一个字符打印出来(不允许用max函数)
提示:while内可以嵌套if

答案:

x = input("plaese input at will string:")
i = 0
a = x[0]
while i < len(x):
    if x[i] > a:
        a = x[i]
    i += 1
print(a)

13. 打印 从零开始的浮点数,每个数增加0.5,
打印出10以内的这样的数:
0.0
0.5
1.0
0.5
2.0
...
9.5

答案:

i = 0.0
while i < 10:
    print(i)
    i += 0.5

14. 当输入一些数字,输入负数时结束输入
当完成输入完后,打印输入的数是多少

答案:

i = 0
while True:
    a = int(input("plaese input at will string :"))
    i += a
    if a < 0:
        break
print(i)

15. Sn = 1/2+1/4+1/8....+1/(2**n)
求当n等同于100时Sn的值是多少

i = 0
sn = 1
while i <= 100:
    i += 1
    sn += 1 / (2 ** i)
print(sn)

16. 用while语句实现打印三角形,输入一个整数表示三角形
的宽度和高度,打印出相应的三角形
如:
1)
*
**
***
****
2)
****
***
**
*
3)
*
**
***
****
4)
****
***
**
*

答案:

a = int(input("plaese input at will integer:"))
c = a
for x in range(1, a + 1):
    print((a - x) * " " + "*" * x + x * "*")
else:
    i = 0
    while i < a:
        print((c - a) * " " + a * "*" + a * "*")
        a -= 1

17. 用for实现:
输入一个数W代表正方形的宽度:

1    2    3    4    5
1    2    3    4    5
1    2    3    4    5
1    2    3    4    5
1    2    3    4    5

答案:

w = int(input("plaese inout at will intefer:"))
for i in range(1, w + 1):
    for x in range(1, w + 1):
        print(x, end = " ")
    print()

改写上题:
1    2    3    4    5
2    2    3    4    5
3    2    3    4    5
4    2    3    4    5
5    2    3    4    5

答案:

w = int(input("plaese inout at will intefer:"))
for i in range(1, w + 1):
    for x in range(i, w + i):
        print(x, end = " ")
    print()


18. 输入任意文字,存于列表L中,当不输入任何内容直接回车后结束输入
打印L列表中的内容
计算你共输入几行内容、和多少个字符

答案:

L = []
x = 0
while True:
    a = input("please input at will string not input direct Enter break input:")
    if a == "":
        break
    x += len(a)
    L += [a]
print('''
you input content:%s
%d line
There are %d of them''' % (L, len(L), x))

19. 输入一个整数 (代表树干高度)
打印出如下一颗树
输入:2
 *
***
 *
 *

输入3
   *
  ***
 *****
   *
   *
   *

答案:

a = int(input("please input at figure height:"))
for x in range(1, a * 2, 2):
    print(("*" * x).center(a * 2))
else:
    for i in range(a):
        print("*".center(a * 2))

20. 任意输入一个整数 判断这个数是否是素数(prime)
素数也叫质数,是只能被1和自身整除的数:
如:2 3 5 7 11 等
提示:
用排除法:判断x是否是素数是,只要让x分别除以:2 3 4 5 ...-1
只要整除了 那x不是素数,否则x是素数

答案:

a = int(input("please at will integer whether is prime number:"))
if 3 > a >= 0:
    print(a, "is prime number")
else:
    for x in range(2, a):
        if a % x == 0:
            print(a, "not prime number")
            break
    else:
        print(a, "is prime number")

21. 算出100 ~ 1000以内的水仙花数(naricissistic)
水仙花数是指百位的3次方 加上十位的3次方 加上各位的3次方等于原数的数

153=1**3+5**3+3**3   153  370....

答案:

for x in range(100, 1000):
    if x == (x // 100) ** 3 + ((x % 100) // 10) ** 3 + (x % 10) ** 3:
        print(x)

猜你喜欢

转载自www.cnblogs.com/ParisGabriel/p/9281694.html
今日推荐