python 关于循环的部分练习题.

题目:求100以内所有偶数的和

代码如下

sum = 0#定义求和的数从0开始
for i in range(0,101,2):'''利用for循环语句定义i在0到100之间,由左
闭右开的原则,i可以取到0,但是取不到101,故i在0到100之间。再定义每两
个数之间间隔为2,即0,2,4,6······100,从而取到偶数'''
	sum += i#定义每个取到的数进行相加
print(sum)

在这里插入图片描述

题目:求100以内所有奇数的和

代码如下:sum = 0

sum = 0
for x in range(1,101,2):'''与上题相符,从0开始该为从1开始,间隔还
是2,故取到奇数'''
	sum += x
print(sum)

在这里插入图片描述

题目: 3.写一个等腰三角形

例:
··· *
···* *
··* * *
·* * * *
* * * * *

代码如下

n = int(input("请输入行数: "))
for i in range(1, n + 1):
    for k in range(0, abs(i - n)):
        print(" ", end="")
    for j in range(1, i + 1):#定义行数,行数为1到i
        if j <= i and i + j <= 2 * n:
            print("* ", end="")
    print()

在这里插入图片描述

题目:这里的问题是猜出电脑里存储的数字是什么。你将要编写一个能够随机生成一个0到100之间且包括0和100的数字的程序。这个程序提示用户连续地输入数字直到它与那个随机生成的数字相同。对于每个用户输人的数字,程序会提示它是否过高还是过低,所以,用户可以更明智地选择下-一个输人的数字。

代码如下:

import random
com = random.randint(0, 100)
while True:
    num = int(input("请输入一个0-100之间的整数: "))
    if num == com:
        print("恭喜你!!!答对了,奖励你一根棒棒糖")
        break
    elif num > com:
        print("你猜的数过大")
    else:
        print("你猜的数过小")

在这里插入图片描述

题目:2.两个整数4和2的最大公约数(GCD)是2。整数16和24的最大公约数是8。怎样找出最大公约数呢?假设输人的两个整数是nl和n2。你知道数字1是它们的公约数,但它并不是最大公约数。所以,你要检测k (k=2、3、4、…)是否为n1和n2的公约数,直到k大于n1或n2。把公约数存储在一个名为gcd的变量中。初始状态时,gcd的值为1。每找到一个新的公约数就把它赋给gcd。当你检测完从2到n1或从2到n2的所有可能公约数后,存储在gcd中的值就是最大公约数。

代码如下:

num1,num2 = eval(input("请输入两个数: "))
a = min(num1,num2)#选取两个数中较小的数
b = max(num1,num2)#选取两个数中较大的数
for gcd in range(0,a+1):#定义公约数在0到较小数之间取
	gcd += 1#定义公约数从0开始,依次加一直到a
	if a % gcd == 0 and b % gcd == 0:#判断a是否能被两数整除
		gcd1 = gcd#若能整除,则将数赋给新数gcd1
	elif a % gcd != 0:
		gcd = gcd#若不能整除,则还是原数
print("%s和%s的最大公约数是: %s"%(num1,num2,gcd1))

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Zombie_QP/article/details/124364178