Python 数据分析与科学计算 第4章 程序控制结构.ppt
*************【例5.6】已知四位数3025具有特殊性质:它的前两位数字30与后两位数字25之和是55,而55的平方正好等于其本身3025。编程列举出具有该性质的四位数。5.2for语句结构程序代码:print(“满足条件的四位数分别是:”)foriinrange(1000,10000): a=i//100 b=i%100 if(a+b)**2==i: print(i)程序运行结果:满足条件的四位数分别是:202530259801【例5.7】求出1到100能被7或11整除但不能被7和11同时整除的所有整数并将它们输出。每行10个。5.2for语句结构程序代码:print(“满足条件的数分别是:”)count=0foriinrange(1,100): ifi%7==0andi%11!=0ori%11==0andi%7!=0: print(i,end=””) count=coun+1 ifcount%10==0: print(“”)程序运行结果:满足条件的数分别是:711142122283335424449555663667084889198995.3循环嵌套循环语句while和for可以相互嵌套。在使用循环嵌套时,应注意以下几个问题:(1)外层循环和内层循环控制变量不能同名,以免造成混乱。(2)循环嵌套的缩进在逻辑上一定要注意,以保证逻辑上的重要性。(3)循环嵌套不能交叉,即在一个循环体内必须完整地包含另一个循环。如果一个循环结构的循环体又包括了一个循环结构,就称为循环的嵌套。5.3循环嵌套【例5.8】输出九九乘法表,格式如下。1*1=11*2=22*2=41*3=32*3=63*3=91*4=42*4=83*4=124*4=161*5=52*5=103*5=154*5=205*5=251*6=62*6=123*6=184*6=245*6=306*6=361*7=72*7=143*7=214*7=285*7=356*7=427*7=491*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=641*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81foriinrange(1,10,1):#控制行forjinrange(1,i+1,1):#控制列print(%d*%d=%2d%(j,i,i*j),end=)print()#每行末尾的换行5.3循环嵌套【例5.9】找出所有的三位数,要求它的各位数字的立方和正好等于这个三位数。例如:153=13+53+33就是这样的数。程序代码:foriinrange(1,10):forjinrange(0,10):forkinrange(0,10):ifi**3+j**3+k**3==i*100+j*10+k:print(%d%d%d%(i,j,k))程序运行结果:153370371407【例5.10】求100~200之间的全部素数。5.3循环嵌套程序代码:print(100~200之间的素数有:)forminrange(100,200):flag=1foriinrange(2,m):ifm%i==0:flag=0 breakifflag==1:print(m,end=)程序运行结果:程序运行结果:100~200之间的素数有:101103107109113127131137139149151157163167173