Python语言程序设计刘卫国全书源代码
第1章
例1-1python程序设计基础教程电子书 控制输出格式的转义字符的用法示例。
print("**ab*c\t*de***\ttg**\n")
print("h\nn***k")
例1-2 表达式应用实例。
x=2**10
y=pow(2,10)
z=2<<9
a=3/5
b=3//5
c=3%5
print(x,y,z)
print(a,b,c)
第2章
例2-5 程序如下:
x=int(input('input x:')) #输入x的值
y=int(input('input y:')) #输入y的值
z=int(input('input z:')) #输入z的值
if x>y: #如果x>y,则x和y的值互换
x,y=y,x
if x>z: #如果x>z,则x和z的值互换
x,z=z,x
if y>z: #如果y>z,则y和z的值互换
y,z=z,y
print(x,y,z)
例2-6 程序如下:
def f(x,y):
return x**2+y**2
print("f(3,4)=",f(3,4))
f(x,y)函数可以定义成lambda函数的形式。
f=lambda x,y:x**2+y**2
print("f(3,4)=",f(3,4))
例2-7 boxlayout程序如下:
a,b=0,1
s=0
for i in range(50): #i从0变化到49
s+=b
a,b=b,a+b
print("s=",s)
例2-8 程序如下:
import math
x=5+3J; #x是一个复数
p(math.sqrt(math.pi)/2);
z=2*math.sin(math.radians(56)) #z的分子
z/=(s(abs(x+y))) #求z
print("z=",z)
例2-9 程序如下:
n=int(input("n="))
a=n%10; #求n的个位数字
b=n//10%10; #求spring常用设计模式n的十位数字
c=n//100; #求n的百位数字
m=a*100+b*10+c
print("{0:3}的逆序数是{1:3}".format(n,m))
例2-10 程序如下:
from cmath import sqrt
a=float(input('a=?'))
b=float(input('b=?'))
c=float(input('c=?'))
d=b*b-4*a*c
x1=(-b+sqrt(d))/(2*a)
x2=(-b-sqrt(d))/(2*a)
print("x1={0:.5f}, x2={1:.5f}".format(x1,x2))
例2-11 程序如下:
a=complex(input("a="))
b=complex(input("b="))
c=a+0.618*(b-a)
s=abs(a-b)
print("长度:",s)
print("黄金分割点:",c)
第3章
例3-2 程序如下:
a,b=eval(input("输入a,b:"))
if a<b: #若a<b,交换a和b,否则不交换
a,b=b,a
print("{0},{1}".format(a,b))
例3-3 程序如下:
from math import *
a,b,c=eval(input("a,b,c="))
if a+b>c and a+c>b and b+c>a:
p=(a+b+c)/2
s=sqrt(p*(p-a)*(p-b)*(p-c))
print("a={0},b={1},c={2}".format(a,b,c))
print("area={}".format(s))
else:
print("a={0},b={1},c={2}".format(a,b,c))
print("input data error")
例3-4 程序如下:
from math import *
x=eval(input("x="))
if x<0:
y=log(-5*x)+fabs(x)
else:
y=sin(x)+sqrt(x+exp(2))/(2*pi)
print("x={},y={}".format(x,y))
还可以采用两个单分支结构来实现,程序如下:
from math import *
x=eval(input("x="))
if x<0:
y=log(-5*x)+fabs(x)
if x>=0:
y=sin(x)+sqrt(x+exp(2))/(2*pi)
print("x={},y={}".format(x,y))
例3-5 程序如下:
g=float(input("特殊符号大全复制请输入学生成绩:"))
if g<60:
print("不及格")
elif g<70:
print("及格")
elif g<85:
print("良好")
else:
print("优秀")
例3-6 程序如下:
g=float(input("请输入学生成绩:"))
if g>=60:
if g>=70:
if g>=85:
print("优秀")
else:
print("良好")
else:
print("及格")
else:
print("不及格")
例3-7
用嵌套的if结构来实现,看下面的程序:
x,y,z=eval(input("x,y,z=?"))
max=x
if z>y:
if z>x:
max=z
else:
if y>x:
max=y
print("The max is",max)
例3-8 程序如下:
import random
x=random.randint(10,99)
y=random.randint(10,99)
z=random.randint(10,99)
max=x if x>y else y
max=max if max>z else z
print("x={0},y={1},z={2}".format(x,y,z))
print("max=",max)
例3-9 程序如下:
x=eval(input())
a=x%10; #求个位数字
b=(x//10)%10; #求十位数字
c=x//100; #求百位数字
if x==a*a*a+b*b*b+c*c*c:
print("{0}是水仙花数".format(x))
else:
print("{0}不是水仙花数".format(x))
例3-10 程序如下:
hour=int(input('请输入小时:'))
minute=int(input('请输入分钟:'))
second=int(input('请输入秒:'))
second+=30
if second>=60:
second=second-60
minute+=1
minute+=5
if minute>=60:
minute=minute-60
hour+=1
if hour==24:
hour=0
print('{0:d}:{1:d}:{2:d}'.format(hour,minute,second))
例3-11
if嵌套的程序如下:
gh,gs=eval(input())
if gs>120:
gz=gs*84+(gs-120)*84*0.15
else:
if gs>60:
gz=gs*84
else:
gz=gs*84-700
print("{0}号职工应发工资{1}".format(gh,gz))
例3-12 程序如下:
year=int(input("year="))
month=int(input("month="))
if month in(1,3,5,7,8,10,12):
day=31
elif month in(4,6,9,11):
day=30
else:
logi=(year%4==0 and year%100!=0) or year%400==0
day=29 if logi else 28
print(year,month,day)
第4章
例4-1 程序如下:
s=0
n=1
while n<=100: #循环条件
s+=n #实现累加求和
n+=1 #n增1
索引超出了数组界限如何解决sqlprint("1+2+3+……+9+100=",s)
例4-2 程序如下:
from math import *
i=1
x1=int(input()) #输入一个角度
x=radians(x1) #将角度化为弧度
s=x
a=x
while fabs(a)>=1e-6: #|a|≥1e-6时继续循环,否则退出循环
i+=1
a*=-x*x/(2*i-2)/(2*i-1) #求累加项
s+=a
print("x={0},sinx={1}".format(x1,s))
例4-3 程序如下:
n=int(input())
k=0
while n>0:
k+=1
n//=10html网站资源
print('k=',k)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论