Python题库:简单循环
目录
输出0-9的数字
描述
在同一行内输出 0-9 中的前 n 个数字,输出的每个数字后跟一个空格。
输入
输入一个不大于10的正整数 n
输出
在同一行中输出 0~(n-1) 的数字
n=int(input("请输入一个不大于10的正整数:")) if n >= 10: print("输入错误") else: for i in range(0,n+1): print(i,end=" ")
用一行代码求和
描述
输入一个正整数 n ,计算从 1 到 n 各数字的和,要求用一行代码实现。
输入
一个正整数 n
输出
一个正整数
print(sum(range(1,int(input())+1)))
n=int(input("请输入一个正整数:")) sum=0 for i in range(1,n+1):
sum=sum+i
print(sum)
求x的y次幂(待做)
描述
在两行中分别输入x和y两个数,输出x的y次方。
输入格式
在两行中分别输入x和y两个数
输出格式
输出x的y次方
计算阶乘(待做)
描述
用户输入一个非负整数 n,计算并输出其阶乘。
n!=1×2×3×...×n.
输入格式
输入一个非负整数 n
输出格式
n 的阶乘 ====输入输出示例====
输入 输出 5 120 0 1
n=int(input("请输入一个正整数:")) s=1 for i in range(1,n+1):
s=s*i
print("输入:",n,"输出:",s)
阶乘求和(2022重点看)
描述
输入一个正整数n,计算 1!+2!+3!+...+n! 的和并输出。
输入
一个正整数n
输出
从1到n每个数的阶乘的和
# 计算1!+2!+3!+。。。+n! def sum_factorial(n): total, t = 1, 1 for i in range(2, n + 1): t = t * i total = total + t return total n = int(input()) print(sum_factorial(n))
n=int(input("请输入一个正整数:")) s=1 sum=0 for i in range(1,n+1):
s=s*i sum=sum+s
print("输入:",n,"输出:",sum)
求数列前n项的平方和
描述
现有数列:1,2,3,4,……,n,计算并输出其前n项的平方和,即求:
1×1+2×2+3×3+……+n×n的和。
输入
输入一个正整数 n
输出
数列前n项的平方和
n = int(input()) sum = 0 for i in range(1,n+1): sum = sum + i * i print(sum)
奇数数列求和(2022重点看)
描述
输入一个正整数 n,求数列1,3,5,……,(2n-1)的前n项的和。
输入格式
输入一个正整数 n
====输出格式====
数列的和
示例
输入:5 输出:25
数列求和
描述
用户输入一个小于10的正整数,求1 + 12 + 123 + 1234 + …… 的前n项的和
输入
一个正整数 n(测试数据保证小于10)
输出
数列的和
n = int(input("请输入小于10的数字:")) total =0 for i in range(1,n+1): #计算 第i个项item的值,如 123 item =1 for j in range(2,i+1): item *= 10 item += j print("当前的项",item) total += item #i =1 需要 加 1 #i =2 需要 加 12 #i =3 需要 加 123 print("所有项的和;",total)
分数序列求和
描述
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前n项之和,n由用户输入。
输入格式
输入一个正整数
输出格式
前n项和
输入输出示例
输入 输出 示例 1 5 8.391666666666667
代码
def f(n): a = 2.0 b = 1.0 total = 0 for i in range(1, n + 1): total += a/b a, b = a + b, a print("前20项和为:", total) 原文链接:https://blog.csdn.net/qq_44974888/article/details/123791921
正负交错数列前n项和
描述
1-1/2+2/3-3/5+4/8-5/13+...的前n项和,n由用户输入(n>0),结果用str.format()方法保留小数点后6位数字输出。
输入格式
一个正整数
输出格式
前n项的和
# 分析: # 分子规律为:1,1,2,3,4,5,...,除首个数字外是自然数 # 分母规律为:1,2,3,5,8,13...,除首个数字外,后面每个数是前面两个数的加和 # 符号规律:正负交替 # 项数:1,2,3,...n共n项 # previous, current = 1, 1 # 1 2 1 1 + 1 # previous, current = current, previous + current # previous, current = 1, 2 # 2 3 2 1 + 2 # previous, current = current, previous + current # previous, current = 2, 3 # 3 5 3 2 + 3 # previous, current = current, previous + current # previous, current = 3, 5 # ...... n = int(input()) result = 1 # 首项的值,作为累加初值 sign = -1 # 符号,第二项是负值, previous, current = 1, 1 # 分母数字的初值,从第二项开始符合这个规律 for i in range(1, n): # 从1到n-1遍历n-1次 previous, current = current, previous + current # 下一个数值是前面两个数的加和 result = result + sign * i / current # 注意分子是 i sign = -sign # 改变正负号 print('{:.6f}'.format(result))
# 1/1 #- 1/2 #+ 2/3 #- 3/5 #+ 4/8 #- 5/13 n =int(input("请输入正整数n:")) sum =1-1/2 son =0 fst_mom=1 snd_mom=2 for i in range(2,n+1): current_son = i current_mom =fst_mom + snd_mom current = current_son/current_mom if i%2 !=0: current = -current sum +=current fst_mom,snd_mom = snd_mom,current_mom print(sum)
2的n次方
描述
计算并输出 2 的 n 次方,n 由用户输入 。
输入格式
输入一个非负整数 n
输出格式
输出这个数的 n 次方
十进制整数转二进制(2022重点看)
描述
十进制整数转二进制的方法是:除以2,取出余数,商继续除以2,直到得到0为止,将取出的余数逆序即可得到对应的二进制数的各位。
例如:22转二进制的计算过程:
22 / 2 11 余0 11/2 5 余 1 5 /2 2 余 1 2 /2 1 余 0 1 /2 0 余 1
得到22的二进制是10110
输入格式
输入一个正整数
输出格式
输出对应的二进制数
n = int(input("请输入整数n:")) quotient=0 remainder=0 result='' while n>0: quotient = n//2 remainder = n%2 n =quotient result +=str(remainder) print(result[::-1])
统计学生平均成绩与及格人数
描述
编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。
输入格式
在一行中给出n个非负整数,即这n位学生的成绩,其间以空格分隔。
输出格式
按照以下格式输出:
average = 成绩均值
百钱买百鸡A
描述
我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,如果要求鸡翁、鸡母、鸡雏都不为零,问鸡翁、鸡母、鸡雏各几何?
输入格式
该题目没有输入
输出格式
每行输出一组结果,按鸡翁数、鸡母数、鸡雏数的顺序输出,数字之间用空格分隔;
如果有多组解时,按鸡翁数量由少到多输出;
count = 及格人数