lisp编程求100以内勾股数_python编程题(⾯试会遇到的
哟!)
1、
【参考代码】
x=eval(input("请输⼊所花钱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
print("实际应付⾦额{:.2f}元".format(y))
2、 编写计算分段函数的程序:
输⼊x的值,输出函数y的值
【参考代码】
import math
x=eval(input("请输⼊x的值:"))
if x>=5:
y=math.sin(x)+math.sqrt(x**2+1)
elif x>=0:
p(x)+math.log(x,5)+x**(1/5)
else:
s(x)-x**3+3*x
print("分段函数y的值是:",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=eval(input("请输⼊⼀个⾃然数:"))
tag=True
for i in range(2,n):
if n%i==0:
tag=False
break
m="是素数" if tag else "不是素数"
print(n,m)
5、编程求解⼀元⼆次⽅程
,⽅程中的
系数从键盘输⼊(提⽰:分⽀嵌套)
注解:
⼤部分情况下是根据求根公式来求解,即:判别式:
利⽤⼀元⼆次⽅程根的判别式(
)可以判断⽅程的根的情况。
⼀元⼆次⽅程
的根与根的判别式 有如下关系:
①当
时,⽅程有两个不相等的实数根;
②当
时,⽅程有两个相等的实数根;
③当
时,⽅程⽆实数根,但有2个共轭复根。【参考代码】
import math
a=eval(input("A="))
b=eval(input("B="))
c=eval(input("C="))
delta=b**2-4*a*c
if a==0:
if b==0:
print("⽅程⽆意义!!")
else:
x=-c/b
print("⽅程有单根:",x)
else:
if delta>0:
q=math.sqrt(delta)/(2*a)
p=-b/(2*a)
x1=p+q
x2=p-q
print("两个不相等的实根",x1,x2)
elif delta==0:
p=-b/(2*a)
print("两个相等的实根:",p)
else:
print("⽅程⽆解!")
6、编程产⽣菲波拉契数列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)
编程分别计算100以内(含100)奇数与偶数的和。
【参考代码】
s1,s2=0,0
for i in range(1,101):
if i%2==0:
s2=s2+i
else:
s1=s1+i
print("奇数的和是:{},偶数的和是:{}".format(s1,s2))
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项的和是:",sum)
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}".format(s,x0))
11、编写程序,运⾏后⽤户输⼊4位整数作为年份,判断其是否为闰年。
如果年份能被400整除,则为闰年;如果年份能被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次反弹多⾼?
【参考代码】
python生成1到100之间随机数s=100
h0=100
for i in range(1,10):
h1=h0/2
s=s+2*h1
h0=h1
print("⼩球⼀共经过了{:.2f}⽶,第10次的⾼度{:.2f}⽶".format(s,h0))
13、求阶乘:从键盘输⼊任意⼀个正整数,编程计算该数的阶乘如:输⼊5,阶乘结果120 。