Python习题---打印星星、乘法表、猜数字、素数、计算时间

目录

1、打印九九乘法表

1.1、普通循环嵌套

1.2、用format()方法和ljust()方法打印出九九乘法表

2、打印星星系列:

2.1、星星一

2.2、星星二

2.3、星星三

2.4、星星四

2.5、星星五

2.6、星星六

3、猜数字游戏

4、计算素数问题

5、计算时间问题(5分30秒)



1、打印九九乘法表

1.1、普通循环嵌套

1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

代码如下:

for i in range(1,10):
    for j in range(1,i+1):
        print('%d*%d=%d'%(i,j,i*j),end=' ')
    print()

1.2、用format()方法和ljust()方法打印出九九乘法表

for i in range(1,10):
    for j in range(1,i+1):
        print("{0}*{1}={2}".format(i,j,i*j).ljust(8),end=" ")
    print()

2、打印星星系列:

2.1、星星一

打印三角形
*        
* *      
* * * 
* * * * 

代码如下:

for i in range(1,5):
    for j in range(i):
        print('*',end=' ')
    print()

2.2、星星二

    打印倒三角形
    * * * * * 
    * * * * 
    * * * 
    * * 
    * 

代码如下:

for i in range(1,6):
    for j in range(6-i):
        print('*',end=' ')
    print()

2.3、星星三

    打印三角形
          * 
        * * 
      * * * 
    * * * * 
  * * * * * 

代码如下:

for i in range(1,6):
    for j in range(6-i):
        print(' ',end=' ')
    for z in range(i):
        print('*',end=' ')
    print()    

2.4、星星四

    打印三角形
  * * * * * 
    * * * * 
      * * * 
        * * 
          * 

代码如下:

for i in range(1,6):
    for j in range(i):
        print(' ',end=' ')
    for z in range(6-i):
        print('*',end=' ')
    print()

2.5、星星五

    打印等边三角形
          * 
        * * * 
      * * * * * 
    * * * * * * * 
  * * * * * * * * * 
* * * * * * * * * * * 

代码如下:

for i in range(1,7):
    for j in range(7-i-1):
        print(' ',end=' ')
    for z in range(2*i-1):
        print('*',end=' ')
    
    print()

2.6、星星六

    打印菱形
1                 *
2                * *
3               *   *
4              *     *
5             *       *
6            *         *
7           *           *
8          *             *
9         *               *
10       *******************
9         *               *
8          *             *
7           *           *
6            *         *
5             *       *
4              *     *
3               *   *
2                * *
1                 *
    

代码如下:

num = 10
for row in range(num):
    print('{:<8d}'.format(row + 1), end='')
    print((num - row) * ' ', end='')  # 输出空格,这里可以用乘号

    for col in range(2 * row + 1):
        if col == 0 or col == 2 * row or row == num - 1:  # 条件:左右边界或下边界,打印*,否则打印空格
            print('*', end='')
        else:
            print(' ', end='')
    print()
for row in range(num - 2, -1, -1):
    print('{:<8d}'.format(row + 1), end='')
    for j in range(num - row):  # 输出空格,这里有可以用循环
        print(' ', end='')

    for col in range(2 * row + 1):
        if col == 0 or col == 2 * row:
            print('*', end='')
        else:
            print(' ', end='')
    print()

3、猜数字游戏

预设一个0~9之间的整数,让用户猜一猜并输入所猜的数字,如果大于预设的数,
显示“太大了”,小于预设的数,显示“太小了”
如此循环,直至猜中这个预设的数字,猜中之后显示“恭喜您猜中啦”,

代码如下:

num = 6
while num:
    user_num = int(input("请猜猜这个值:\n"))
    if user_num > num:
        print("太大了")
    elif user_num < num:
        print("太小啦")
    elif user_num == num:
        print("恭喜您!猜中啦!!!")
        break

4、计算素数问题

输出1000以内的素数以及这些素数之和
(素数:是指除了本身和1之外,不能被其他任何整数整除的数)

代码如下:

slist = []
for n in range(2,1000):
    for i in range(2,n):
        if n%i==0:
            break
        if i==n-1:
            slist.append(n)
            break
print(slist)
print("和等于:",sum(slist))

5、计算时间问题(5分30秒)

输入一个时间,输出该时间经过5分30秒后的时间

代码如下:

input_time = input("请输入一个时间(格式为: 12:23:59):\n")
# input_time="12:52:59"
time_list = input_time.split(':')
time_data = [int(x) for x in time_list] # 将输入时间都转换为整数类型

H =  time_data[0]
M =  time_data[1]
S = time_data[2]

if ((H >= 0) and (H <24)) and ((M>= 0) and (M <=60)) and ((S>= 0) and (S <=60)):
	S +=30
	if S >= 60:
		S = S-60
		M+=1

	M+=5
	if M >= 60:
		M = M-60
		H+=1

	if H ==24:
		H = 0
	print ('next time:%02d:%02d:%02d'%(H,M,S))
else:
	print ('你输入的时间格式有问题,请重新输入!')

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值