<p class="ql-block">文本<a href="https://www.kdocs.cn/l/coQSm4z4eLAI" target="_blank" style="background-color:rgb(255, 255, 255); font-size:18px;">链接</a></p><p class="ql-block">菜鸟在线【https://www.jyshare.com/compile/6/】</p><p class="ql-block">科技学堂【https://www.sciclass.cn/python】</p><p class="ql-block">代码下载【https://www.cnblogs.com/huigebj/p/11295202.html】</p><p class="ql-block"><br></p><p class="ql-block">1.【P53-33】</p><p class="ql-block">a="01234567"</p><p class="ql-block">s=0</p><p class="ql-block">for i in a[6]:</p><p class="ql-block"> s=s+1</p><p class="ql-block">print(s)#输出1</p><p class="ql-block">2.【P53-34】</p><p class="ql-block">s=0</p><p class="ql-block">for a1 in range(1,100,50):</p><p class="ql-block"> s=s+a1</p><p class="ql-block">print(s)#输出52</p><p class="ql-block">3.【P54-44】</p><p class="ql-block">s=0</p><p class="ql-block">while s<10:</p><p class="ql-block"> s=s+2</p><p class="ql-block"> print("您好")#输出5个您好</p><p class="ql-block">【P54-45】</p><p class="ql-block">s=0</p><p class="ql-block">while s<10:</p><p class="ql-block"> s=s+2</p><p class="ql-block">print("中国加油")#输出1个中国加油</p> <p class="ql-block">4.【韩信点兵】</p><p class="ql-block">x=1</p><p class="ql-block">y=0</p><p class="ql-block">while y==0:</p><p class="ql-block"> if x%3==1:</p><p class="ql-block"> if x%5==2:</p><p class="ql-block"> if x%7==4:</p><p class="ql-block"> y=x</p><p class="ql-block"> x=x+1</p><p class="ql-block">print("韩信统御士兵数:",y)</p><p class="ql-block">x=1</p><p class="ql-block">y=0</p><p class="ql-block">while y==0:</p><p class="ql-block"> if x%3==1:</p><p class="ql-block"> if x%5==2:</p><p class="ql-block"> if x%7==4:</p><p class="ql-block"> if x%13==6:</p><p class="ql-block"> if x%17==8:</p><p class="ql-block"> y=x</p><p class="ql-block"> x=x+1</p><p class="ql-block">print("韩信统御士兵数:",y)</p><p class="ql-block">【韩信点兵2】</p><p class="ql-block">print("==========解法1==========")</p><p class="ql-block">x=1</p><p class="ql-block">y=0</p><p class="ql-block">while y==0:</p><p class="ql-block"> if x%3==1:</p><p class="ql-block"> if x%5==2:</p><p class="ql-block"> if x%7==4:</p><p class="ql-block"> y=x</p><p class="ql-block"> x=x+1</p><p class="ql-block">print("韩信统御士兵数:",y)</p><p class="ql-block">print("==========解法2==========")</p><p class="ql-block">for x in range(1,100):</p><p class="ql-block"> if x%3==1:</p><p class="ql-block"> if x%5==2:</p><p class="ql-block"> if x%7==4:</p><p class="ql-block"> print("韩信统御士兵数:",x)</p><p class="ql-block"> break</p><p class="ql-block">print("==========解法3==========")</p><p class="ql-block">for x in range(1,100000):</p><p class="ql-block"> if x%3==1 and x%5==2 and x%7==4 and x%13==6 and x%17==8:</p><p class="ql-block"> print("韩信统御士兵数:",x)</p><p class="ql-block"> break</p> <p class="ql-block">5.【三元一次方程的正整数解P51】</p><p class="ql-block">t=0</p><p class="ql-block">print("方程6*x+5*y+4*z=50的正整数解:")</p><p class="ql-block">for x in range(1,9):</p><p class="ql-block"> for y in range(1,11):</p><p class="ql-block"> for z in range(1,13):</p><p class="ql-block"> if(x*6+y*5+z*4==50):</p><p class="ql-block"> t=t+1</p><p class="ql-block"> print("x=%d,y=%d,z=%d,t=%d"%(x,y,z,t))</p><p class="ql-block">print("\n下面是查看三重循环执行时,循环变量变化情况:")</p><p class="ql-block">t=0</p><p class="ql-block">for x in range(1,9):</p><p class="ql-block"> for y in range(1,11):</p><p class="ql-block"> for z in range(1,13):</p><p class="ql-block"> t=t+1</p><p class="ql-block"> print("x=%d,y=%d,z=%d,次数t=%d"%(x,y,z,t))</p><p class="ql-block">6.【P75,购买笔记本可节约的钱】</p><p class="ql-block">n = int(100)</p><p class="ql-block">a = 3 * n</p><p class="ql-block">b = 5 * n</p><p class="ql-block">y = (a+b)*(1-0.8)</p><p class="ql-block">print("购买笔记本1和笔记本2的数量均为: ",n,"本")</p><p class="ql-block">print("可节省的金额为: ",y,"元")</p><p class="ql-block"><br></p><p class="ql-block">7.【P77输入购买笔记本的数量单价求总金额数】</p><p class="ql-block">s = ("请输入购买笔记本的数量(多少本):")</p><p class="ql-block">s = int(s)</p><p class="ql-block">p = float(("请输入笔记本的单价(每本多少元):"))</p><p class="ql-block">if s < 6: </p><p class="ql-block"> j = 1.0</p><p class="ql-block">if s >= 6 and s <= 10: </p><p class="ql-block"> j = 0.9</p><p class="ql-block">if s >= 11: </p><p class="ql-block"> j = 0.8</p><p class="ql-block">t = s*p*j</p><p class="ql-block">print("总金额数为:",t,"元")</p><p class="ql-block"><br></p><p class="ql-block">8.【P79三种笔记本的优惠金额最大的】</p><p class="ql-block">print("请输入三种笔记本的优惠金额数(元):")</p><p class="ql-block">a,b,c = ().split()</p><p class="ql-block">a = float(a)</p><p class="ql-block">b = float(b)</p><p class="ql-block">c = float(c)</p><p class="ql-block">if a > b: </p><p class="ql-block"> m = a</p><p class="ql-block">else: </p><p class="ql-block"> m = b</p><p class="ql-block">if c > m:</p><p class="ql-block"> m = c</p><p class="ql-block">print("优惠金额数最大的为:", m, "元")</p> <p class="ql-block">9.【P83判断是否是闰年】</p><p class="ql-block">x = int(("请输入年份:"))</p><p class="ql-block">year = x</p><p class="ql-block">if x%400==0 or (x%100>0 and x%4==0):</p><p class="ql-block"> print("%d年是闰年"%dx)</p><p class="ql-block">else:</p><p class="ql-block"> print("%d年不是闰年"%dx)</p><p class="ql-block"><br></p><p class="ql-block">【是否是闰年2】</p><p class="ql-block">x = int(("请输入年份:"))</p><p class="ql-block">year = x</p><p class="ql-block">if x%100==0:</p><p class="ql-block"> x=x/100</p><p class="ql-block">if x%4>0:</p><p class="ql-block"> print("%d年不是闰年"% year)</p><p class="ql-block">else:</p><p class="ql-block"> print("%d年是闰年"% year)</p><p class="ql-block"><br></p><p class="ql-block">10.【P90到第几个人募集总费用超过1000元】</p><p class="ql-block">num=1</p><p class="ql-block">money=20</p><p class="ql-block">sum=20</p><p class="ql-block">while sum<1000:</p><p class="ql-block"> num=num+1</p><p class="ql-block"> money=money+5</p><p class="ql-block"> sum=sum+money</p><p class="ql-block">print(num)</p><p class="ql-block">11.【P93从1加到100】</p><p class="ql-block">i = 0</p><p class="ql-block">sum = 0</p><p class="ql-block">while i<101:</p><p class="ql-block"> sum = sum + i</p><p class="ql-block"> i = i + 1</p><p class="ql-block">print("the result:",sum)</p><p class="ql-block">【累加2】</p><p class="ql-block">sum = 0</p><p class="ql-block">for i in range(1,101):</p><p class="ql-block"> sum=sum+i</p><p class="ql-block"> print("结果:",sum)</p><p class="ql-block"><br></p><p class="ql-block">12.【P96 正偶数输出两个素数,且等于两个素数之和】</p><p class="ql-block">n=int(('输入正偶数:'))</p><p class="ql-block">for i in range(2,n//2):</p><p class="ql-block"> flag1=True</p><p class="ql-block"> for j in range(2,i):</p><p class="ql-block"> if i%j==0:</p><p class="ql-block"> flag1=False</p><p class="ql-block"> break</p><p class="ql-block"> flag2=True</p><p class="ql-block"> for j in range(2,n-i):</p><p class="ql-block"> if (n-i)%j==0:</p><p class="ql-block"> flag2=False</p><p class="ql-block"> break</p><p class="ql-block"> if flag1 and flag2:</p><p class="ql-block"> print(i,n-i)</p><p class="ql-block"><br></p><p class="ql-block">【P96个人所得税】</p><p class="ql-block">money = float(("请输入您的工资:"))</p><p class="ql-block">sum = 0</p><p class="ql-block">money1 = money-60000</p><p class="ql-block">while True:</p><p class="ql-block"> if money>60000:</p><p class="ql-block"> if money1-960000>0:</p><p class="ql-block"> sum += (money1-960000)*0.45</p><p class="ql-block"> money1 = 960000</p><p class="ql-block"> if money1-660000>0:</p><p class="ql-block"> sum +=(money1-660000)*0.35</p><p class="ql-block"> money1 =660000</p><p class="ql-block"> if money1-420000>0:</p><p class="ql-block"> sum +=(money1-420000)*0.3</p><p class="ql-block"> money1 =420000</p><p class="ql-block"> if money1-300000>0:</p><p class="ql-block"> sum +=(money1-300000)*0.25</p><p class="ql-block"> money1 =300000</p><p class="ql-block"> if money1-144000>0:</p><p class="ql-block"> sum +=(money1-144000)*0.2</p><p class="ql-block"> money1 = 144000</p><p class="ql-block"> if money1-36000>0:</p><p class="ql-block"> sum +=(money1-36000)*0.1</p><p class="ql-block"> money1 = 36000</p><p class="ql-block"> if 0<money1<=36000:</p><p class="ql-block"> sum +=money1*0.03</p><p class="ql-block"> break</p><p class="ql-block"> else:</p><p class="ql-block"> break</p><p class="ql-block">print("个人所得税为:%.2f元" %sum)</p><p class="ql-block">s = money-sum</p><p class="ql-block">print("实发工资:%.2f元"%s)</p><p class="ql-block">【个人所得税2】</p><p class="ql-block">def calculator(money):</p><p class="ql-block"> shui=0</p><p class="ql-block"> shui1=36000*0.03</p><p class="ql-block"> shui2=(144000-36000)*0.1</p><p class="ql-block"> shui3=(300000-144000)*0.2</p><p class="ql-block"> shui4=(420000-300000)*0.25</p><p class="ql-block"> shui5=(660000-420000)*0.3</p><p class="ql-block"> shui6=(960000-660000)*0.35</p><p class="ql-block"> if money<=36000:</p><p class="ql-block"> shui=money*0.03</p><p class="ql-block"> if money>36000 and money<=144000:</p><p class="ql-block"> shui=(money-36000)*0.1+shui1</p><p class="ql-block"> if money>144000 and money<=300000:</p><p class="ql-block"> shui=(money-144000)*0.2+shui2+shui1</p><p class="ql-block"> if money>300000 and money<=420000:</p><p class="ql-block"> shui=(money-300000)*0.25+shui3+shui2+shui1</p><p class="ql-block"> if money>420000 and money<=660000:</p><p class="ql-block"> shui=(money-420000)*0.3+shui4+shui3+shui2+shui1</p><p class="ql-block"> if money>660000 and money<=960000:</p><p class="ql-block"> shui=(money-660000)*0.35+shui5+shui4+shui3+shui2+shui1</p><p class="ql-block"> if money>960000:</p><p class="ql-block"> shui=(money-960000)*0.45+shui6+shui5+shui4+shui3+shui2+shui1</p><p class="ql-block"> print("应缴个人所得税额为: %.2f元" %shui)</p><p class="ql-block"> return</p><p class="ql-block">money = float(("请输入您的全年应纳税所得额为(单位为元):"))</p><p class="ql-block">calculator(money)</p><p class="ql-block"><br></p><p class="ql-block"><br></p><p class="ql-block">13.【求最大公约数】</p><p class="ql-block">num_1 = int(("输入一个数:"))</p><p class="ql-block">num_2 = int(("输入另一个数:"))</p><p class="ql-block">if num_1 > num_2:</p><p class="ql-block"> min = num_2</p><p class="ql-block">else:</p><p class="ql-block"> min = num_1</p><p class="ql-block">for i in range(1, min+1):</p><p class="ql-block"> if (num_1 % i == 0) and (num_2 % i == 0):</p><p class="ql-block"> c = i</p><p class="ql-block">print('这两个数的最大公约数为:%d' % c)</p><p class="ql-block">【最大公约数2】</p><p class="ql-block">Python 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)] on win32</p><p class="ql-block">Type "help", "copyright", "credits" or "license()" for more information.</p><p class="ql-block">>>> # 定义一个函数</p><p class="ql-block">def hcf(x, y):</p><p class="ql-block"> """该函数返回两个数的最大公约数"""</p><p class="ql-block"> </p><p class="ql-block"> # 获取最小值</p><p class="ql-block"> if x > y:</p><p class="ql-block"> smaller = y</p><p class="ql-block"> else:</p><p class="ql-block"> smaller = x</p><p class="ql-block"> </p><p class="ql-block"> for i in range(1,smaller + 1):</p><p class="ql-block"> if((x % i == 0) and (y % i == 0)):</p><p class="ql-block"> hcf = i</p><p class="ql-block"> </p><p class="ql-block"> return hcf</p><p class="ql-block"> </p><p class="ql-block"> </p><p class="ql-block"># 用户输入两个数字</p><p class="ql-block">num1 = int(15)</p><p class="ql-block">num2 = int(10)</p><p class="ql-block"> </p><p class="ql-block">print( num1,"和", num2,"的最大公约数为", hcf(num1, num2))</p><p class="ql-block"><br></p><p class="ql-block">14.【94支脚鸡兔同笼】</p><p class="ql-block">for x in range(1,23):</p><p class="ql-block"> y = 35-x</p><p class="ql-block"> if 4*x+2*y == 94:</p><p class="ql-block"> print("兔子有%s只,鸡有%s只"%(x,y))</p><p class="ql-block">15.【循环输出 数据】</p><p class="ql-block">#for 循环输出 数据</p><p class="ql-block"><br></p><p class="ql-block">for value in [1,2,3,4,5]:</p><p class="ql-block"> print(value)</p><p class="ql-block"> print('good')</p><p class="ql-block">16.【#range 函数】</p><p class="ql-block">#range 函数的使用例程</p><p class="ql-block"><br></p><p class="ql-block">for value in range(3):</p><p class="ql-block"> print(value)</p><p class="ql-block">17.【网购单价为1元至10元的十种笔记本】</p><p class="ql-block">"""</p><p class="ql-block">5.项目小组决定先网购单价为1元至10元的十种笔记本各1本,计算一共要花多少钱</p><p class="ql-block">"""</p><p class="ql-block"><br></p><p class="ql-block">sum=0</p><p class="ql-block">for i in range(1,11): #价格从1到10</p><p class="ql-block"> sum=sum+i</p><p class="ql-block">print("the rusult:",sum)</p> <p class="ql-block">18.【买100件,并且尽可能地用完1000元经费】小组最终决定购买单价分别为1.8元的笔记本、1.9元的笔、2.1元的小饰品作为活动的奖品</p><p class="ql-block">和纪念品,每一种物品至少买100件,并且尽可能地用完1000元经费。如何设计方案,才能</p><p class="ql-block">实现购买物品数量最多?如数量相同的情况下余额最小的方案为最佳,则最佳方案中每一</p><p class="ql-block">种物品的数量是多少?余额是多少?</p><p class="ql-block">"""</p><p class="ql-block">x1=100 #1.8元笔记本的数量</p><p class="ql-block">y1=100 #1.9元笔的数量</p><p class="ql-block">z1=100 #2.1元小饰品的数量</p><p class="ql-block">s=300 # 礼物总数量</p><p class="ql-block">r=1000-(100*1.8+100*1.9+100*2.1) #余额</p><p class="ql-block">for x in range(100,556): # 全部经费最多买555本笔记本,所以循环范围为100至556</p><p class="ql-block"> for y in range(100,527): # 全部经费最多买526支笔,所以循环范围为100至527</p><p class="ql-block"> for z in range(100,477): # 全部经费最多买476个小饰品,所以循环范围为100至477</p><p class="ql-block"> if 1.8*x+1.9*y+2.1*z <=1000:</p><p class="ql-block"> </p><p class="ql-block"> if x+y+z>s: # 如果此时三种纪念品的数量之和大于纪念品数量s</p><p class="ql-block"> s=x+y+z #那么更改s的值为现在三种纪念品的数量之和</p><p class="ql-block"> r=1000-(1.8*x+1.9*y+2.1*z) #计算余额</p><p class="ql-block"> x1=x #更新三种纪念品的数量</p><p class="ql-block"> y1=y</p><p class="ql-block"> z1=z</p><p class="ql-block"> </p><p class="ql-block"> if x+y+z==s and r>=1000-(1.8*x+1.9*y+2.1*z): #如果此时三种纪念品数量之和等于之前记录的纪念品数量,且余额</p><p class="ql-block"> #比之前记录的余额r要小</p><p class="ql-block"> s=x+y+z #那么更改s的值为现在三种纪念品的数量之和</p><p class="ql-block"> r=1000-(1.8*x+1.9*y+2.1*z)</p><p class="ql-block"> x1=x #更新三种纪念品的数量</p><p class="ql-block"> y1=y</p><p class="ql-block"> z1=z</p><p class="ql-block"> else:</p><p class="ql-block"> break #当1.8*x+1.9*y+2.1*z>1000,则可以退出循环,避免循环空转而浪费时间</p><p class="ql-block">print("符合条件的最优方案为:")</p><p class="ql-block">print("单价1.8元的物品数量是:",x1)</p><p class="ql-block">print("单价1.9元的物品数量是:",y1)</p><p class="ql-block">print("单价2.1元的物品数量是:",z1)</p><p class="ql-block">print("共买到的礼物总数量为:",s)</p><p class="ql-block">print("余额还剩:",r,"元")</p><p class="ql-block">19.【程序5-3-1 绘制正弦函数】</p><p class="ql-block"># -*- coding: utf-8 -*-</p><p class="ql-block">import numpy as np #引入numpy库模块,用np替代</p><p class="ql-block">import matplotlib.pyplot as plt #引入matplotlib库模块中的pyplot方法,用plt替代</p><p class="ql-block">from pylab import * #引入pylab库模块中的所有方法</p><p class="ql-block">x = np.arange(-5.0, 5.0, 0.02) #定义x轴数值为-5到5,步长为0.02</p><p class="ql-block">y = np.sin(x) #利用正弦函数计算出x轴数值对应的y轴数值你</p><p class="ql-block">plt.plot(x, y) #利用x,y轴对应的数值绘制出图形</p><p class="ql-block">plt.show() #显示出绘制的图形</p>