4.10

所花时间:4小时

代码量:34

博客篇:1

杨辉三角形

题目描述

输出n0<n)行杨辉三角形,n由用户输入。

【源代码程序】

"""
    规律:每一行前后都是1
        第i行中间有i个(i+1),i是从0开始的。
        如:第0行中间有0个1,第1行中间有1个2,第2行中间有2个3
"""
n = int(input())
for i in range(0, n):
    print("%5.d" % 1, end='')
    for j in range(0, i):
        print("%5.d" % (i + 1), end='')
    print("%5.d" % 1, end='')
    print()

筛法求素数

题目描述

用户输入整数nm1<n<m<1000),应用筛法求[n,m]范围内的所有素数。

【源代码程序】

def IsS(num):
    for i in range(2, int(pow(num, 0.5)) + 1):
        if num % i == 0:
            return False
    return True


n, m = map(int, input().split())
num = 0  # 用于判断是否该换行了
for i in range(n, m + 1):
    if IsS(i):
        num += 1
        if num % 5 != 0:
            print("%5.d" % i, end='')
        else:
            print("%5.d" % i)

查找鞍点

题目描述

对于给定5X5的整数矩阵,设计算法查找出所有的鞍点的信息(包括鞍点的值和行、列坐标,坐标从1开始)

提示:鞍点的特点:列上最小,行上最大。

【源代码程序】

"""规定是五行五列的矩阵"""
row = []    # 行
low = []    # 列
for i in range(0, 5):
    a = list(map(int, input().split(' ')))
    row.append(a)   # 这里是按照一行一行录入到row,列表里面存5个列表(5行)
for i in range(0, 5):
    b = []
    for j in range(0, 5):
        b.append(row[j][i])
    low.append(b)   # 这里是按照一列录入到low中,列表里面存的是5个列表(5列)
for i in range(0, 5):
    for j in range(0, 5):
        if row[i][j] == max(row[i]):    # 如果行: 5 1 2 3 4 5,这样子写,两个5都会被遍历到
            if row[i][j] == min(low[j]):
                print("[%d,%d,%d]" % (i+1, j+1, row[i][j]), end='')

posted @ 2024-04-10 18:42  umiQa  阅读(2)  评论(0编辑  收藏  举报