Python程序设计 多重循环(二)

1.打印数字图形

输入n(n<=9),输出由数字组成的直角三角图形。例如,输入5,输出图形如下

python 复制代码
n=int(input(""))
#开始
for i in range(1,n+1):
    for j in range(1,i+1):
        print(j,end="")
    print()

#结束

2.打印字符图形

输入小写英文字母,输出由小写英文字母组成的直角三角形 例如,输入字符f,输出如下图形

python 复制代码
ch=input("")
#开始
n = ord(ch)-ord("a")
for i in range(0,n+1):
    for j in range(0, i+1):
        print("%s"% chr(ord("a")+ j), end="")
    print()

#结束

3.打印阶乘

输入一个整数,显示1到该数的阶乘等式如下所示。例如,输入5 显示

python 复制代码
x=eval(input())
#代码开始
for i in range(1,x+1):
    s = 1
    print("%s!=" % i,end="")
    for j in range(1,i+1):
        s = s * j
        print(j,end="")
        if i != j:
            print("*",end="")
    print("=%d" % s)
#代码结束

4.取球问题

从r个红球,w个白球,b个黑球中任意取出8个作为一组。 在每组中,可以没有黑球,但必须要有红球和白球。 统计取球的方案个数。 例如输入6 6 6,输出26.

python 复制代码
r=int(input())
w=int(input())
b=int(input())
#代码开始
f = 0
for r1 in range(1,r+1):
    for w1 in range(1,w+1):
        for b1 in range(0,b+1):
            if r1 + w1 + b1 == 8:
                f += 1

#代码结束
print("{:d}".format(f))

5.马驮担问题

x匹马驮y担货,大马一匹驮3担,中马一匹驮2担,小马两匹驮1担。 输入x和y,计算满足条件的方案数。(每种马起码要有一匹) 例如 输入100 100,输出6

python 复制代码
x=int(input())
y=int(input())
#开始
f = 0
for i in range(1, x):
    for j in range(1,x):
        for n in range(1,x):
            if 3*i + 2*j + n/2 == y and i+j+n == x:
                f += 1
#结束 
print("{:d}".format(f))

6.钱的组合

统计将x元兑换为10元钱、5元钱、1元钱,共有多少方案。 例如输入20,返回9. 提示:每种钱的数目可以为0

python 复制代码
n=eval(input())
#代码开始
count = 0
for x in range(0, n+1):
    for y in range(0, n+1):
        for z in range(0, n+1):
            if 10*x+5*y+z==n:
                count += 1
print(count)
#代码结束

7.素数之和

输入某数,求该数以内的素数之和。 素数:除1和数本身外不能被其它任何数整除的数称为素数。 输入样例: 10 输出样例: 17

python 复制代码
n=eval(input())
#代码开始
count = 0
for i in range(2, n+1):
    for j in range(2, i):
        if i % j == 0:
            break
    else:
        count += i
print(count)

#代码结束

8.验证尼科彻斯定理

尼科彻斯定理为:任何一个整数的立方都可以表示成一串连续的奇数的和。 例如: 2^3=3+5 3^3=7+9+11 4^3=13+15+17+19 编写一个程序,接收一个整数,将其的立方和表示为若干个连续的奇数相加的形式。若有多种情况符合要求,只需要显示第一种。

python 复制代码
x=eval(input())
#代码开始
print("%s^3="%x,end="")
for i in range(x):
    n = x*x-x+1 + 2*i
    print(n,end="")
    if i != x-1:
        print("+",end="")

#代码结束

9.景点循环查找

编写一个从文件景点.csv中查找景点信息的小程序。 景点.csv如图所示,每行为一个景点信息。

编写程序,输入景点名称, 若该景点存在,显示该景点的信息(可模糊查找) 若该景点不存在,显示无此景点 查找后询问是否继续查找,输入y则继续查找,n则结束程序。

python 复制代码
f1=open("lx2/景点.csv","r",encoding="utf8")
#代码开始
while True:
    f1.seek(0)
    jd = input("景点")
    for i in f1.readlines():
        i = i.strip("\n")
        if i.find(jd) != -1:
            print(i)
            break
    else:
        print("无此景点")

    sf = input("是否继续")
    if sf == "n":
        break
    
#代码结束
f1.close()
相关推荐
Rockson3 分钟前
使用Ruby接入实时行情API教程
javascript·python
DO ITNOW25 分钟前
Cursor/VScode ,点击运行按钮,就打开新的终端,如何设置为在当前终端运行文件而不是重新打开终端----一招搞定篇
ide·vscode·编辑器
小妖66631 分钟前
若 VSCode 添加到文件夹内右键菜单中显示
ide·vscode·编辑器
念九_ysl31 分钟前
Java 使用 OpenHTMLToPDF + Batik 将含 SVG 遮罩的 HTML 转为 PDF 的完整实践
java·开发语言·pdf
freshman_y33 分钟前
VSCode遇到的一些小毛病(自动保存、运行后光标不再处于编辑区)
ide·vscode·编辑器
yaoxin52112341 分钟前
124. Java 泛型 - 有界类型参数
java·开发语言
liulilittle1 小时前
深度剖析:OPENPPP2 libtcpip 实现原理与架构设计
开发语言·网络·c++·tcp/ip·智能路由器·tcp·通信
88号技师1 小时前
2025年6月一区-田忌赛马优化算法Tianji’s horse racing optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
Tipriest_1 小时前
Python关键字梳理
python·关键字·keyword
勤奋的知更鸟1 小时前
Java 编程之模板方法模式
java·开发语言·模板方法模式