Python100例 我的实现展示(36-40例)

Python100例 我的实现展示(36-40例)

'''36、求100之内的素数。'''


def test_exam_36():
    list_x = []
    for i in range(2, 101):
        flag = True
        for j in range(2, int(math.pow(i, 1 / 2))+1):
            if i % j == 0:
                flag = False
        if flag:
            list_x.append(i)
    print("1-100之间有{0}个素数,所有素数如下所示:".format(len(list_x)))
    print(list_x)


'''37、对10个数进行排序。'''


def test_exam_37():
    str1 = input("请输入10个整数,以空格隔开的字符串,程序将排列顺序打印出来。\n").split(" ")
    x = list(map(int, str1))
    for i in range(len(x)):
        for j in range(i+1, len(x)):
            if x[i] >= x[j]:
                t = x[i]
                x[i] = x[j]
                x[j] = t
    print("排列顺序后的10个数如下:")
    print(x)


'''38、求一个3*3矩阵主对角线元素之和。'''


def test_exam_38():
    x = [[1, 2, 3],
         [4, 5, 6],
         [7, 8, 9]]
    total = 0
    for i in range(x.__len__()):
        for j in range(x[i].__len__()):
            if i == j:
                total += x[i][j]
            elif i + j == 2:
                total += x[i][j]
    print("程序所给3*3数组如下:")
    print(x)
    print("3*3矩阵主对角线元素之和为{0}".format(str(total)))


'''39、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。'''


def test_exam_39():
    str1 = int(input("请输入1个整数,程序将按照排列顺序插入数组之中。\n"))
    x = [1, 3, 6, 8, 13, 15, 24, 33, 51]
    print("插入输入的整数{0}前,数组排序如下:".format(str(str1)))
    print(x)
    address = 0
    # x.append(str1)
    for i in range(x.__len__()):
        if str1 >= x[i]:
            address += 1
    x.append(0)
    for i in range(x.__len__()-1, address, -1):
        x[i] = x[i-1]
    x[address] = str1
    print("插入输入的整数{0}后,数组排序如下:".format(str(str1)))
    print(x)


'''40、将一个数组逆序输出。'''


def test_exam_40():
    s = [1, 3, 6, 8, 13, 15, 24, 33, 51]
    print("逆序转换前数组具体如下:")
    print(s)
    for i in range(int(len(s) / 2)):
        t = s[i]
        s[i] = s[len(s) - 1 - i]
        s[len(s) - 1 - i] = t
    print("转换后列表具体如下:")
    print(s)

if __name__ == '__main__':

    # test_exam_36()
    # test_exam_37()
    # test_exam_38()
    # test_exam_39()
    # test_exam_40()
    test_exam_41()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿尔卑斯的畅想

欢迎打赏,一起每天进步一点点!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值