Scratch3.0編程小課堂29(算法題:求階乘和)

2020-12-25 大河熱點

今天我們用scratch來做一道算法題,求階乘和。

題目:求1+2!+3!+…+n!。

你想求什麼數的階乘和呢,告訴小企鵝吧,它會一步一步把中間數的階乘都算出來告訴你,然後說出最終的計算結果;

角色:小企鵝;

知識點:階乘,變量,循環,連接模塊;

一、準備工作

1、普及新概念:階乘

階乘是基斯頓·卡曼(Christian Kramp,1760~1826)於 1808 年發明的運算符號,是數學術語。階乘指從1乘以2乘以3乘以4一直乘到所要求的數。例如所要求的數是4,則階乘式是1×2×3×4,得到的積是24,24就是4的階乘。任何大於1的自然數n階乘表示方法: n!=1×2×3×……×n  或 n!=n×(n-1)!

2、角色:角色庫中選擇「動物」類的小企鵝;

角色庫

選擇需要的造型,注意:小企鵝的其它造型也可以不刪除;

造型

3、變量:新建三個變量,分別命名為「n」、「階乘」、「階乘和」,其中變量「n」用來存儲要求階乘和的數,變量「階乘」用來存儲中間數的階乘,變量「階乘和」用來存儲最終的計算結果;

n
階乘
階乘和

二、編輯腳本

1、變量初始化:變量「n」和「階乘」初始狀態賦值1,變量「階乘和」初始狀態賦值0;

2、輸入要求階乘和的數n:使用「偵測」代碼的「詢問」模塊實現與用戶的交互,輸入需要求階乘和的數n;

偵測

3、計算中間數的階乘,循環n次,並讓小企鵝說出中間數的階乘;

4、循環變量n每次增加1,給變量「階乘和」循環賦值;

5、最終結果:循環結束後,使用三個運算代碼的「連接」模塊,連接表達式和計算結果變量「階乘和」;

三個連接模塊
說出結果

三、完整腳本

腳本

想一想,為什麼初始狀態要給變量「n」、「階乘」和「階乘和」分別賦不一樣的初始值呢?換一換可以嗎?試一試吧。

