1、给一个半径,求圆的面积和周长,圆周率3.14
radius = int(input('radius = '))
print('area = ', 3.14 * radius **2)
print('circumference = ', 3.14 * 2 * radius)
2、输入两个数,比较大小后,从小到大升序打印
a = int(input('first number= '))
b = int(input('second number= '))
if a > b:
print(b,a)
else:
print(a,b)
3、依次输入若干个整数,打印出最大值,如果输入为空,则退出程序
m = int(input('Input first number >>>'))
while True:
c = input('Input a number >>>')
if c:
n = int(c)
if n > m:
m = n
print('Max is',m)
else:
break
4、给定一个不超过5位的正整数(不转换为字符串),判断该数的位数,依次打印出万位、千位、百位、十位、个位的数字
c = int('54321')
w = 10000
length = 5
flag = False #开关量,打标记,假定没找到第一个非0
for i in range(5):
x = c // w
if not flag:
if x: #找到第一个非0 数字,从此开始打印
flag = True
else:
length -= 1
if flag:
print(x)
c = c % w #依次取模 4321 321 21 1
w = w // 10 #依次整除 1000 100 10 1
print('the length of the number is : ',length)
5、输入n个数字,求每次输入后的算数平均数
s = 0
n = 0
while True:
x = input('input a number:')
if x == '':
break
s += int(x)
n +=1
print('avg is : ',s / n)
6、打印一个边长为n的正方形
方法1:
n = 5
char = '*'
print(n * char)
for i in range(n-2):
print(char + ' '*(n-2) + char)
print(n * char)
方法2:
n = 5
char = '*'
for i in range(n):
if i == 0 or i == n-1:
print(char * n)
else:
print(char + ' '*(n-2) + char)
7、求100以内奇数的和
s = 0
for i in range(1,100,2):
s = s+i
print(s)
直接使用sum函数:
print(sum(range(1,100,2)))
8、根据学生成绩,打印出不同等级
x = int(input('enter a grade>>> '))
if x >= 90:
print('A')
elif x>=80:
print('B')
elif x>=70:
print('C')
elif x>=60:
print('D')
else:
print('E')
9、求1到5的阶乘之和
s = 0
x = 1
for i in range(1,6):
x = x * i
s += x
print(s)
10、求素数
素数,也就是质数:一个数只能被1和它自身整除
n = 12577
for i in range(2,n): #对这个数从2开始测试
if n % i == 0 : #能被整除就是合数
print(n,'is a composite number')
break
else:
print(n,'is a prime number')
三元表达式:是一个简单的表达式,一般只能写成一行,格式:
真值表达式 if 条件语句 else 假值表达式:
a = int(input(''))
- print('a>5') if a > 5 else print('a<5')
- s= '>5' if a > 5 else '<5'
print(s) - print( 'a>5' if a > 5 else 'a<5')
11、打印99乘法表
for i in range(1,10):
for j in range(1,i+1):
print(str(j) + '*' + str(i) + '=' + str(j*i),end='\t')
print()
for i in range(1,10):
for j in range(1,i+1):
line = '{}*{}={:<{}}'.format(j,i,j*i,1 if j==1 else 2)
print(line,end=' ')
print() #执行到这一句的时候,默认end='/n'换行
for i in range(1,10):
for j in range(1,i+1):
line = '{}*{}={:<{}}'.format(j,i,j*i,1 if j==1 else 2)
print(line,end='\n' if j==i else ' ')
用右对齐方式打印99乘法表:
for i in range(1,10):
line = ''
for j in range(i,10):
line += '{}*{}={:<{}}'.format(i,j,i*j,2 if j<4 else 3)
print('{:>60}'.format(line))
12、用户登录验证,错误3次则退出程序
username='admin'
password='admin123'
for i in range(3):
u = input('enter your username: ')
p = input('enter your password: ')
if u==username and p==password:
print('login sucessfully!')
break
else:
print('username or password error!')
name='admin'
passwd='admin123'
time=1
while time<=3:
n = input('enter your username : ')
p = input('enter your password : ')
if n == name and p == passwd:
print('login successfully! you name and passwd is : ' + name,passwd)
break
else:
print('username or passwd error!')
time +=1
13、打印菱形
for i in range(-3,4):
if i<0:
spaces=-i
else:
spaces=i
print(spaces * ' ' + '*'*(7-2*spaces))
n=7 #给定一个奇数
e=n//2
leadingchar=' '
char='*'
for i in range(-e,e+1):
print('{:^{}}'.format((n-2*abs(i))* char,n))
打印一个对顶三角形
n=7
e=n//2
for i in range(-e,e+1):
print('{:^{}}'.format('*' * (2 * abs(i) +1),n))
14、打印闪电
n=7
e=n//2
x=e+1
for i in range(-e,x):
if i<0:
print(' ' * -i + (x + i)* '*' )
elif i>0:
print(' ' * e + (x - i)* '*') #e值不变,在此处一直是3,x值一直为4
else:
print(n * '*')
15、打印100以内的斐波那契数列
print(0)
print(1)
a=0
b=1
while True:
c = a+b
if c >100:
break
a = b
b = c #每循环一次,b的值都重新赋给a,c的和都重新赋值给b
print(c)
16、求斐波那契数列的101项
a = 0
b = 1
print(0,0)
print(1,1)
index = 1
while True:
c = a+b
index +=1
print('index={},fib={}'.format(index,c))
a = b
b = c
if index==101:break
17、求10万内的所有素数
import datetime
start = datetime.datetime.now()
count=1
for x in range(3,100000,2): #舍弃掉所有的偶数,只计算奇数,减少一半的计算量
if x > 10 and x % 5 == 0:
continue
for i in range(3, int(x ** 0.5)+1, 2):
if x % i ==0:
break
else:
count += 1
delta = (datetime.datetime.now() - start).total_seconds()
print(delta,count)
个人博客: https://www.wzstyle.cn/