西安網(wǎng)站建設(shè)hyk123網(wǎng)站制作培訓(xùn)
活動時間 從2023年3月1日至3月21日,每天一道編程題。
本次打卡的規(guī)則如下:
小朋友每天利用10~15分鐘做一道編程題,遇到問題就來群內(nèi)討論,我來給大家答疑。
小朋友做完題目后,截圖到朋友圈打卡并把打卡的截圖發(fā)到活動群,表示完成了今天的打卡。當(dāng)天晚上,我會把題目的答案發(fā)到群內(nèi)給小朋友們做個參考,我也會在朋友圈為打卡的小朋友點(diǎn)贊。
Day01:2021.09_小貓釣魚
小貓一共釣到了8條魚,小貓?zhí)暨x出長度小于6cm的魚放生了,剩下的魚保留下來。
1. 準(zhǔn)備工作
(1)導(dǎo)入名為“Beach Malibu”的舞臺背景;
(2)保留默認(rèn)的小貓角色;
(3)建立名為“魚”的列表,用于保存魚的長度。
2. 功能實(shí)現(xiàn)
(1)依次詢問“第幾條魚的長度”,通過鍵盤依次輸入8條魚的長度(只需要輸入數(shù)字),保存到列表“魚”中;
(2)當(dāng)按下s鍵時,從列表中找出長度小于6(不包括6)的項(xiàng),并刪除。
Day02:2021.06_從小到大排序
小猴子詢問輸入5個數(shù),存入列表后,將這些數(shù)字從小到大排列后重新存入列表。
1. 準(zhǔn)備工作
(1)保留舞臺默認(rèn)白色背景;
(2)刪除小貓角色,添加Monkey角色。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗,詢問“請輸入一個數(shù):”,等待輸入,重復(fù)5次輸入5個數(shù)字;
(2)將輸入的5個數(shù)保存到列表“數(shù)組”中;
(3)小猴子說“輸入的5個數(shù)字從小到大排序”,列表中的數(shù)字會小到大排列。
Day03:2020.12_解密
羅馬共和國的愷撒曾經(jīng)用一種特殊的加密方式和他的將軍們聯(lián)系,他是這樣做的:把一個單詞里的每一個字母都向后移,比如A向后移3位,變成D,B就變成E,以此類推。等到X的時候,會變成A,Y變成B,Z變成C。請你編寫一段腳本,在輸入加密內(nèi)容后,能夠還原出加密前的內(nèi)容。
1. 準(zhǔn)備工作
保留舞臺的小貓,白色背景。
2. 功能實(shí)現(xiàn)
點(diǎn)擊綠旗以后,輸入加密內(nèi)容,小貓會說出正確的加密前的內(nèi)容。比如輸入:“khoor”,小貓會說:“hello”。
Day04:2022.06_判斷閏年
閏年(Leap Year)是為了彌補(bǔ)因人為歷法規(guī)定造成的年度天數(shù)與地球?qū)嶋H公轉(zhuǎn)周期的時間差而設(shè)立的。沒有補(bǔ)上時間差的年份為平年。平年的二月只有28天,而閏年的二月有29天。那么如何判斷這一年是閏年還是平年呢,有這樣一個閏年的判斷方法:年份能被400整除,或者能被4整除但不能被100整除的都是閏年。
1. 準(zhǔn)備工作
(1)選擇背景blue sky2;
(2)選擇角色Abby。
2. 功能實(shí)現(xiàn)
(1)根據(jù)上述的閏年判斷方法,編程判斷用戶輸入的年份是閏年還是平年,例如:輸入2022,角色會說出:“2022是平年”;
(2)然后角色會再次進(jìn)行詢問:“你想知道這一年哪個月的天數(shù)?”,例如:輸入2,角色會說出:“2月有28天”。
Day05:2022.03_統(tǒng)計(jì)身高
列表中有10個同學(xué)的身高數(shù)據(jù),編寫程序, 將高于平均身高的數(shù)據(jù)找出來。
1. 準(zhǔn)備工作
(1)保留小貓角色及白色默認(rèn)背景;
(2)建立名為“身高1”和“身高2”的列表。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗,產(chǎn)生10個150-170的隨機(jī)數(shù),保存到列表“身高1”中;
(2)計(jì)算平均身高;
(3)將列表“身高1”中大于平均身高的數(shù)據(jù)保存到列表“身高2”中。
Day06:2020.06_階乘求和
輸入5,小貓會說出從1的階乘、2的階乘,一直到5的階乘的和。
注意:階乘可以!表示,5!=5*4*3*2*1
,4!=4*3*2*1
。
1. 準(zhǔn)備工作
(1)保留空白背景。
(2)保留小貓角色。
2. 功能實(shí)現(xiàn)
(1)詢問階乘數(shù)。
(2)角色小貓依次說出“1的階乘等于xxx”,"2的階乘等于xxx”,一直到輸入數(shù)的階乘。
(3)小貓最后說出階乘和。
Day07:2021.03_繩子算法
故事情境:最近在學(xué)繩子算術(shù)的小星星非常苦惱,他常常在想,如果有一款程序能實(shí)現(xiàn)根據(jù)輸入的兩根繩子長度,可以把兩根長繩截成長度相等的小段后,直接求出一共可以截成多少段,每段最長多少米就好了。小貓知道后,決定設(shè)計(jì)一個程序幫助小星星走出繩子算術(shù)的困境。
1. 準(zhǔn)備工作
(1)保留舞臺默認(rèn)白色背景及小貓角色,將小貓角色調(diào)整到舞臺上合適的位置;
(2)建立名為“繩子”的列表用于存儲數(shù)據(jù)。
舞臺效果如下圖所示。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗,詢問“輸入繩子長度”并等待;
(2)將輸入的繩子長度保存到列表“繩子”后,小貓分別說兩根繩子的長度3秒;
(3)根據(jù)輸入的兩根繩子長度,設(shè)計(jì)算法實(shí)現(xiàn):把兩根長繩截成長度相等的小段。求出一共可以截成多少段,每段最長多少米;
(4)計(jì)算完成后,小貓分別說“一共可以截成多少段,每段最長多少米?!?秒。
Day08:2021.09_找出出現(xiàn)次數(shù)最多的數(shù)字
找出出現(xiàn)次數(shù)最多的數(shù)字,如果有多個數(shù)字出現(xiàn)次數(shù)相同,則答案為后輸入的數(shù)字。
1. 準(zhǔn)備工作
(1)保留默認(rèn)的白色背景及小貓角色;
(2)建立名為“l(fā)ist”的列表。
2. 功能實(shí)現(xiàn)
(1)運(yùn)行程序,小貓?jiān)儐枴罢垎栆斎霂讉€數(shù)字?”
(2)小貓依次詢問“請輸入第x個數(shù)字”,將輸入的各個數(shù)字存放在列表“l(fā)ist”中。(x是指第幾個,例如:請輸入第1個數(shù)字;請輸入第2個數(shù)字)
(3)找出其中出現(xiàn)次數(shù)最多的數(shù)字,小貓說“出現(xiàn)次數(shù)最多的數(shù)字是xxx”。如果有多個數(shù)字出現(xiàn)的次數(shù)相等,都是最多的,小貓說出最后一個。(例如:小貓說“出現(xiàn)次數(shù)最多的數(shù)字是26“)
Day09:2022.06_逆序輸出
1. 準(zhǔn)備工作
(1)默認(rèn)小貓角色;
(2)默認(rèn)空白背景。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗后,隨機(jī)產(chǎn)生一個10-9999的數(shù),例如872,小貓說“產(chǎn)生的隨機(jī)數(shù)是:872” 2秒;
(2)計(jì)算出逆序,例如872,小貓說“這個數(shù)字的逆序是:278” 2秒。
Day10:2021.03_十字回文詩
十字回文詩,又稱為轉(zhuǎn)尾(鱗迭)連環(huán)回文詩,是古人創(chuàng)造的一種七言絕句詩體,由10個字連環(huán)往復(fù),讀成一首28個字的七絕。以清朝女詩人吳絳雪
《詠四季》中的春為例:鶯啼綠柳弄春晴曉月明,十個字回環(huán)往復(fù),可讀成以下28個字的七絕:
鶯啼綠柳弄春晴(前七個字,正序讀)
柳弄春晴曉月明(后七個字,正序讀)
明月曉晴春弄柳(后七個字,倒序讀)
晴春弄柳綠啼鶯(前七個字,倒序讀)
《詠四季》的另外三首分別為:
夏:香蓮碧水動風(fēng)涼夏日長
秋:秋江楚雁宿沙洲淺水流
冬:紅爐透炭炙寒冬遇雪風(fēng)
請根據(jù)十字回文詩的成詩規(guī)律,編寫程序,將《詠四季》讀成的四首七絕通過列表展示出來。
1. 準(zhǔn)備工作
(1)背景:保留初始背景“背景1”;
(2)角色:隱藏初始角色“角色1”(小貓);
(3)創(chuàng)建列表“詠四季·春”、“詠四季·夏”、“詠四季·秋”、“詠四季·冬”。
2. 功能實(shí)現(xiàn)
(1)將其中一首十字回文詩生成28字七絕;
(2)將另外三首十字回文詩生成七絕;
(3)使用自制積木對程序進(jìn)行抽象和化簡;
(4)命名規(guī)范易讀,并為代碼添加合理注釋。
提示:加粗紅色字可供復(fù)制。
Day11:2021.09_成語接龍
小貓從“一鳴驚人"開始岀題,以“人”字開頭接下一個成語,如果輸入的不是四字成語或者輸入成語的第一個字不是上一個成語的最后一個字,游戲結(jié)束。
1. 準(zhǔn)備工作
(1)保留舞臺默認(rèn)白色背景及小貓角色;
(2)建立名為“詞語接龍”的列表。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗,將“一鳴驚人”加入到列表后,小貓?jiān)儐枴耙圾Q驚人,請輸出以“人”開頭的四字成語”;
(2)輸入成語,如果用戶輸入的不是四個字或者輸入不匹配的詞語時,就說“游戲結(jié)束”,否則將正確的成語加入列表;
(3)繼續(xù)詢問,例如如果第2步輸入的是“人山人?!?#xff0c;小貓繼續(xù)詢問“人山人海,請輸入以“海”開頭的四字成語”,依次類推,直到游戲結(jié)束。
Day12:2021.12_新冠疫苗接種系統(tǒng)
根據(jù)國家最新防疫政策,年滿3歲的小朋友均需要接種新冠疫苗,現(xiàn)某幼兒園托管班有學(xué)生4名,出生日期分別是:20191016、20171220、20181206、20200101。請編寫一套系統(tǒng)幫助幼兒園篩選出符合條件的小朋友。
1. 準(zhǔn)備工作
(1)保留小貓角色,保留白色背景。
2. 功能實(shí)現(xiàn)
(1)設(shè)置名為“當(dāng)前日期”的變量獲取當(dāng)前的真實(shí)時間,當(dāng)前月和日不足兩位數(shù)時均用0填充;
(2)建立名為“出生日期”的列表,用于記錄小朋友的出生日期;
(3)點(diǎn)擊綠旗,初始化列表,加入四個小朋友的出生日期:20191016、20171220、20181206、20200101;
(3)按下空格鍵,小貓說出每個小朋友是否符合接種條件,如:2符合疫苗接種條件,或者2不符合疫苗接種條件。
Day13:2022.09_三個數(shù)排序
輸入三個數(shù),比較三個數(shù)的大小,并將這三個數(shù)按照從小到大的順序說出。
1. 準(zhǔn)備工作
(1)保留小貓角色,默認(rèn)位置;
(2)白色背景。
2. 功能實(shí)現(xiàn)
(1)依次詢問輸入三個數(shù);
(2)按下空格鍵,小貓從小到大說出三個數(shù),三個數(shù)之間用逗號隔開。
Day14:2021.12_森林運(yùn)動會
在森林運(yùn)動會中,小貓、小狗、小兔子、烏龜、小猴子參加了800米耐力跑項(xiàng)目,分別耗時3分25秒、4分15秒、3分45秒、4分45秒、4分5秒。請?jiān)O(shè)計(jì)程序?qū)崿F(xiàn)自動排名。
排序前
排序后
1. 準(zhǔn)備工作
(1)保留小貓角色及空白背景;
2. 功能實(shí)現(xiàn)
(1)建立名為“耐力跑”的列表,用于記錄運(yùn)動員的成績,以秒為單位;
(2)點(diǎn)擊綠旗,初始化列表,依次往列表中加入:205,255,225,285,245;
(3)點(diǎn)擊小貓,對運(yùn)動員的成績進(jìn)行降序排列。
Day15:2021.03_程序優(yōu)化
下圖第一行有1個正三角形,第二行有2個正三角形,第三行有3個正三角形,每一行的第1個正三角形是上下對齊的。
小剛想繪制這個圖形,便編寫了如下圖所示的程序,請根據(jù)要求優(yōu)化程序。
1. 準(zhǔn)備工作
(1)保留舞臺為默認(rèn)的白背景;
(2)保留默認(rèn)小貓角色,小貓?jiān)谖枧_中間位置。
2. 功能實(shí)現(xiàn)
(1)用鍵盤任意輸入一個數(shù)字表示行數(shù)(考慮到舞臺的大小,可以提醒輸入的數(shù)字在1-9之間),之后小貓會根據(jù)輸入的行數(shù)自動繪制一個多行的圖形(如果輸入5,那么就繪制5行);
(2)繪制的圖形規(guī)則為:假設(shè)繪制n行,第一行繪制一個三角形,第二行繪制2個三角形…第n行繪制n個正三角形;
(3)每行中任意兩個正三角形之間都間隔20個坐標(biāo)值,任意相鄰兩行的間隔也是20個坐標(biāo)值,每行的第1個三角形的x坐標(biāo)值是一樣的,即在同一列;
(4)要用函數(shù)繪制正三角形,用循環(huán)嵌套以及函數(shù)來優(yōu)化程序。
Day16:2020.09_奇偶之和
1. 準(zhǔn)備工作
(1)保留舞臺中的小貓角色;
2. 功能實(shí)現(xiàn)
(1)分別計(jì)算1~100中,奇數(shù)之和,偶數(shù)之和;
(2)說出奇數(shù)之和,偶數(shù)之和。
Day17:2019.12_排序
1. 準(zhǔn)備工作
(1)選擇空白背景;
(2)保留小貓角色。
2. 功能實(shí)現(xiàn)
(1)制作一個新的積木,文字標(biāo)簽為“排序”,添加三個輸入項(xiàng),以便于輸入三個待排序的數(shù)字;
(2)在自定義積木的三個輸入框中,輸入任意三個數(shù)字,點(diǎn)擊綠旗。
(3)名稱為“排序”的列表中,將按照從大到小的順序排列。
Day18:2022.12_簡易抗疫物資管理系統(tǒng)
1. 準(zhǔn)備工作
(1)角色:從角色庫中添加4個按鈕,添加文字“增加”、“刪除”、“修改”、“查詢”,修改角色名字為“增加按鈕”、“刪除按鈕”、“修改按鈕”、“查詢按鈕”;
(2)列表:新建列表“抗疫物資清單”。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊“增加按鈕”,詢問“請輸入物資名稱”,輸入物資名稱,若“抗疫物資清單”中已存在該物資,則提示“該物資已存在”;否則將物資名稱存入列表,并繼續(xù)詢問“請輸入該物資存量”,輸入物資存量后,將其存入列表中,再在下一項(xiàng)增加分隔標(biāo)記“------------”,最后提示“新物資已錄入”;
(2)點(diǎn)擊“刪除按鈕”,詢問“請輸入要刪除的物資名稱”,輸入物資名稱,若“抗疫物資清單”中存在該物資,則將列表中該物資名稱、物資數(shù)量及分隔標(biāo)記全部刪除,最后提示“刪除成功”;
(3)點(diǎn)擊“修改按鈕”,詢問“請輸入要修改的物資名稱”,若該物資存在,則繼續(xù)詢問“請輸入修改后的物資存量”,輸入物資存量后,更新該物資的存量,并提示“修改成功”;
(4)點(diǎn)擊“查詢按鈕”,詢問“請輸入要查詢的物資名稱”,若該物資存在,則提示當(dāng)前存量,例如:格式為“當(dāng)前【外科口罩】的剩余存量為【5000】件”。
Day19:2019.12_太空大戰(zhàn)
1. 準(zhǔn)備工作
(1)選擇Galaxy背景;
(2)選擇Rocketship角色、Ball角色和Balloon1角色。
2. 功能實(shí)現(xiàn)
(1)點(diǎn)擊綠旗后,Rocketship角色始終跟隨鼠標(biāo)移動,計(jì)時器開始計(jì)時;
(2)Balloon1角色出現(xiàn)在舞臺上方的隨機(jī)位置,大小隨機(jī),造型隨機(jī),間隔隨機(jī)0.5-3秒后,更換位置、大小和造型,如此重復(fù);
(3)點(diǎn)擊鼠標(biāo)后,發(fā)射子彈。Ball角色從當(dāng)前的Rocketship角色位置,向上方飛出,碰到邊緣后,消失。連續(xù)點(diǎn)擊鼠標(biāo),可連續(xù)發(fā)射子彈;
(4)子彈碰到Balloon1角色后,Balloon1角色消失,得分增加1,播放聲音“pop”提示。等待隨機(jī)0.5-3秒后,Balloon1角色重新出現(xiàn)在舞臺上方的隨機(jī)位置。
(5)游戲運(yùn)行20秒后,說出得分5秒后,停止運(yùn)行。
Day20:2021.06_計(jì)算三角形面積
編寫程序自動計(jì)算三角形的面積。手動輸入三角形的底和高,程序自動計(jì)算出三角形的面積,三角形的面積等于底*高/2。
1. 準(zhǔn)備工作
小貓角色,白色背景。
2. 功能實(shí)現(xiàn)
(1)詢問“請輸入三角形的底”,輸入一個數(shù)值;
(2)詢問“請輸入三角形的高”,輸入一個數(shù)值;
(3)小貓說“三角形的面積是xxx”2秒。
Day21:2022.03_求最大公約數(shù)
1. 準(zhǔn)備工作
(1)保留默認(rèn)白色背景和小貓角色。
2. 功能實(shí)現(xiàn)
(1)輸入兩個正整數(shù);
(2)小貓說出這兩個數(shù)的最大公約數(shù)。