编程题
(1)输人直角三角形两个直角边长度a、b,求斜边c长度。
from math import *
a=float(input("请输入斜边 1 长度:")) #输入实数
b=float(input("请输入斜边 2 长度:")) #输入实数
c=a*a+b*b #计算,得到是斜边平方
c=sqrt(c) #开方,得到是斜边长
print("斜边长为:",c) #显示,一项是字符串,一项是 c 表达斜边长
编程语言有哪几种类(2)输人两个数,求它们最大数。
a=int( input("请输入第一种数:") )
b=int( input("请输入第二个数:") )
max_num=a
if max_num<b:
max_num=b
print('最大数是:',max_num)
(4)一球从100米高度自由落下,每次落地后反跳回原高度二分之一;再落下,求它在第10次落地时,共通过多少米?第10次反弹多高?
Sn = 100.0
Hn = Sn / 2
for n in range(2,11):
Sn += 2 * Hn
Hn /= 2
print ('Total of road is %f'%Sn)
print ('The tenth is %f meter'%Hn)
(5)将一种列表逆序输出。
a = [9,6,5,4,1]
N = len(a)
print (a)
for i in range(len(a)//2):
a[i],a[N - i - 1] = a[N - i - 1],a[i]
print (a)
(6)求一种3X3矩阵对角线元素之和。程序分析:运用双重for循环控制输人二维数组,再将a[i][门]累加后输出。
a = []
sum = 0.0
for i in range(3):
a.append([])
for j in range(3):
a[i].append(float(input("input num:\n")))
for i in range(3):
sum += a[i][i]
print (sum)
(7)打印出由1、2、3、4个数字构成互不相似且无反复数字三位数。
程序分析:可填在百位、十位、个位数字所有是1、2、3、4。构成所有排列后再去掉不满足条件排列。
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if( i != k ) and (i != j) and (j != k):
print (i,j,k)
(10)编写函数,鉴定个数字与否为素数,是则返回字符串YES,否则返回字符串NO,并编写主程序调用该函数。
x=int(input('请输入一种不小于 1 自然数:'))
import math
def IsPrime(a):
n = int(math.sqrt(a)+1)
for i in range(2,n):
if a%i==0:
return 'No'
else:
return 'Yes'
print(IsPrime(x))
(11)古典问题:有一对兔子,从出生后第3个月起每月所有生一对兔子,小兔子长到第三个月后每月又生一对兔子,假如兔子所有不死,问每月兔子总数为多少?
程序分析:兔子规律为数列1,1, 2,3,5,8,13,21…..
f1 = 1
f2 = 1
for i in range(1,21):
print ('%12d %12d' % (f1,f2))
if (i % 2) == 0:
print ('')
f1 = f1 + f2
f2 = f1 + f2
(12)两个变量互换值。
def exchange(a,b):
a,b = b,a
return (a,b)
x = 10
y = 20
print('x = %d,y = %d' % (x,y))
x,y = exchange(x,y)
print('x = %d,y = %d' % (x,y))
(13)有5个人坐在一起,问第五个人多少岁?她说比第4个人大2岁。问第4个人岁数,她说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一种人大两岁。最终问第一种人,她说是10岁。请问第五个人多大?
def age(n):
if n == 1: c = 10
else: c = age(n - 1) + 2
return c
print (age(5))
(14)输出第10个斐波那契(Fibonacci)数列。
无穷数列1,1,2,3,5,8,13,21 ,被称为斐波那契数列。它可以递归地定义为:
n=0
n= 1
F(n-1)+F(n-2) n> 1
#措施1
def fib(n):
a,b = 1,1
for i in range(n-1):
a,b = b,a+b
return a
# 输出第10个斐波那契数列
print (fib(10))
#措施2:使用递归
def fib(n):
if n==1 or n==2:
return 1
return fib(n-1)+fib(n-2)
# 输出第10个斐波那契数列
print (fib(10))
1、简述python特点:
Python具有简朴易学,免费、开源,可扩展性、可嵌人性和可移植性强,代码规范、代
码具有很好可读性,Python原则库很丰富,支持命令式编程、面向对象程序设计、图效式
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论