1.描述
在同一行内输出 0-9 中的前 n 个数字,输出的每个数字后跟一个空格。
输入格式
输入一个不大于10的正整数 n
输出格式
在同一行中输出 0~(n-1) 的数字
示例 1
输入:5
输出:0 1 2 3 4
n=eval(input())
for i in range(0,n):
print(i,end=' ')
2.描述
输入一个正整数 n
,计算从 1
到 n
各数字的和,要求用一行代码实现。
输入
一个正整数 n
输出
一个正整数
示例
输入:100
输出:5050
# 通过range 函数生成1到输入的数的整数序列
# 通过sum 函数对序列求和
print(sum(range(1,int(input())+1)))
3.描述
现有数列:1,2,3,4,……,n,计算并输出其前n项的平方和,即求:
1×1+2×2+3×3+……+n×n的和。
输入
输入一个正整数 n
输出
数列前n项的平方和
示例
输入
3
输出
14
n=int(input())
sum=0
for i in range(1,n+1):
sum=sum+i*i
print(sum)
4.描述
在两行中分别输入x和y两个数,输出x的y次方。
输入格式
在两行中分别输入x和y两个数
输出格式
输出x的y次方
输入输出示例 输入 输出
示例 1
输入:
2
5
输出:
32
x=eval(input())
y=eval(input())
print(pow(x,y))
5.描述
入一个正整数n,计算 1!+2!+3!+...+n! 的和并输出。
输入
一个正整数n
输出
从1到n每个数的阶乘的和
示例
输入:5
输出:153
n=eval(input())
sum,dight=0,1
for i in range(1,n+1):
dight=dight*i
sum=sum+dight
print(sum)
方二:函数式
def num(n):
t=1
for i in range(1,n+1):
t=i*t
return t
def sut(n):
s=0
for i in range(1,n+1):
s=s+num(i)#这里输入的是i,不是n
return s
n=int(input())
print(sut(n))
6.描述
用户输入一个小于10的正整数,求1 + 12 + 123 + 1234 + …… 的前n项的和
输入
一个正整数 n(测试数据保证小于10)
输出
数列的和
示例
输入:5
输出:13715
n=int(input())
dight,s=0,0
for i in range(1,n+1):
dight=dight*10+i
s=s+dight
print(s)
7.描述
输入一个正整数 n,求数列1,3,5,……,(2n-1)的前n项的和。
输入格式
输入一个正整数 n
输出格式
数列的和
示例
输入:5
输出:25
n=eval(input())
s=0
for i in range(1,n+1):
s=s+(2*i-1)#不能写成2i
print(s)
8.描述
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 n
项之和, n
由用户输入。
输入格式
输入一个正整数
输出格式
前n
项和
示例
输入:5
输出:8.392
n=eval(input())
a,b=2,1
sum=0
for i in range(1,n+1):
sum=sum+a/b
a,b=a+b,a
print(round(sum,3))
#round函数输出小数,输出是三位小数,
#而且分子除以分母大多数情况是分数
9.描述
1-1/2+2/3-3/5+4/8-5/13+...的前n项和,n由用户输入(n>0),结果用str.format()方法保留小数点后6位数字输出。
输入格式
一个正整数
输出格式
前n项的和
示例 1
输入:12
输出:0.828448
# 分析:
# 分子规律为:1,1,2,3,4,5,,除首个数字外是自然数
# 分母规律为:1,2,3,5,8,13,除首个数字外,后面每个数是前面两个数的加和
# 符号规律:正负交替
n=eval(input())
sum,sign=1,-1
a,b=1,1
for i in range(1,n):#第一位数给出了,n+1减1为n
a,b=b,a+b
sum=sum+sign*(i/b)
sign=-sign
print("{:.6f}".format(sum))
10.描述
十进制整数转二进制的方法是:除以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
输入格式
输入一个非负整数
输出格式
输出对应的二进制数
示例
输入:1999
输出:11111001111
num=eval(input())
n=''
if num==0:
n='0'
while num!=0:
n=n+str(num%2)#余数转换为字符串
num=num//2
print(n[::-1])# 逆序输出字符串
11.描述
编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。
输入格式
在一行中给出n个非负整数,即这n位学生的成绩,其间以空格分隔。
输出格式
按照以下格式输出:
average = 成绩均值 count = 及格人数
示例
输入:
77 54 92 73 60
输出:
average = 71.2
count = 4
score = list(map(int, input().split())) # 通过map()和list()函数把用户输入转化成int列表
average = sum(score) / len(score) # 用总和除以数量得到平均分
count = len(list(x for x in score if x >= 60)) # 通过列表推导式得到大于60分的列表然后用len()函数得到数量
print("average = {}".format(average))
print("count = {}".format(count))
12.描述
我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,如果要求鸡翁、鸡母、鸡雏都不为零,问鸡翁、鸡母、鸡雏各几何?
输入格式
该题目没有输入
输出格式
每行输出一组结果,按鸡翁数、鸡母数、鸡雏数的顺序输出,数字之间用空格分隔;
如果有多组解时,按鸡翁数量由少到多输出;
示例
输出:
x xx xx
x xx xx
xx x xx
for cock in range(1,101):
for hen in range(1,101):
for chicken in range(1,101):
if chicken%3==0:
if cock + hen + chicken == 100 and 5 * cock + 3 * hen + chicken // 3 == 100:
print(cock,hen,chicken)
小编畅谈:
小编发布的作品都是适合初学者学习,如果你是初学者,可以和小编一起学习,在这里我每天都会发Python的基础知识,以及相关的代码。如果觉得小编写的还不错,关注,点赞,收藏。如果有什么错误之处,请多多指教。我会虚心接受。如果有什么地方不懂,可以私信小编,我会第一时间回复您。