目录
1、用while循环正向输出9*9乘法表
2、 while循环反向输出乘法表
3、for循环输出菱形
4、while循环输出菱形
5、五位数中,对称的数称为回文数,找出所有的回文数。
6、求1!+2!+3!+4!+5!
7、找出所有的水仙花数,三位数,各位立方和等于该数本身。
8、输入任意两个数,如果第一个数小,从第一个数打印到第二个数,如果第二个数小,从第二个数打印到第一个数 # 比如: 输入2,5,则打印:5 4 3 2
9、输入两个数n,a, 输出对应的结果
10、输入两个数,求两个数的最大公约数(*****)
11、输入两个数,求两个数的最小公倍数(****)
12、宰相的麦子:相传古印度宰相达依尔,是国际象棋的发明者。有一次,国王因为他的贡献要奖励他,问他想要什么。
1、用while循环正向输出9*9乘法表
while i <= 9:
j = 1
while j <= i:
print('%d * %d = %d' % (j , i , i * j),end='\t')
j += 1
i += 1
print('\n')
2、 while循环反向输出乘法表
3、for循环输出菱形
n = int(input('请输入一个整数:'))
for i in range(1,n + 1):
print((n - i) * ' ' ,(2*i - 1) * '*')
for j in range(n - 1,0,-1):#左闭右开
print((n - j) * ' ', (2 * j - 1) * '*')
4、while循环输出菱形
i = 1
n = int(input('请输入一个整数:'))
while i <= n:
print((n - i) * ' ', (2 * i - 1) * '*')
i +=1
j = n - 1
while j >=1:
print((n - j) * ' ', (2 * j - 1) * '*')
j -= 1
5、五位数中,对称的数称为回文数,找出所有的回文数。
for i in range(10000,100000):
s = str(i)
if (s[::] == s[::-1]):
print(i)
6、求1!+2!+3!+4!+5!
n = int(input('请输入要求的阶乘:'))
j = 1
s = 0
for i in range(1,n + 1):
j *=i
s +=j
print(s)
7、找出所有的水仙花数,三位数,各位立方和等于该数本身。
如: 153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3
for i in range(101,1000):
n = i
s = 0
while i > 0:
a = i % 10
s += a*a*a
i //= 10
if (s == n):
print(n)
8、输入任意两个数,如果第一个数小,从第一个数打印到第二个数,如果第二个数小,从第二个数打印到第一个数 # 比如: 输入2,5,则打印:5 4 3 2
n = int(input('请输入一个数:'))
m = int(input('请输入另一个数:'))
if (n < m):
for i in range(n,m + 1):
print(i,end='\t')
else:
for j in range(n,m - 1,-1):#左闭右开,注意右边位置
print(j,end='\t')
9、输入两个数n,a, 输出对应的结果
# 如: n=3,a=2; 输出 2 + 22 + 222 的值。(****) # 如: n=4,a=3; 输出 3 + 33 + 333 + 3333的值。
# 提示: 1、n = 3,相加三次,每次相加比前一次相加的数,多一位 #
2、每次多的这个位数的值为a, 3, 3*10+3(33), 33*10+3(333),...
n = int(input('请输入次数:'))
m = int(input('请输入值:'))
a = 0
s = 0
for i in range(0,n ):
a += (m * (10 ** i))
s += a
print(s)
10、输入两个数,求两个数的最大公约数(*****)
# 如: 12和8的最大公约数是4,
# 提示: 能够同时整除两个数的最大数
# 1, 先找出两个数中最小的那个数,
# 2, 最小数--, 找出能被两个数整除的数(退出循环break)
num1 = int(input('请输入第一个数:'))
num2 = int(input('请输入第二个数:'))
m = max(num1,num2)
n = min(num1,num2)
r = m % n
while r != 0:
m ,n = n,r
r = m % n
print(num1, "和", num2, "的最大公约数为", n)
11、输入两个数,求两个数的最小公倍数(****)
# 如: 9和6的最小公倍数是18,
# 1, 先找出两个数中的最大数
# 2, 最大数++,找出能被两个数整除的数(退出循环break)
num1 = int(input('请输入第一个数:'))
num2 = int(input('请输入第二个数:'))
m = max(num1,num2)
n = min(num1,num2)
r = m % n
while r!= 0:
m ,n = n , r
r = m % n
print(num1,'和',num2,'的最小公倍数为',num2 * num1 / n)
12、宰相的麦子:相传古印度宰相达依尔,是国际象棋的发明者。有一次,国王因为他的贡献要奖励他,问他想要什么。
# 达依尔说:“只要在国际象棋棋盘上(共64格)摆上这么些麦子就行了:第一格一粒,第二格两粒,……,
# 后面一格的麦子总是前一格麦子数的两倍,摆满整个棋盘,我就感恩不尽了。”国王一想,这还不容易,
# 刚想答应,如果你这时在国王旁边站着,你会不会劝国王别答应,为什么?
n = 0
for i in range(0,64):
n += (2**i)
print(n)