中文字幕精品无码一区二区,成全视频在线播放观看方法,大伊人青草狠狠久久,亚洲一区影音先锋色资源

2022—2023學年教科版(2019))高中信息技術必修一所有程序知識匯總

資源下載
  1. 二一教育資源

2022—2023學年教科版(2019))高中信息技術必修一所有程序知識匯總

資源簡介

1.雞兔同籠問題程序,p10
print('這是一個有關雞兔同籠問題的程序')
heads=float(input('請輸入總的頭數:'))
legs=float(input('請輸入總的腳數:'))
tu=int((legs-heads*2)/(4-2))
print('兔子有:',tu,'頭')
print('雞有:',int(heads-tu),'頭')
input("運行完畢,請按回車鍵退出...")
利用for循環及if語句解決雞兔同籠問題
print('這是一個有關雞兔同籠問題的程序')
heads=int(input('請輸入總的頭數:'))
legs=int(input('請輸入總的腳數:'))
for tu in range(1,heads-1):
leg=4*tu+2*(heads-tu)
if leg==legs:
print('兔子有:',tu,'頭')
print('雞有:',int(heads-tu),'頭')
input("運行完畢,請按回車鍵退出...")
百錢白雞問題程序p15 (注意縮進)
#公雞價格g1,母雞價格g2,三小雞價格g3,公雞只數g4,母雞只數g5,(三小雞)只數g6
money=100 #一共100文錢
num=100 #一共100只雞
g1=5 #公雞價格5文
g2=3 #母雞價格3文
g3=1 #3只小雞1文
for g4 in range(1,money//g1+1): #公雞只數可能為1-20
for g5 in range(1,money//g2+1): #母雞只數可能為1-33
for g6 in range(1,money//g3+1): #(3小雞)只數可能為1-100
money1=g1*g4+g2*g5+g6*g3
num1=g4+g5+g6*3
if money1==money and num1==num:
print (g4,g5,g6*3)
input("運行完畢,請按回車鍵退出...")
最強大腦程序p22
import random #添加隨機庫
import time
import os
print("你好,現在你有10秒鐘的時間記憶下列物品及其編號")
things=["蘋果","香蕉","桔子","梨子","獼猴桃","柚子",
"猴魁","鐵觀音","毛筆","宣紙"]
for i in range(10):
print(i,":",things[i])#在屏幕上顯示編號及物品
time.sleep(10) #延時10秒
os.system("cls") #清屏幕,隱去編號及物品
n=0 #記錄答對的題數,初值為0
t2=random.sample(things,5)#隨機抽出5個物品
for i in t2: #出5題
ans=int(input(i + "的編號是:"))#輸入編號答題
if i==things[ans]:
n=n+1 #如果回答正確,答對的題數加1
print("\n你一共答對了",n,"次")#屏幕顯示答對的題數
input("\n按回車鍵結束程序")
計算心率p29
low=(220-16 -71)*0.6+71
high=(220-16 -71)*0.8+71
print(low,high)
input("運行完畢,請按回車鍵退出...")
輸入語句p30
myname=input("請輸入myname:")
print("hello",myname)
6.計算心率p30
age=float(input('請輸入age='))
HRrest=float(input('請輸入HRrest='))
low=(220-age-HRrest)*0.6+ HRrest
high=(220-age-HRrest)*0.8+HRrest
print("最適宜的心率是:",low,"~",high)
input("運行完畢,請按回車鍵退出...")
飛船升空問題p32
v=float(input("請輸入速度(千米/秒):"))
if v>=7.91:
print("飛船成功飛行! ")
else:
print("飛船不能升空! ")
input("運行完畢,請按回車鍵退出...")
8.分性別計算心率p33
age=float(input('請輸入age='))
HRrest=float(input('請輸入HRrest='))
gender=input("請輸入male or female :")
if gender=='male':
n=220
else:
n=210
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print('最適宜的心率是:',low,'~',high)
input("運行完畢,請按回車鍵退出...")
計算心率拓展練習p33
age=float(input('請輸入age='))
HRrest=float(input('請輸入HRrest='))
EHR=float(input('請輸入EHR=')) #輸入運動后的心率
gender=input("請輸入male or female :")
if gender=='male':
n=220
else:
n=210
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
if EHRprint('您的運動心率太低,請適當提高')
elif low<=EHR<=high:
print('您的運動心率正好,請保持')
else:
print('您的運動心率太高,請適當降低')
input("運行完畢,請按回車鍵退出...")
10.感冒指數拓展知識p33(多分支語句)
num=int(input("請輸入感冒指數: "))
if 0<=num<=6 :
print("少發")
elif 7<=num<=19:
print("較易發")
elif 20<=num<=30:
print("易發")
elif 31<=num<=61:
print("極易發")
else:
print("指數值不正確")
input("運行完畢,請按回車鍵退出...")
11.計算利率不變情況下到期存款總額p34
principal = 50000 #本金50000元
rate=0.0325 #1年定期利率3.25%
year=5 #存款期限
money=principal*(1+rate)**year #計算存款總額
print("5年以后存款總額:",money,"元") #輸出結果
input("運行完畢,請按回車鍵退出...")
12.列表的相關操作p35
#創建列表,各元素用逗號隔開,放在方括號內,列表可以存儲混合類型的數據
object=["石榴",1,"香蕉","橙子","梨子"]
object[0]="蘋果" #修改列表第1個元素的值,注意列表索引號從0開始
del object[1] #刪除列表第2個元素
object.append("獼猴桃")#在列表尾部添加一個數據元素"獼猴桃"
print (object) #輸出列表
input("運行完畢,請按回車鍵退出...")
打印”hello,word”程序p36
for i in ["hello","world"]:
print (i) #循環體
input("運行完畢,請按回車鍵退出...")
生成0-100的自然數程序p36
for i in range(101): #想想為什么是101
print (i)
input("運行完畢,請按回車鍵退出...")
15.利用for循環來解決利率不變情況下到期存款總額p37
money = 50000 #本金50000元
rate=[0.0325,0.03,0.03,0.02,0.0175] #利率列表
for i in rate:
money=round(money*(1+i),2) #計算每年存款額
print("5年以后存款總額:",money,"元") #輸出結果
input("運行完畢,請按回車鍵退出...")
條件循環例子p37
s=0
while s<=30:
s=s+10 #循環體
print(s) #循環體
input("運行完畢,請按回車鍵退出...")
17.資金被全部取出程序p38
money=100000 #本金100000
year=0 #理財年數賦初值為0
while money>=0:
money=round(money*(1+0.037),2)-20000 #計算新的理財金額
year=year+1 #理財年數加1
print(year,"年后資金被全部取出") #輸出結果
input("運行完畢,請按回車鍵退出...")
調試程序操作p38(了解即可)
import pdb
money=100000 #本金100000
year=0 #理財年數賦初值為0
while money>=0:
money=round(money*(1+0.037),2)-20000 #計算新的理財金額
year=year+1 #理財年數加1
pdb.set_trace()
print(year,"年后資金被全部取出") #輸出結果
input("運行完畢,請按回車鍵退出...")
19.計算存款總額拓展練習第一題p39
money=0 #初值為0
for i in range(10):
money=round((money+20000)/(1+0.037),2) #計算理財金額
print("初期投資",money,"元") #輸出結果
input("運行完畢,請按回車鍵退出...")
20.計算存款總額拓展練習第二題p39
money=100000 #本金100000
year=0 #理財年數賦初值為0
while money<200000:
money=round(money*(1+0.0425),2) #計算新的理財金額
year=year+1 #理財年數加1
print(year,"年后資金翻倍") #輸出結果
input("運行完畢,請按回車鍵退出...")
循環嵌套,九九乘法表p39
for i in range(1,10):
for j in range(1,i+1):
print("{0:1}*{1:1}={2:2} ".format(j,i,j*i),end="") #按格式輸出
print() #換行
input("運行完畢,請按回車鍵退出...")
求n的階乘程序p42
def factorial(n):
#求n!
s=1
for i in range(2,n+1):
s=s*i
return s
#調用factorial函數
total=factorial(4)
print(total)
input("運行完畢,請按回車鍵退出...")
23.火柴棒拼數字游戲程序p43
def match_num(num):
f=[6,2,5,5,4,5,6,3,7,6] # 0-9的數字分別需要多少根小棒
if num==0: # 火柴棒總數變量賦初值
total=f[0]
else:
total=0
while (num>0):
x=num % 10 # 取num除以10的余數,即num的個位數
total=total+f[x] # 所需火柴棒數累加
num=num//10 #num整除10,即去掉num的個位數
return total #返回需要多少根火柴棒數
#以下為主程序
snum=6 # 6根火柴棒
print("你可以拼出這些數字:")
for i in range(112):
if match_num(i)==snum: #如果i需要的火柴棒數等于現有火柴棒數
print (i)
input("運行完畢,請按回車鍵退出...")
發布代碼p43-p44(了解即可)
def match_num(num):
f=[6,2,5,5,4,5,6,3,7,6] # 0-9的數字分別需要多少根小棒
if num==0: # 火柴棒總數變量賦初值
total=f[0]
else:
total=0
while (num>0):
x=num % 10 # 取num除以10的余數,即num的個位數
total=total+f[x] # 所需火柴棒數累加
num=num//10 #num整除10,即去掉num的個位數
return total #返回需要多少根火柴棒數
from distutils.core import setup
setup(
name ='mymodule', #參數一定要與mymodule.py文件名相同
version ='1.0.0', #版本號
py_modules =['mymodule'], #參數一定要與mymodule.py文件名相同
author='yd', #作者
author_email='zy@', #作者郵箱
description ='計算一個數字需要多少根火柴棒', #代碼功能描述
)
25.導入模板并使用p44(了解即可)
import mymodule #導入模塊
snum=6 # 6根火柴棒
print("你可以拼出這些數字:")
for i in range(112):
if mymodule.match_num(i)==snum: #調用模塊內match_num()函數
print (i)
input("運行完畢,請按回車鍵退出...")
求生肖程序p45
def shengxiao(year):
#求生肖
zodiac=["鼠","牛","虎","兔","龍","蛇","馬","羊","猴","雞","狗","豬"]
index=(year-1972)%12
return zodiac[index]
#以下為主程序
myyear=int(input("請輸入出生年份,輸入0結束:"))
while myyear!=0:
print("你的生肖是:",shengxiao(myyear))
myyear=int(input("請輸入出生年份,輸入0結束:"))
27.利用時間庫獲取計算機時間(拓展知識)p45-p46
import time
print(time.time()) #時間戳,即1970紀元后經過的浮點秒數
time.sleep(2) #延時2秒
print(time.asctime()) #格式化顯示時間
input("運行完畢,請按回車鍵退出...")
利用隨機庫產生一個隨機數p46
import random
num=random.randint(0,1) #產生一個[0, 1]之間的隨機整數
print(num)
input("運行完畢,請按回車鍵退出...")
29.猜數字游戲程序p47
import random
num=random.randint(1,100)
mynum=int(input('請輸入mynum='))
n=1
while not(num==mynum):
n=n+1
print("輸入不正確,請再次輸入")
mynum=int(input('請輸入mynum='))
print("你猜對了!","一共用了",n,"次")
input("運行完畢,請按回車鍵退出...")
十進制轉換為二進制程序p53
b=''
d=int(input('請輸入非負整數d='))
while d>0:
r=d%2
b=str(r)+b
d=d//2
if b=='':
b='0'
print(b)
print()
input("運行完畢,請按回車鍵退出...")
31.編制訂單數據處理程序p58
listque=[] #定義列表listque存儲訂單
x=0
while(x!=4): #當x=!4時,執行循環
print('1. 添加訂單')
print('2. 發貨')
print('3. 查看訂單列表')
print('4. 退出')
x=int(input("輸入你的選擇:")) #輸入選擇項
if x==1:
y=input("輸入訂單編號:") #輸入訂單編號
listque.append(y) #在列表listque中添加訂單號
elif x==2:
if len(listque)==0: #如果訂單列表為空
print("訂單列表為空")
else:
print("發貨單號:"+listque.pop(0))
elif x==3:
print("等待發貨:",listque) #查詢列表listque中的訂單號
print()
input("運行完畢,請按回車鍵退出...")
32.求取快遞最有線路p63(了解即可)
def dfs(v,vis):
global min,s,r,minr
vis.add(v)
r=r+'-'+v
if vis==set('HABC'):
s=s+G[v]['H']
r=r+'-'+'H'
print('線路'+r[1:]+'用時:'+str(s))
if smin=s
minr=r
s=s-G[v]['H']
r=r[:-2]
else:
for u in G[v]:
if u not in vis:
s=s+G[v][u]
dfs(u,vis)
vis.remove(u)
s=s-G[v][u]
r=r[:-2]
return min
G={'H':{'A':2,'B':5,'C':10},'A':{'H':2,'B':4,'C':6},'B':{'H':5,'A':4,'C':4},'C':{'H':10,'A':6,'B':4}}
min=999
s=0
r=''
minr=''
print("最短用時:"+str(dfs('H',set())))
print("最短用時線路有:"+minr[1:])
print()
input("運行完畢,請按回車鍵退出...")
更新旅行線路p68
from tkinter import *
root = Tk() #創建一個窗口
root.title("添加線路") #設置窗口標題
root.geometry('600x100') #設置窗口大小
root.resizable(0,0) #禁止調整窗口大小
var=StringVar() #定義StringVar()類型
def intomap(): #Button按鈕激發函數
c=open("旅行線路.txt",'a+') #以追加模式打開文件
c.write(var.get()+"\n") #在文件末尾添加text里的內容
c.close #關閉文件
#在窗口上建一個文本標簽
Label(root, text='請輸入線路', font=('Arial', 10)).pack()
#在窗口上建一個文本框
Entry(root,textvariable=var,width=550).pack()
#在窗口上建一個Button按鈕
Button(root, text="添加線路", command =intomap,relief="solid",width=10).pack()
root.mainloop()
34.破解密碼程序p81(了解即可)
from tkinter import *
import datetime
root = Tk()
root.geometry('300x100')
def jiemi():
d1=datetime.datetime.now() #獲取當前系統時間d1
p=int(varin.get()) #獲取輸入文本框的數字密碼
for i in range(p+1): #從0循環到正確密碼數值
if i==p: #如果密碼相同
d2=datetime.datetime.now() #獲取當前系統時間d2
d=d2-d1 #取得時間差
#在輸出文本框中顯示解密用時
varout.set(str(d.seconds)+"秒"+str(d.microseconds/1000)+"毫秒")
frm = Frame(root)
#left
frm_L = Frame(frm)
Label(frm_L, text='輸入密碼:', font=('Arial', 10)).pack()
Label(frm_L, text='破解用時:', font=('Arial', 10)).pack()
frm_L.pack(side=LEFT)
#right
frm_R = Frame(frm)
varin=StringVar()
varout=StringVar()
Entry(frm_R, textvariable = varin).pack()
Entry(frm_R, textvariable = varout).pack()
frm_R.pack(side=RIGHT)
frm.pack()
Button(root, text="破解", command=jiemi,relief="solid",width=10).pack()
root.mainloop()
凱撒密碼程序p81
from tkinter import * #導入tkinter模塊
root = Tk() #建立一個窗口
root.title("凱撒加密") #設置窗口標題
root.geometry('300x200') #設置窗口大小
def CaesarCipher(): #“加密”按鈕激發函數
c=mingwen.get("0.0", "end")[:-1] #獲取mingwen對象的內容(明文)
b=""
miwen.delete("0.0", "end") #清空miwen對象的內容
for i in range(len(c)): #獲取明文內容的每一個字符,并加密
if 'a'<=c[i]<='w' or 'A'<=c[i]<='W': #判斷a~w或A~W間的字母
b=b+chr(ord(c[i])+3) #生成密文
elif 'x'<=c[i]<='z' or 'X'<=c[i]<='Z': #判斷x~z或X~Z間的字母
b=b+chr(ord(c[i])-23) #生成密文
else:
b=b+c[i] #字母以外的明文不變
miwen.insert("0.0",b) #在miwen對象中顯示結果
Label(root, text='請輸入明文', font=('Arial', 10)).pack()
mingwen=Text(root,width=300,height=4)
mingwen.pack()
mingwen.focus_set() #獲得焦點
Button(root, text="加密", command=CaesarCipher,relief="solid",width=10).pack()
Label(root, text='凱撒密文', font=('Arial', 10)).pack()
miwen=Text(root,width=300,height=4)
miwen.pack()
root.mainloop()
拓展練習82
def NewCaesar(m,n,t):
z='';i=0
while itmp=t[i].upper()
if tmp in m:
if ord(t[i])<=90:
z+=n[m.find(tmp)]
else:
z+=n[m.find(tmp)].lower()
else:
z+=t[i]
i+=1
return z
m='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
n='QWERTYUIOPASDFGHJKLZXCVBNM'
a=input('請輸入明文a=')
b=NewCaesar(m,n,a)
print('對應的密文為:',b)
c=NewCaesar(n,m,b)
print('解密后明文為:',c)
if a==c:
print('加密解密成功!')
else:
print('加密解密失敗!')
print()
input("運行完畢,請按回車鍵退出...")
37.人羊過河問題p83
def InsertQ(x,i):
global rear
if x not in Q:
rear+=1
Q.append(x)
F.append(front)
L.append(i)
def OutputR(front):
global n
if F[front]>0:
OutputR(F[front])
if L[front]>=0:
n+=1
print("第"+str(n)+"步:"+law[L[front]])
def OK(M,W,S,V):
return W!=S and S!=V or M==S
Q=[0];F=[0];L=[-1]
law=["移動人","移動人和狼","移動人和羊","移動人和菜"]
front=0;rear=0
while front<=rear:
x=Q[front]
if x==15:
break
V=x%2
S=x//2%2
W=x//4%2
M=x//8
if OK(1-M,W,S,V):
x=(1-M)*8+W*4+S*2+V
InsertQ(x,0)
if M==W and OK(1-M,1-W,S,V):
x=(1-M)*8+(1-W)*4+S*2+V
InsertQ(x,1)
if M==S and OK(1-M,W,1-S,V):
x=(1-M)*8+W*4+(1-S)*2+V
InsertQ(x,2)
if M==V and OK(1-M,W,S,1-V):
x=(1-M)*8+W*4+S*2+(1-V)
InsertQ(x,3)
front+=1
if x==15:
print("人狼羊菜過河游戲成功!")
n=0
OutputR(front)
else:
print("無法完成任務!")
print()
input('運行結束,按回車鍵退出...')
藥瓶污染問題p89
d=int(input('請輸入每顆藥丸的標準重量:'))
w=int(input('請輸入藥丸稱得的重量:'))
x=w-10*d
print('被污染的藥瓶序號是:',x)
input("運行完畢,請按回車鍵退出...")
39.誰是冠軍程序p91
champion=['A','B','C','D'] #設置選手列表
for i in champion: #循環讀取選手編號
cond=(i!='A') +(i=='C') + (i=='D')+(i!='D') #查找符合條件的選手
if cond==3: #說真話是否是3人
print("冠軍是:",i) #輸出冠軍
input("運行完畢,請按回車鍵退出...")
畫正弦曲線p94
import numpy as np #加載numpy模塊并取名為np
import matplotlib.pyplot as plt #加載matplotlib.pyplot并取名為plt
x=np.arange(0,2*np.pi,0.01) #x在0到2π之間,每隔0.01取一個點
y1=np.sin(x) #求sin(x)對應的y1值
y2=np.sin(-x) #求sin(-x)對應的y2值
y3=np.sin(2*x)/2 #求sin(2x)/2對應的y3值
plt.plot(x,y1) #繪制sin(x)圖像
plt.plot(x,y2) #繪制sin(-x)圖像
plt.plot(x,y3) #繪制sin(2*x)/2圖像
plt.title('sin(x)') #設置圖像標題
plt.xlabel('X') #設置X軸標題
plt.ylabel('Y') #設置Y軸標題
plt.show() #將繪制的函數圖像窗口顯示出來
input("運行完畢,請按回車鍵退出...")
求解數列兔子p97-P98
def fib(n):
#迭代求Fibonacci數列
f2=f1=1
for i in range(3,n+1):
f1,f2=f2,f1+f2
return f2
n=int(input('輸入需要計算的月份數:'))
print('兔子總對數為:',fib(n))
input("運行完畢,請按回車鍵退出...")
二分查找程序p101
x=int(input("請輸入要查找的1000以內的整數:"))
step=0
flag1=1
flag2=1000
while(flag1<=flag2):
mid=(flag1+flag2)//2
step=step+1
if mid>x:
flag2=mid-1
elif midflag1=mid+1
else:
break
print("查找次數為:",step)
input("運行完畢,請按回車鍵退出...")
漢諾塔移動游戲程序p104
def hanno(n,s,m,t):
#定義一個函數,n層塔,將盤子從s借助m移動到t
if n==1:
print(s,'-->',t) #將一個盤子從s移動到t
else:
hanno(n-1,s,t,m) #將前n-1個盤子從s移動到m上
print(s,'-->',t) #將最底下的最后一個盤子從s移動到t上
hanno(n-1,m,s,t) #將m上的n-1個盤子移動到t上
#主程序
n=int(input('請輸入漢諾塔的層數:'))
hanno(n,'A','B','C')
input("運行完畢,請按回車鍵退出...")

展開更多......

收起↑

資源預覽

<pre id="tfb94"><li id="tfb94"></li></pre>

<bdo id="tfb94"><rt id="tfb94"></rt></bdo>
  • <menu id="tfb94"><dl id="tfb94"></dl></menu><i id="tfb94"><acronym id="tfb94"><sub id="tfb94"></sub></acronym></i>

    1. 主站蜘蛛池模板: 平远县| 玛纳斯县| 青冈县| 台湾省| 辛集市| 洮南市| 探索| 陵水| 仁化县| 二连浩特市| 上蔡县| 屏东市| 会东县| 商都县| 阜阳市| 丰城市| 汉源县| 合作市| 广西| 平定县| 东台市| 开鲁县| 中西区| 大丰市| 外汇| 康乐县| 湘潭县| 蒙城县| 新晃| 丹江口市| 灯塔市| 荥经县| 安图县| 大足县| 巴林右旗| 永新县| 崇义县| 南澳县| 小金县| 武宣县| 古丈县|