编程题
(1)输人直角三角形两个直角边长度ab,求斜边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)打印出由1234个数字构成互不相似且无反复数字三位数。
  程序分析:可填在百位、十位、个位数字所有是1234。构成所有排列后再去掉不满足条件排列。
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个月起每月所有生一对兔子,小兔子长到第三个月后每月又生一对兔子,假如兔子所有不死,问每月兔子总数为多少?
  程序分析:兔子规律为数列11, 23581321..
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小时内删除。