1.if语句实例:输入一个分数,给出五级记分制的成绩
a=float(input("输入所得分数"))
if a >= 90:
print("A")
elif a>=80:
print("B")
elif a>=70:
print("C")
elif a>=60:
print("D")
else:
print("E")
2. if语句实例:输入一个分数,用一条if语句给出五级记分制的成绩
score=float(input("输入所得分数"))
grade='A' if score>=90 else 'B' if score>=80 else 'C' if score>=70 else 'D' if score>=70 else 'E'
print(grade)
3. 分别使用while循环和for循环计算1到100的和
i=s=0
while i<100:
i+=1
s+=i
print(s)
s=0
for i in range(1,101):
s+=i
print(s)
4. 打印九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print(f'{i}x{j}={i*j}',end='\t')
print()
5.打印斐波那契数列 1 1 2 3 5 8 13....打印36项,每行打印6个
f0,f1=1,1
print(f0,end='\t')
print(f1,end='\t')
for i in range(2,36):
f2=f0+f1
if i%6 == 0:print()
print(f2,end='\t')
f0,f1=f1,f2
else:
print("打印完成")
6.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
a,b,c,d=0,0,0,0
s=input("输入一行字符")
for i in range(0,len(s)):
if s[i].isalpha(): a+=1
elif s[i].isdigit(): b+=1
elif s[i]==' ': c+=1
else: d+=1
print(a,b,c,d)
7.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
i=100
j=0
sum=0
for j in range(0,11):
sum+=(i*2)
i=i/2
if j==10:
print("共经过"+str(sum-100)+"米。")
print("第十次反弹"+str(i)+"米")
8.输入两个年份,输出这两个年份(含)之间的闰年
a=int(input("请输入第一个年份:"))
b=int(input("请输入第二个年份:"))
i=0
for i in range(a,b+1):
if i %4==0 & i %100 ==0 & i % 400 ==0:
print(i,end=" ")
9.输入某年某月某日,判断这一天是这一年的第几天?
a=int(input("请输入年份:"))
b=int(input("请输入月份:"))
c=int(input("请输入某一天:"))
sum=0
sum1=0
if b > 12 or b <1:
print("请输入正确月份!")
elif b==1:
sum = 0
elif b==2:
sum = 31
elif b==3:
sum= 59
elif b==4:
sum = 90
elif b==5 :
sum = 120
elif b==6:
sum = 151
elif b==7 :
sum = 181
elif b==8:
sum = 212
elif b==9 :
sum == 243
elif b==10 :
sum = 273
elif b==11:
sum =304
elif b==12:
sum = 334
if c <0:
print("请输入正确日期!")
elif a % 4==0:
if b ==2:
if c> 29:
print("请输入正确日期!")
else:
sum1 = sum+1+c
print("这是"+str(a) + "年的第"+str(sum1)+"天" )
elif b==2:
if c>28:
print("请输入正确日期!")
elif a % 4 == 0:
sum1 = sum + 1 + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
else:
sum1 = sum + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
if b in range(1,12,2) :
if c > 31:
print("请输入正确日期!")
elif a % 4 == 0:
sum1 = sum + 1 + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
else:
sum1 = sum + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
if b in range(4,13,2):
if c > 30:
print("请输入正确日期!")
elif a % 4 == 0:
sum1 = sum + 1 + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
else:
sum1 = sum + c
print("这是"+str(a) + "年的第"+str(sum1)+"天")
10.阶乘计算。输入n,计算1+2!+3!+……n!的结果
a=int(input("请输入一个数字N:"))
sum=0
b=1
for i in range(1,a+1):
b=b*i
sum+=b
if i == a:
print(sum)
11.输入两个大于2的正整数,输出最大公约数和最小公倍数
a=int(input("请输入一个大于二的整数:"))
b=int(input("请输入另一个大于二的整数:"))
def gcd(a,b):
if b == 0:
return a
return gcd(b, a%b)
print("最大公约数为"+str(gcd(a,b)))
def lcm(a,b):
gcd = lambda a, b: a if b == 0 else gcd(b, a % b)
return a*b//gcd(a,b)
print("最小公倍数为"+str(a*b//gcd(a,b)))
12.输出某个正整数的所有序列:序列的每个元素相邻且和为该正整数。阅读下面的代码与课本上第88页的例题进行比较和理解。
import math
x=100
y=[]
for i in range(2,x//2):
a,b=math.modf(x/i)
if a and a-0.5:#如果a不等于0并且不等于0.5,肯定没有i个连续的整数和是x
continue
if a==0 and i%2==0:#如果a==0并且i被2整除,肯定没有i个连续的整数和是x
continue
if a==0:#如果x整除i,并且i不为偶数,则连续奇数个整数和为x,找出start 和 end
start=x//i-i//2
end=start+i+1
elif a==0.5:#如果x除i是0.5,则连续偶数个整数和为x,找出start 和 end
start=x//i-i//2+1
end=start+i
if start<=0:#排除start不符合要求的情况
continue
y.append(range(start,start+i))
for i in y:
print(*i)
else:
print("已经没有满足条件的序列")
import math
def f():
x=100
y=[]
for i in range(2,x//2):
a,b=math.modf(x/i)
if a and a-0.5:#如果a不等于0并且不等于0.5,肯定没有i个连续的整数和是x
continue
if a==0 and i%2==0:#如果a==0并且i被2整除,肯定没有i个连续的整数和是x
continue
if a==0:#如果x整除i,并且i不为偶数,则连续奇数个整数和为x,找出start 和 end
start=x//i-i//2
end=start+i+1
elif a==0.5:#如果x除i是0.5,则连续偶数个整数和为x,找出start 和 end
start=x//i-i//2+1
end=start+i
if start<=0:#排除start不符合要求的情况
continue
y.append(range(start,start+i))
for i in y:
print(*i)
else:
print("已经没有满足条件的序列")
%time f()