1.求两个数的最大公约数和最小公倍数(for)
提示:最小公倍数=(num1)*(num2)/最大公约数
num1=int(input('请输入第一个数:'))
num2=int(input('请输入第二个数:'))
y=0
if num1<=num2: #最大公约数不会超过两个数中最小的那个
for i in range(1,num1+1):#range是左闭右开
if (num1%i==0 and num2%i==0):
y=i
else:
for i in range(1,num2+1): #这个是当num2<num1
if (num1%i==0 and num2%i==0):
y=i
print('最大公约数:%d' %(y))
yy=(num1*num2)/y
print('最小公倍数:%d' %(yy))
运行结果:
2.9x9乘法表
\t | 在控制台输出一个制表符,协助我们在输出文本的时候在垂直方向保持对齐 |
---|---|
\n | 在控制台输出一个换行符 |
\ | 转译 |
1.制表符:
print('1\t2\t3')
print('10\t20\t30')
结果:
1 2 3
10 20 30
2.换行:
print('hello\nworld')
结果:
hello
world
3.转译
print('what\'s')
结果:
what's
row=1
while row < 10:
col=1
while col <= row:
print('%dx%d=%d\t' %(row,col,row*col),end='') #\t制表符。end=''不换行
col+=1
row+=1
print('')#换行
运行结果:
3.金字塔(while)
1.whlie循环:
while 条件满足:
满足条件执行的语句
else:
不满足条件执行的语句
2.while死循环:
while True:
print(’!!!’)
while 2>1:#永真
print(’@@@’)
3.whlie嵌套:
下面的几个例题都用了嵌套
2.1第一种形状:
row = 1
while row <= 5:
col = 1
while col <= row:
print('*', end='')
col += 1
row += 1
print('')
结果:
第二种形状:
法一:
row = 1
col = 1
while row <= 5:
while col <= row:
for i in range(1,7-row):
print('*',end='')
col+=1
row+=1
print('')
法二:
row = 1
while row <= 5:
col=1
for col in range(1, 6-row):
print('*', end='')
col+=1
for col in range(6-row,6):
print('',end='')
print('')
row+=1
结果:
第三种形状:
row = 1
while row <= 5:
col=1
for col in range(1, 6-row):
print(' ', end='')
col+=1
for col in range(6-row,6):
print('*',end='')
print('')
row+=1
结果:
第四种形状:
row = 1
while row <= 5:
col=1
for col in range(1,row):
print(' ', end='')
col+=1
for col in range(row,6):
print('*',end='')
print('')
row+=1
结果:
4.while登陆
需求,只有三次机会,对了登陆成功,错了提示错误,超过三次明天再试。
i = 1
while i <= 3:
user = input('请输入用户:')
passwd = input('请输入密码:')
if (user == 'root' and passwd == 'westos'):
print('succes!')
break
else:
print ('failed,try again!')
i += 1
else:
print('明天再试!')
运行结果: