Python实验之——输出数字金字塔

1. 在金字塔模式中显示数字(编写一个嵌套 for 循环来显示下面的输出):在这里插入图片描述

为了给同学们更好地指导实验,我得认真提前把题目做一遍。这个题目其实还是有点复杂的,想了一种比较简单的解法如下(代码小弱请勿嘲笑):

for i in range (0,8):
    for j in range(7-i):
        print(" ",end=" ")#输出空格

    for k in range(i+1):
        print(2**k,end=" ")#递增的数
        k+=1
        t=i
    for k in range(i):
        print(2**(t-1),end=" ")#递减的数,t用来作为迭代量
        t=t-1
        k=k+1
    print("\n")

结果如下:在这里插入图片描述
2. 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13……求出这个数列的前 20 项之和。

a=2
b=1
t=0
for i in range(20):
    t+=a/b
    a,b=a+b,a
t

运行结果:32.66026079864164

3.用户从键盘输入一串字符(以回车键结束),统计并输出其中数字、大写字母、小写字母以及其他字符的个数。

a=b=c=d=0
ste=input("please input a str:")
for ch in ste:
    if ch=='\n':
       break
    elif ch>='A' and ch<='Z':
        a+=1
    elif ch>='a'and ch<='z':
        b+=1
    elif'0'<=ch<='9' :
        c+=1
    else:
        d=+1
print(a,b,c,d)

测试:please input a str:adj784GGH
3 3 3 0

4.利用 turtle 库编写程序绘制一个国际象棋棋盘。
这个CSDN上随便一搜源码很多,方法也多,就不写了
5.使用字符串反向的方法重新编写案例 4 程序。
案例 4
编写程序提示用户输入一个 5 位数,判断它是否是一个回文数。如果一个数从左向右和从右向左读取时是一样的,那么这个数就是回文数。例如:12321 是回文数,个位与万位相同,十位与千位相同。

n=int(input("输 入 一 个 五 位 整 数"))
if n<10000 or n>99999:
    print("输 入 错 误")
else:
    b=str(n)
    if(b==b[::-1]):
       print(True)
    else:
        print(False)
测试:输 入 一 个 五 位 整 数12321
      True

6.从键盘输入一个整数字符串,统计输出该整数的各个数位一共有多少个奇数。例如“12345”这个数,有3 个数位为奇数(1、3、5)。

a=0
ste = input("please input a num str:")
for ch  in ste:
    if ch  == '\n':
        break
    elif int(ch)% 2 != 0:
        a += 1
print(a)
测试:please input a num str:123
     2

完事了呢,同学们下周见!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值