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()