Python【每日一问】25

问:

【基础题】:利用条件运算符的嵌套来完成此题:学习成绩 >=90 分的同学用 A 表示,60-89 分之间的用 B 表示,60 分以下的用 C 表示。

【提高题】:求 s=a + aa + aaa + aaaa + aa...a 的值 , 其中 a 是一个 数 字 。 例如 2+22+222+2222+22222 (此时,共有 5 个数相加) ,具体几个数相加由键盘控制。

答:

【基础题】:利用条件运算符的嵌套来完成此题:学习成绩 >=90 分的同学用 A 表示,60-89 分之间的用 B 表示,60 分以下的用 C 表示。

方法1:

score = int(input("请输入成绩:"))
if score < 60:
    print("C")
elif score < 90:
    print("B")
else:
    print("A")

方法2:

def performance():
    change = int(input("请输入成绩:"))
    if change >= 90:
        print("A")
    elif change > 60:
        print("B")
    else:
        print("C")
​
​
if __name__ == "__main__":
    performance()

【提高题】:求 s=a + aa + aaa + aaaa + aa...a 的值 , 其中 a 是一个 数 字 。 例如 2+22+222+2222+22222 (此时,共有 5 个数相加) ,具体几个数相加由键盘控制。

方法1:

def get_sum(n: str, num: str) -> None:
    L = [n * i for i in range(1, int(num) + 1)]
    print('{} = {}'.format(' + '.join(L),sum(map(int, L))))
​
​
n = input("请输入数字: ")
num = input("请输入个数: ")
get_sum(n, num)

方法2:

a = int(input("请输入任意数字:"))
n = int(input("请输入有几个数相加:"))
​
sum = 0
c = a
​
for i in range(1, n+1):
    sum = sum + c
    c = c * 10 + a
​
print(sum)

方法3:

def s1():
    num = int(input("相同的数字:"))
    num2 = int(input("重复次数:"))
​
    sum1 = 0
    num3 = num
    for i in range(num2):
        sum1 = sum1 + num3
        num3 = num3 * 10 + num
    print(sum1)

方法4:

def numbersum(a, n):
    return a * (int('1' * n) * n - int(((9 * n - 10) * (10 ** n) + 10 ) / 81))
​
​
a = int(input("请输入数字:"))
n = int(input("请输入个数:"))
​
print("结果 :%d" % numbersum(a, n))

 

原文地址:https://www.cnblogs.com/ElegantSmile/p/10861093.html