相關焦點

  • Scratch3.0編程小課堂33(算法題:冒泡排序)
    生成隨機數列排序完成題目:系統隨機生成5個1到100的數,程序使用冒泡排序法對它們進行從小到大的排序;角色:小精靈;知識點:冒泡排序,列表(鍊表),變量,循環,多重選擇;知識普及:冒泡排序(Bubble Sort)這個算法的名字由來是因為越小的元素會經由交換慢慢
  • 【學習現場】20181124的階乘末尾有多少個0?
    一個正整數的階乘(factorial)是所有小於及等於該數的正整數的積,並且0的階乘為1。自然數n的階乘寫作n!。亦即n!=1×2×3×...×n。階乘亦可以遞歸方式定義:0!=1,n!=(n-1)!×n。同時,小史也碰到一個問題,要編程求出20181124的階乘末尾有多少個0。
  • 《零基礎同時學Scratch3.0與C++算法編程》
    《零基礎同時學Scratch3.0與C++算法編程》課程目錄 《零基礎同時學Scratch3.0與C++算法編程》全套課程包括:1.30個Scratch3.0),每節微課視頻都由趙老師親自詳細演示每一行代碼每一種算法的編程和講解!
  • 教育 | 少兒編程,Scratch 3.0 介紹及入門視頻教程
    經過半年的積累,孩子的編程思維也就隨著養成了。現把入門資源做些介紹。這篇文章偏離了本訂閱號的主題,大家諒解。Scratch 3.0 介紹及入門視頻教程圖文/時進軍少兒編程一般針對的是小學及以下幼兒設計的編程模式,把原來複雜的英文代碼程式語言轉換成圖形化的,以指令化,模塊化方式讓遊戲,情景動畫,積木構件的形式呈現。
  • 用scratch編程來解「中國餘數定理——韓信點兵問題」
    70這個數字是5和7的倍數,並且除以3餘1,也就是說,任何一個數添加一個70之後,不會改變除以5和7的餘數,但是會在除以3的餘數中多1。這樣如果所求的數字除以3餘2,就應該包含2個70,即70×2。21這個數字是3和7的倍數,並且除以5餘1, 也就是說,任何一個數添加了一個21之後不會改變除以3和7的餘數,但是會在除以5的餘數中多1。這樣如果所求的數字除以5餘3, 就應該包含3個21,即21×3。
  • 算法分析:求n的階乘尾部0的個數
    return sum; }如果按照傳統思維解出題目,我們可以先利用上述方法求得n的階乘,再將該數餘10,若餘數為0,則代表尾數0的個數大於等於1。此時可以利用除數性質將其不斷除以10並計算除以10的次數,如果出現小數或除數小於10,則代表除盡,由此得出尾部0的個數(有的編譯器例如java中「/」運算只保留整數不保留小數,可以利用除以10後再乘以10的方法,看結果是否與原來數相等,也可利用DecimalFormat等保留小數)。也可將n的階乘轉換為字符串的形式,利用索引來得到尾部0的個數。
  • 藍橋杯簡單java遞歸算法
    java遞歸算法的5道小題。思路:本題給出了兩個常量F(0)=1,F(1)=1和一個算式F(n)=F(n-1)+F(n-2),那麼就可以設計一個函數,調用這個函數,當輸入的值為0或1的時候,返回1,當輸入n>2時,不斷的調用該函數,知道n=1為止,之後進行返回,算出F(n)的值。
  • scratch3.0圖形化編程製作「數字拆彈」小遊戲
    【原創】文章全部內容皆為作者原創,如有轉載請註明出處今天我們來製作一個解謎類遊戲,實際上就是「猜數字」遊戲的一個改編版,為了增加遊戲的趣味性,我添加了boom角色,簡單說的說一下遊戲流程和邏輯界面截圖準備兩個角色的貼圖用於「炸彈」和「爆炸效果」,這兩個貼圖是我在「慧編程」軟體中找到的,然後上傳到scratch中的(scratch圖庫中的角色實在太匱乏了)。
  • 兩個Scratch3.0視頻偵測的課堂教學小案例
    課程介紹:Scratch3.0遊戲編程課 三天大放價只需399元!與C++算法編程》1.30個Scratch3.0與C++程序原始碼;2.30節配套教學微課(7小時時長),逐行代碼講解;3.30個配套PPT文檔!
  • 【編程scratch】06 Scratch2.0實戰講解3套32課【好課優選分享】
    百度雲網盤下載為你準備好了【不亦樂乎】007【不亦說乎】人文通識三部 99【好課優選分享】【搶小貓系列】 搶小貓迪斯尼畫畫(完結)【好課優選分享】【搶小貓系列】02 搶小貓風靡美國創意美術【好課優選分享】【搶小貓系列】03 搶小貓繪畫課】【好課優選分享】【編程
  • 少兒創意編程scratch3.0安裝及窗口的組成
    Scratch是麻省理工學院的「終身幼兒園團隊」開發的圖形化編程工具,主要面對青少年開放。目前已有1.4版、2.0版本(增加克隆積木,Lego和Makey makey拓展積木)、3.0版本(增加視頻偵測、文字朗讀、翻譯等選擇性下載擴展積木,並增加micro:bit和Lego mindstorms EV3拓展積木)。所有人可以在任意版本中創作自己的程序。
  • 少兒編程scratch3.0中文
    Scratch是由麻省理工學院的「終身幼兒園團隊」設計開發的一款圖形化編程工具,旨在讓程序設計語言初學者不需要先學習語言語法便能設計產品,主要面對青少年開放。開發者期望通過使用Scratch,啟發和激勵用戶在愉快的環境下經由操作(如設計交互故事)去學習程序設計、數學和計算知識,同時獲得創造性思考、邏輯編程和協同工作的體驗。官方網址是麻省理工學院網站的一個分支。這個軟體的開發團隊稱為「終身幼兒園團隊」(Lifelong Kindergarten Group)。
  • 少兒編程 | 01.Scratch 3.0簡介
    歡迎參加這套Scratch3.0少兒編程課程的學習。本系列課程將通過視頻和圖文的方式進行(視頻製作中,後續會發布)。如果喜歡本系列課程,歡迎點擊訂閱關注或者轉發。這是本系列課程的第一課,主要是給家長看的,可以先對Scratch有個大概的了解。看完之後再讓小朋友按照後續課程學習。
  • Scratch3.0編程小課堂42(神奇的斐波那契曲線)
    神奇的斐波那契曲線5,8,13,21,34,55,89,144,233…這一數列看起來相當簡單,但卻隱藏著一些有趣的東西,如果從第0項開始,它的值是0 ,第1項是1,……那麼數列中後面的每一項都等於前兩項之和,稱為斐波那契數列(Fibonacci sequence)。
  • Scratch3.0正式上線 連接WeDo2.0 和 EV3解鎖編程新玩法
    Scratch,一種神奇的程式語言Scratch是由美國麻省理工學院開發的一種免費新型少兒程式語言,目前已在全球範圍內得到廣泛應用。學生、老師和家長們可以通過Scratch創造動畫、故事、遊戲等交互式媒體項目,並把這些項目共享到在線社區。而本次全新上線的Scratch 3.0,正是Scratch的升級版。
  • 少兒編程之scratch趣味編程:第四章Scratch3.0編輯器下載與安裝
    scratch3.0可以在線使用,也可以離線使用,它們各有優缺點。今天我們來了解一下scratch3.0離線編輯器的下載與安裝。我使用的電腦作業系統是windows的,所以我就以windows為例來講解一下。
  • Scratch 3.0 圖形化編程積木說明指南(自製積木和擴展積木)
    在scratch3.0共有十大類的積木可供我們使用(擴展積木算一大類)。本文檔將10大類、100多個積木列出,方便學生在需要的時候參考查閱。自製積木:這個分類中,可以創建自製積木。音樂積木:在scratch2.0中,音樂積木適合聲音積木放在一起的。考慮到拖鞋的難以掌握音樂積木,在scratch3.0中,這種類型的積木被拿的出來,放到了擴展積木之中,用戶可以根據自己的需要添加並使用。操作一個可以打節拍的樂器,並打出指定的節拍。
  • 程序設計與算法(一)C++語言程序設計
    計算郵資102299215最大數輸出102531416三角形判斷102353317判斷閏年102737118點和正方形的關係101904419簡單計算器102323420求一元二次方程的根101387321蘋果和蟲子21023170»1.5編程基礎之循環控制(45題)最新題目題目ID標題分數嘗試人數01求平均年齡103776102財務管理102740403均值102998404求整數的和與均值
  • Scratch入門編程書籍推薦,動手玩轉Scratch2.0編程,免費贈送
    隨著少兒編程的火爆,scratch的書籍也琳琅滿目,讓人挑花了眼。根據不同的年齡段我推薦幾本值得看的書《動手玩轉ScratchJr編程》是baiScratch創始人合著的,duScratch Jr 的官方教材,裡面包含動畫、故事和遊戲三方面的項目,圖文並茂,講解生動,適合5-7歲的小朋友入門。
  • 訪問和安裝Scratch 3.0
    為了方便讀者更好地閱讀和使用我的兩本Scratch 3.0圖書,李老師將選取初學者經常遇到的幾個問題,通過一篇篇簡短的文章,介紹如何訪問和安裝Scratch 3.0,如何下載和導入圖書的程序和素材等基礎的問題,幫助讀者更好地閱讀圖書和學習編程。