首页 > 编程语言 > 详细

Python循环类练习题

时间:2021-08-04 11:29:23      阅读:17      评论:0      收藏:0      [点我收藏+]

输入两个整数,如果两个数相减的结果是奇数,输出该结果,如果不是奇数,输出这两个数相减结果是偶数

num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第二个数:"))

if (num1 - num2) % 2 != 0:
    print("两个数相减结果是奇数")
else:
    print("两个数相减结果是偶数")

用for循环输出0到100内所有的奇数

i = 0
for i in range(101):
    if i % 2 == 0:
        continue
    print(i)

用while循环输出0到100内所有的偶数

j = 0
while j < 101:
    if j % 2 == 0:
        print(j)
    j += 1

使用循环计算出1到100求和的结果

result = 0
i = 0
while i < 100:
    i += 1
    result = result + i
print(result)

统计100以内个位数是2并且能够被3整除的数的个数

count = 0
for i in range(1,101):
    if i % 10 == 2 and i % 3 == 0:
#       print(i)
        count += 1
print(count)

输入任意一个正整数,求它是几位数

第一种方法
num = int(input("请输入一个整数:"))

count = 0

while True:
    count += 1
    num //= 10
    if num == 0:
        break
print("您输入的数字是:",count,"位数")

第二种方法:
num = int(input("请输入一个整数:"))

count = 0

while True:
    count += 1
    if num // 10**count == 0:
        break

print(‘你输入的数字{}是{}位数‘.format(num,count))

打印所有的水仙花数

说明:水仙花数是三位数,其各位数字立方和等于该数本身
例如:153是水仙花数,因为153 = 1^3 + 5^3 + 3^3.

for i  in range(100,1000):
x = i // 100 
y = i % 100 // 10
z = i % 10
if i == x ** 3 + y ** 3 + z ** 3:
print(i)

写一个程序可以不断的输入数字,如果输入的数字是0,打印程序结束后结束该程序

while True:
num = int(input("请输入数字:"))
if num == 0:
print("程序结束")
break

统计101-200中素数的个数,并且输出所有的素数,素数又叫质数,就是只能被1和它本身整除的数

for i in range(101,201):
for j in range(2,i):
if i % j == 0:
break
else:
#for ... else 语句:当循环里的break没有被执行的时候,就会执行else
print(i)

假设成立法求2-100之间质数

for i in range(2,101):
flag = True
for j in range(2,i):
if i % j == 0:
flag = False
break
if flag:
print(i,"是质数")

使用计数法求质数

for i in range(2,101):
count = 0
for j in range(2,i):
if i % j == 0:
count += 1
if count == 0:
print(i,"是一个质数")   
else:
print(‘{}是一个合数,他能被{}个数整除‘.format(i,count))

求斐波那契数列数列的第N个数的值,n是正整数


n = int(input("请输入您想要的第几个斐波那契数列的数:"))

num1 = 0
num2 = 1
if n == 1:
num2 = 0
elif n == 2:
num2 = 1
elif n == 3:
num2 = 1
else:
for i in range(0,n-2):
a = num1
num1 = num2
num2 = a + num2
print(num2,end=",")

print()
print(‘您想要的第{}个斐波那契数列的数是{}‘.format(n,num2))

### "百马百担"问题,一匹大马能驼3担货,一匹中马能驮2担货,两匹小马能驮1担货,如果用一百皮马驮一百担货,问有大、中、小马各多少匹

> 假设大马有x,中马有y,小马有100-x-y

for x in range(1,34):
for y in range(1,100 // 2 + 1):
if 3 x + 2 y + (100 - x - y) * 0.5 == 100:
print(x,y,(100-x-y))

如果允许有0匹,把上面range开始数字改成0 ,不允许就1

### 一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆拉玛峰的高度(8848.13米)

heigh = 0.08 / 1000
count = 0
while True:
count += 1
heigh *= 2
if heigh >= 8848.13:
print(heigh)
print(count)
break

Python循环类练习题

原文:https://blog.51cto.com/u_13522483/3260203

(0)
(0)
   
举报
评论 一句话评论(0
分享档案
最新文章
教程昨日排行
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!