python编程题
-
1
、
【参考代码】
x=eval(inp
ut(
请输入所花钱
x
:
if x>=3000:
y=0.7*x
elif x>=2000:
y=0.8*x
elif x>=1000:
y=0.9*x
else:
y=x
pri
nt(
实际应付金额
{:.2f}
元<
/p>
2
、
编写计算分段函数的程序:
sin
x
x
2
1
,
x
5
x
y
e
x
log
5
5
x
,
0
x<
/p>
5
cos<
/p>
x
x
3
3
x
,
x
0
输入
x
的值,输出函数
y
的值<
/p>
【参考代码】
import math
x=eval(input(
请输入
x
的值:
p>
if x>=5:
y=(x)+(x**2+1)
elif x>=0:
y=(x)+(x,5)+x**(1/5)
else:
y=(x)-x**3+3*x
print(
分段函数
y
的值是:
3
、编写程序,实现分段函数计算,如下表所示。当
x=7
,输出
y
的值
【参考代码】
x = input('Please input x:')
x = eval(x)
if x<0 or x>=20:
print(0)
elif 0<=x<5:
print(x)
elif 5<=x<10:
print(3*x-5)
elif
10<=x<20:
print(0.5*x-2)
4
、从键盘上任意输入一个自然数,判断数是否素数。如输入
11
,则显示:
11
是素数
【参考代码】
n=e
val(input(
请输入一个自然数:
tag=True
for i in range(2,n):
if n%i==0:
tag=False
break
m=
p>
是素数
不是素数
<
/p>
print(n,m)
2
5
、编程求解一元二次方程
ax
p>
bx
c
0
,
方程中的
a
p>
,
b
,
c
系数从键盘输入(提示:分支嵌
套)
注解:
大部分情况下是根据求根公式来求解,即:
判别式:
利用一元二次方程根的判别式(
一元二次方程
)可以判断方程的
根的情况。
的根与根的判别式
有如下关系:
①当
时,方程有两个不相等的实数根;
②当
时,方程有两个相等的实数根;
③当
时,方程无实数根,但有
2
个共轭复根。
【参考代码】
import
math
a=eval(input(
b=eval(inp
ut(
c=eval(input(
delta=b**2-4
*a*c
if a==0:
if b==0:
print(
方程无意义!!
else:
x=-c/b
print(
方程有单根:
else:
if delta>0:
q=(delta)/(2*a)
p=-b/(2*a)
x1=p+q
x2=p-q
print(
两个不相等的实根
elif delta==0:
p=-b/(2*a)
print(
两个相等的实根:
else:
print(
方程无解!
6
、编程产生菲波拉契数列
< br>20
项,
例如:
0 1 1 2 3 5 8
13 21
……
【参考代码】
x0,x1=0,1
for n in range(0,20):
print(x0,end=
x0,x1=x1,x0+x1
7
、猴子摘桃
猴子第一天摘了若干个桃子,当天吃了一半,还不过隐,有多吃了一个,第二天早上又将
剩下的桃子吃了一半,又多吃了一个,以后每天早上都吃了前一天剩下的一半零一个,到
第
10
天早上想再吃时,见只剩下一个桃子,问第一天共摘了
多少个桃子
【参考代码】
x=1
for d in range(0,9):
x=(x+1)*2
print(x)
8
、编程分别计算
< br>100
以内
(
含
100)
奇数与偶数的和。
【参考代码】
s1,s2=0,0
for i in range(1,101):
if i%2==0:
s2=s2+i
else:
s1=s1+i
print(
奇数的和是:
{},
偶数的和是:
p>
{}
9
、编程计算前
30
项的和:
s=1+(1+2)+(1+2+3)+(1+
2+3+4)+
…
+(1+2+3+4+
…
+n)
【参考代码】
t,sum=0,0
for i in
range(1,31):
t = t + i
sum = sum + t
print(
多项式前
30
项的和是:
p>
10
、一个富翁试图与陌生人做一笔换钱生意,换钱规则为:陌生人
每天给富翁
10
万元钱,
直到满一个月
(30
天
)
;
而富翁第一天给陌生人
1
分钱,
第
2
天给
2
分钱,
第
3
天给
4
分钱,
…,
富翁每
天给穷人的钱是前一天的两倍,直到满一个月,分别显示富翁给陌生人的钱和陌生
人给富
翁的钱各是多少?
【参考代码】
x0=0.01
s =0
for
i in range(1,31):
s=s+100000
x1=2 * x0
x0=x1
print(
富翁赚的钱
{:.2f}
,陌生人赚的钱
{:.2f}
11
、编写程序,运行后用户输入
4
位整数作为年份,判
断其是否为闰年。
如果年份能被
40
0
整除,则为闰年;如果年份能被
4
整
除但不能被
100
整除也为闰年。
【参考代码】
x =
input('Please input an integer of 4 digits meaning
the year:')
x = eval(x)
if
x%400==0 or (x%4==0 and not x%100==0):
print('Yes')
else:
print('No')
12
、一
小球从
100
米高度自由落下,每次落地后反跳回原高度的一半
;再落下,求它在
第
10
次落地时,共经过多少米?第
10
次反弹多高?<
/p>
【参考代码】
s=100
h0=100
for
i in range(1,10):
h1=h0/2
s=s+2*h1
h0=h1
print(
小球一共经过了
{:.2f}
米
,
第
10
次的高度
{:.2f}
米
13
、求阶乘
:从键盘输入任意一个正整数,编程计算该数的阶乘
如:输入
5
,阶乘结果
120
。
【参考代码】
n=eval(inp
ut(
请输入一个正整数:
p=1
for i in range(1,n+1):
p=p*i
print(
14
、
p>
【参考代码】
for i in range(1,10):
for j in range(1,i+1):
print(
print()
15
、
【参考代码】
for a in
range(0,21):
for b in range(0,34):
for c in range(0,101):