目录
2.输出100与1000之间能被5和6同时整除的数,每行十个
3.显示21世纪(2001-2100)里所有的闰年,每行10个
python 例题(6)
1.几何问题(点在圆内还是圆外?)
源代码:
print('已知圆的半径为10,圆心坐标为(0,0),求输入的坐标位于圆的哪个位置')
(x1, y1) = eval(input('请输入点的坐标'))
x2 = 0
y2 = 0
sum = ((x1 * x1 - x2 * x2) + (y1 * y1 - y2 * y2)) ** 0.5
print("到圆心的距离为:%.2f" % sum)
if sum > 10:
print("Point(%.1f,%.1f)is not in the circle" % (x1, y1))
elif sum == 10:
print("Point(%.1f,%.1f)is on the circle" % (x1, y1))
else:
print("Point(%.1f,%.1f)is in the circle" % (x1, y1))
测试结果:
已知圆的半径为10,圆心坐标为(0,0),求输入的坐标位于圆的哪个位置
请输入点的坐标4,5
到圆心的距离为:6.40
Point(4.0,5.0)is in the circle已知圆的半径为10,圆心坐标为(0,0),求输入的坐标位于圆的哪个位置
请输入点的坐标9,9
到圆心的距离为:12.73
Point(9.0,9.0)is not in the circle
2.输出100与1000之间能被5和6同时整除的数,每行十个
源代码:
print("能被5和6同时整除的数有:")
cont = 0
for i in range(100, 1001):
if (i % 5 == 0 and i % 6 == 0):
print(i, end=" ")
cont = cont + 1
if cont % 10 == 0:
print('\n')
测试结果:
能被5和6同时整除的数有:
120 150 180 210 240 270 300 330 360 390420 450 480 510 540 570 600 630 660 690
720 750 780 810 840 870 900 930 960 990
3.显示21世纪(2001-2100)里所有的闰年,每行10个
源代码:
cont = 0
print('21世纪中的闰年有:')
for i in range(2001, 2101):
if (i % 4 == 0 and i % 100 != 0 or i % 400 == 0):
print(i, end=' ')
cont = cont +1
if cont %10 == 0:
print('\n')
测试结果:
21世纪中的闰年有:
2004 2008 2012 2016 2020 2024 2028 2032 2036 20402044 2048 2052 2056 2060 2064 2068 2072 2076 2080
2084 2088 2092 2096
4.找出一个整数的所有因子
源代码:
num = int(input('请输入一个整数'))
list_num = []
tmp = 2
if num == tmp:
print(num)
else:
while (num >= tmp):
num1 = num % tmp
if num1 == 0:
list_num.append(str(tmp))
num = num / tmp
else:
tmp = tmp + 1
for i in range(len(list_num)):
print(list_num[i],end=' ')
测试结果:
请输入一个整数120
2 2 2 3 5