王爱胜老师讲座案例程序学习--辗转相除-水仙花数-推荐书单-(读写文本文件)
(2022-03-31 17:30:15)分类: 研究-学习 |
现在发现自己有越来越多需要学习的地方,但是学习效率不高。
a=int(input("a="))
b=int(input("b="))
a=b
b=a%b
a=b
b=n
n=a%b
a=0
s=i
while s>0:
x=s
a=a+x*x*x
s=s//10
if i==a:
sxh.append(i)
s=i
a=0
while s>0:
x=s
a=a+x*x*x
s=s//10
if i==a:
print(i)
print(int(n),"是水仙花数")
print(int(n),"不是水仙花数")
#x=input("请输入等",i+1,"本书的书名:")
#input内必须用+号连接
x=input("请输入第"+str(i+1)+"本书的书名(按0退出):")
if x!="0":
book.append(x)
i+=1
#x=input("请输入等",i+1,"本书的书名:")
#input内必须用+号连接
x=input("请输入第"+str(i+1)+"本书的书名(按0退出):")
if x!="0":
book.append(x)
i+=1
book.append(i.strip().split('\n'))
本周一周二山东省有一次教育论坛活动,专家、名师分享了很多理论和上课的设计,不巧的是中途被耽搁了没听成,这两天准备听回放的但一直还没有开始,先冒冒汗。
下载了王爱胜老师的讲座课件,里面涉及了很多的案例。这些精巧的案例应用到课堂中一定非常有吸引力。细看这些案例程序,有些自己一看就明白怎么回事,有些直接看不懂(比如那个记背单词的程序),还有的自认为自己明白但是独自做发现还有不少问题。。。
====================
1、辗转相除
本来我觉得这个没问题的,被除数、除数、余数,每一轮的循环当余数大于0时,用除数替代被除数,余数替代除数,再进行取余计算,直至余数为0。最后一次的除数就是最大公约数。
被除数 除数 余数
77 44 33
44 33 11
33 11 0
程序如下:(前几行确保非零数,确保大数在前)
a=0
b=0
while a==0 or b==0:
if a a,b=b,a
'''
while a%b >0:
print("最大公约数:",b)
#不能形成多次循环,有错误
'''
n=a%b
while n>0:
print("最大公约数:",b)
2、水仙花数
#水仙花数
#要注意的是依次取i的每个数位上数值时,要首先将i赋值给新的变量s,这样最终i才能和立方和的值进行比较
sxh=[]
for i in
range(100,1000):
print(sxh)
#----------------------
for i in
range(100,1000):
#------方法二--------------
n=input(
"请输入一个三位数:")
s=int(n[0])**3+int(n[1])**3+int(n[2])**3
if
s==int(n):
else:
#-------------------------
两种方法,两种思路。一个是数值计算,一个是字符操作+运算。
3、补充知识:
split()
这是隔开不同数据(数值
or字符)的方法,默认是用空格。
x=input().split()
y=[int(i) for i in x]
print(y)
4、《推荐书单》项目
如果说前面都看作是编程技术类的知识,这一个则兼具教学设计的技术和艺术。
技术实验一:输入三本书名
(使用方法:空列表,append(),重复三次)
book=[]
x=input("请输入书名:")
book.append(x)
x=input("请输入书名:")
book.append(x)
x=input("请输入书名:")
book.append(x)
print("推荐的书名有:",book)
若重复次数更多,则可以使用for循环语句。如添加10本,添加20本等。
但对于不知道数目的推荐图书,如何实现你?--------while循环。
#-------------------------
技术实验二:输入任意数目的图书
book=[]
x=""
i=0
while x!="0":
print("共输入",i,"本书,书名分别是:",book)
## if x!="0": 这里若写成if x!=0:
,程序在执行时也能够结束循环,但是却会把0记录在列表中。不知如何解释。
#-------------------------
技术实验三:
生成列表的同时将内容同步记录至文本文件。
book=[]
x=""
i=0
fw=open("1.txt","w")
while x!="0":
fw.write(x+'\n')
fw.write("推荐的本数:"+len(book)+"\n")
fw.close()
print("共输入",i,"本书,书名分别是:",book)
##容易出错(遗忘)之处:
fw=open('1.txt','w')
fw.write(x+'\n')
fw.write("共有的图书"+str(len(book))+'\n')
fw.close()
5、读取文件
readln()
fw=open("1.txt",'r')
lines=fw.readlines()
book=[]
for i in lines:
print(book)
前一篇:SQL结构化查询语言之增删查改
后一篇:最大公约数--常看常新