#输入一个百分制的成绩,要求输出的成绩等级为ABCDE,其中90-100分为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
#要求:1.用if语句实现。2.输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
a = int(input("请输入成绩:"))
if 90<=a<=100:
print("等级为A")
elif 80<=a<=89:
print("等级为B")
elif 70<=a<=79:
print("等级为C")
elif 60<=a<=69:
print("等级为D")
elif 0<=a<=59:
print("等级为E")
else:
print("输入有误")
# 篮球比赛是高分的比赛,领先优势可能很快被反超。作为观众,希望能在球赛即将结束时,就提早知道领先是否不可超越。
# 体育作家Bill James发明了一种算法,用于判断领先是否“安全”。
# 算法描述:
# 获取领先的分数 ,减去3分;
# 如果目前是领先队控球,则加0.5;否则减0.5(数字小于0则变成0);
# 计算平方后的结果;
# 如果得到的结果比当前比赛剩余时间的秒数大,则领先是“安全”的。
# 请编写程序实现上述算法的功能,并给出运行结果。
t = int(input("请输入剩余时间:"))
s = int(input("请输入领先分数:"))
x = input("目前是领先队控球吗?请输入yes或no")
if x == "yes":
if (s - 3 + 0.5)**2>t:
print("安全")
else:
print("不安全")
if x == "no":
if (s - 3 - 0.5)**2>t:
print("安全")
else:
print("不安全")
# 小明单位发了100元的购物卡,小明到超市买三类洗化用品:洗发水(15元)、香皂(2元)、牙刷(5元)。要把100元正好花掉,可有哪些购买组合?
money=100
n=money//15
for i in range(n,-1,-1):
m=(money-i*15)//5
for j in range(m,-1,-1):
k=(money-i*15-j*5)//2
if (money-i*15-j*5)%2==0:
print(f"可选择的购买组合:\t\t购买洗发水 {i} 瓶,香皂 {j} 块,牙刷 {k}个。")
# 设计一个猜数游戏。首先由计算机产生一个[1,100]之间的随机整数,然后由用户猜测所产生的随机数。
# 根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won !”,游戏结束。
# 用户最多可以猜7次,如果7次均未猜中,则显示“You lost !”,并给出正确答案,游戏结束。
# 游戏结束后,询问用户是否继续游戏,选择“Y”则开始一轮新的猜数游戏;选择“N”则退出游戏。
import random
n = random.randint(1,100)
def a():
for i in range(7):
x = int(input("请输入数字:"))
if x==n :
print("You won!")
break
elif x>n:
print("High")
else:
print("Low")
if x != n:
print("You lose!", f"答案是{n}")
c = input("想再来一次吗?是的话请输入Y,否则请输入N退出游戏")
if c=="Y":
a()
else:
print("游戏结束")
a()
# 编写函数,该函数可以输入任意多个数,函数返回输出所有输入参数的最大值、最小值和平均值。
i= []
def a():
try:
b = int(input("请开始输入整数,输入end之后将开始计算"))
i.append(b)
a()
except:
return print(max(i),min(i),sum(i)/len(i))
a()
# 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?
i = 2
for a in range(7):
i=(i+1)*2
print(i)
# 建立一个包含10个字符的字符串A,然后对该字符串进行如下操作:
# (1)计算输出字符串的长度;
# (2)从第1个字符开始,每间隔2个字符取1个字符,组成子字符串B;
# (3)将字符串A倒过来重新排列产生新的字符串C;
# (4)将字符串A的前4个字符与字符串C的后5个字符进行组合,产生字符串D。
A = "ipandafans"
print("字符串的长度为:",len(A))
print(f"B字符串为:{A[::3]}")
print(f"C字符串为:{A[::-1]}")
print(f"D字符串为:{A[:4:]+A[5::]}")
# 数字加密游戏:编程程序,从键盘任意输入1个4位数,将该数字中的每位数与7相乘,然后取乘积结果的个位数对该数字进行替换,最后得到一个新的4位数。
a = input("请输入一个四位数:")
b1=str(int(a[0])*7)
b2=str(int(a[1])*7)
b3=str(int(a[2])*7)
b4=str(int(a[3])*7)
print("加密后的四位数是:",b1[-1],b2[-1],b3[-1],b4[-1])
# 企业发放的奖金根据利润提成。
# 利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
# 20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;
# 60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
m = int(input("请输入公司当月利润:"))
if m<= 10 :
print(f"奖金总数为{0.1*m}万元")
elif 10<=m<=20:
print(f"奖金总数为{1+0.075*(m-10)}万元")
elif 20<=m<=40:
print(f"奖金总数为{3.5+0.05*(m-20)}")
elif 40<=m<=60:
print(f"奖金总数为{4.5+0.03*(m-40)}")
elif 60<=m<=100:
print(f"奖金总数为{5.1+0.015*(m-60)}")
elif m>=100:
print(f"奖金总数为{5.7+0.01*(m-100)}")
# 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
import math
for a in range(-100,1000000):
b=math.sqrt(a + 268)
c=math.sqrt(a + 100)
if b%1==0 and c%1==0:
print(a)
#标准解法:
#
# 假设该数为 x。
# 1、则:x + 100 = n2, x + 100 + 168 = m2
# 2、计算等式:m2 - n2 = (m + n)(m - n) = 168
# 3、设置: m + n = i,m - n = j,i * j =168,i 和 j 至少一个是偶数
# 4、可得: m = (i + j) / 2, n = (i - j) / 2,i 和 j 要么都是偶数,要么都是奇数。
# 5、从 3 和 4 推导可知道,i 与 j 均是大于等于 2 的偶数。
# 6、由于 i * j = 168, j>=2,则 1 < i < 168 / 2 + 1。
# 7、接下来将 i 的所有数字循环计算即可。
for i in range(1,85):
if 168 % i == 0:
j = 168 / i
if i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0 :
m = (i + j) / 2
n = (i - j) / 2
x = n * n - 100
print(x)