(1)请编写一个程序,能接收用户输入的一个复数的实部和虚部,输出其复数表示形式,并求其模。
import math
x=input('输入复数的实部和虚部:').split(',')
y=[]
for i in x:
y.append(int(i))
m=tuple(y)
print(complex(m[0],m[1]))
p=math.sqrt(m[0]**2+m[1]**2)
print('这个复数的模长{0:.3f}'.format(p))
(1)运行结果
(2)编写一个程序,根据输入的3个成绩,计算平均分。
a=int(input('输入第一个数:'))
b=int(input('输入第二个数'))
c=int(input('输入第三个数:'))
n=(a+b+c)/3
print('三个数的平均数:'+format(n))
(2)运行结果
(3)输出1000以内的素数以及这些素数之和。
x=[1,2,3] for i in range(4,1001,1): for m in range(2,int(i**0.5+1),1): if i%m ==0: break if i%m!=0: x.append(i) print(x) print(sum(x))
(3)运行结果
(4)按公式s=12+22+32+...+n2,求累计加和,s不超过1000的最大项数n,程序运行结果如下所示:
n s
1 1
2 5
3 14
4 30
......
累计和不超过1000的最大项数是n=13
a=0
print('n s')
for i in range(1,100):
n=(i**2)
a+=n
if a<=1000:
print('{} {}'.format(i,a))
else:
break
print('累计和不超过1000的最大项数是n={}'.format(i-1))
(4)运行结果
第二部分 Python函数(1)编写函数,求出一个数除1和自身以外的因子。从键盘输入一个数,调用该函数输出除1和它自身以外的所有因子。
def edu(m):
for i in range(2,m,1):
if m%i==0:
print(i)
x=int(input('请输入一个整数'))
edu(x)
(1)运行结果
(2)编写两个函数,分别求两个整数的最大公约数和最小公倍数,在主函数调用这两个函数,并输出结果。两个整数由键盘输入。
def gys(m,n):
min1=min(m,n)
zgys=1
for i in range(1,min1+1):
if m%i==0 and n%i==0:
zgys=i
return zgys
def gbs(m,n):
zgys=gys(m,n)
zgbs=m*n/zgys
return zgbs
m=int(input('请输入第一个数:'))
n=int(input('请输入第二个数:'))
print('最大公约数为{0:d}'.format(gys(m,n)))
print('最小公倍数为{0:.0f}'.format(gbs(m,n)))
(2)运行结果
(3)编写程序,利用元组作为函数的返回值,求系列类型的最大值、最小值和元素个数,并编写测试代码。假设测试数据分别为:
S1=[9,7,8,3,2,1,55,6]
S2=[“apple”,“pear”,“melon”,“kiwi”]
S3=”TheQuickBrownFox”。
程序运行效果如下所示:
List =[9,7,8,3,2,1,55,6]
最大值=55,最小值=1,元素个数=8
List =[“apple”,“pear”,“melon”,“kiwi”]
最大值= pear,最小值= apple,元素个数=4
List =“TheQuickBrownFox”
最大值=x,最小值=B,元素个数=16
提示:
函数形参为系列类型,返回值形如“(最大值,最小值,元素个数)”
def emo(x):
i=max(x)
j=min(x)
k=len(x)
print('最大值%s'%i)
print('最小值%s'%j)
print('元素个数是[0]'.format(k))
return i,j,k
s1=[9,8,7,3,2,1,55,6]
s2=['apple','pear','melon','kiwi']
s3='TheQuickBrownFox'
q=emo(s1)
print(q)
w=emo(s2)
print(w)
e=emo(s3)
print(e)
(3)运行结果
第三部分 Python面向对象程序设计(1)设计一个Circle类来表示园,这个类包含圆的半径以及求周长和面积的函数。再使用这个类创建半径为1~100的圆,并计算出相应的周长及面积。
from math import pi
class Circle(object):
def _init_(self,a):
self.a=a
def edu(self):
print('面积为{0:f},周长为{1:f}'.format((pi*a*a),(2*pi*a)))
print('请输入圆的半径:')
x=Circle()
a=int(input())
x.edu()
(1)运行结果
(2)编写程序并测试,有一个汽车类Vehicle,类中的私有数据成员为车轮个数wheels和车重weight;小车类Car是汽车类vehicle派生类,其中包含载客人数passenger_load,默认4人;卡车类Truck是汽车类vehicle派生类,其中包含载客人数passenger_load和载重量payload。
提示:编写类时要使用get和set方法,Vehicle类定义display()显示车轮和重量,Car和Truck中要对display()进行同名覆盖。
class Vehicle():
def _init_(self, weight, wheels):
self.__weight = weight
self.__wheels = wheels
def get(self):
return self.__weight,self.__wheels
def set(self,weight,wheels):
self.__weight=weight
self.__wheels=wheels
def display(self):
print(self.__weight, self.__wheels)
class Car(Vehicle):
def __init__(self, weight, wheels, passenger_load=4):
self.__weight = weight
self.__wheels = wheels
self.passenger_load = 4
def display(self, passenger_load=4):
print(passenger_load, self.__weight, self.__wheels)
class Truck(Vehicle):
def __init__(self, passenger_load, payload):
self._passenger_load = passenger_load
self._payload = payload
def display(self):
print(self._passenger_load, self._payload)
if __name__ == '__main__':
v = Vehicle()
v.set(12, 13)
print(v.get())
v.display()
c = Car(12, 13)
c.set(12, 13)
c.passenger_load = 14
c.display()
t = Truck(12, 98)
t.set(12, 34)
t.display()
(2)运行结果
(3)编写一个学生和教师数据输入和输出的程序。学生数据包括编号、姓名、班号、和成绩;教师的数据含有编号、姓名、职称和部门。要求设计一个person类,作为学生数据操作类student和教师数据操作类teacher的基类。
class person:
def __init__(self,no,name):
self.__no=no
self.__name=name
def show(self):
print("编号:",self.__no,"姓名:",self.__name,end=' ')
class student(person):
def __init__(self,no,name,ban,score):
super(student,self).__init__(no,name)
self.__ban=ban
self.__score=score
def show(self):
super(student,self).show()
print("班号:",self.__ban,"成绩:",self.__score)
class teacher(person):
def __init__(self,no,name,level,dep):
super(teacher,self).__init__(no,name)
self.__level=level
self.__dep=dep
def show(self):
super(teacher,self).show()
print("职称:",self.__level,"部门:",self.__dep)
s=student(1,"张三",01,100)
s.show()
t=teacher(2,"李四","副教授","软件")
t.show()
(3)运行结果



