當前位置:編程學習大全網 - 編程語言 - 創建101編程

創建101編程

在這個互聯網時代,我們只需要在購物、拍照、打電話和瀏覽信息時帶上壹部智能手機。如果在20年前,要實現這些功能,需要帶很多東西。今天,我們口袋裏的電腦比50年前將宇航員送上月球的那臺功能更強大,體積更小。

為什麽計算機如此強大,能讀懂人類語言?直到我看了《為大家編程思維》這本書,解答了我的疑惑,了解了計算機的工作原理。所有這些功能都離不開程序員的編程設計。提到編程,人們總會想到程序員坐在電腦前,敲著壹長串神秘的代碼。事實上,編程體現了人類的智慧。

在《面向所有人的編程思維》壹書中,闡述了計算機的歷史、二進制工作原理以及如何創造編程思維。計算機編程需要邏輯、推理和數學。編程思維可以提高思維能力,創造性地解決問題。

學習編程思維不是掌握編碼技巧,而是學習壹種解決問題的思維方法。這本書有四章:學習編程思維;解決問題;學習編程語言;繼續努力。

這本書的作者吉姆·克裏斯蒂安(Jim Christian)是英國著名的科技教育專家,也是壹名編程極客。他獲得了Dobb博士的程序設計優秀獎。

讓我們看看計算機如何閱讀人類語言,我們如何用編程思維解決問題。

計算機的特點。

計算機是指能夠接收、轉換和存儲信息,然後以設定的形式輸出信息的電子設備。

電腦有各種形態:手機、平板電腦、臺式電腦、筆記本。雖然外形不同,但內部結構是相似的,包括:主板、網絡、輸入輸出設備、外部存儲器、隨機存取存儲器、微處理器。

微處理器就是人們常說的中央處理器或CPU,是計算機的大腦,負責處理“思考”工作。

在微處理器內部,有成千上萬個開關等待電信號的到來,這些電信號是通過通道和門的開關以二進制數字的形式產生的。壹個微處理器擁有的內核越多,它每秒可以運行的指令就越多。

編程就是把人的思想和想法翻譯成計算機能理解的二進制數字語言,翻譯成計算機需要執行的動作。

計算機的語言-二進制。

計算機中所有的輸入輸出都是通過對無數個由0和1組成的二進制數字進行編碼解碼,轉換成計算機可以識別的代碼來實現的。

二進制是1679,是德國天才大師萊布尼茨發明的。二進制是壹種計數方法,只使用0和1兩個數字,因為計算機只能識別由0和1組成的代碼。

數字0和1負責電腦中晶體管的開關,1表示開,0表示關。人們通過控制計算機內部晶體管的開關來引導電流進入正確的方向,實現程序運算,從而操作計數機。

我們工作生活中常見的算術是十進制,即每10進1。計算機的二進制規則是二進制1。1和0是計算機能理解的語言,表示開和關,是和不是,真和假。

在二進制中,數字1用1表示;數字2是10;數字3是11;數字4是100;數字8是1000。

如果用十進制,兩只手只能數到10,但如果用二進制,壹只手可以數到31。

如果用兩只手,可以數到1023,因為在二進制中,最後壹個手指的值是前壹個手指的兩倍。1手的小指代表16,另壹只手的拇指代表32,食指代表64,中指代表128,無名指代表256;小指代表512。

這個遊戲好玩,能鍛煉創新思維和邏輯思維。

二進制數也可以用來表示英語中的26個字母,數字1表示A;b用10;c用11;……

如果這組信息:10001010011001111,則拼寫為“妳好”。

計算機語言講究語法和語境。壹個逗號和壹個字母可以改變整個句子的意思。可以說,壹毫之差,差之千裏。

計算機編程語言經歷了三個階段:機器語言、匯編語言和高級語言。世界上有100多種編程語言,但常用的只有10-15。這裏有壹些編程語言。

算法

算法是為了完成某項任務而按照設定的順序執行的壹系列清晰的指令。算法中的指令越具體、越明確,指令運行時出錯的概率就越小。

例如,我們讓壹個叫小智的機器人鋪床。

因為小智不懂“整理床鋪”這種做法,我們對整理的要求是:整理好羽絨被、毛毯、枕頭,所以我們的指示要具體明確。

1.把羽絨被平鋪在床上。

2.把毯子均勻地鋪在羽絨被上。

3.把枕頭放在毯子上。

算法就像做菜用的菜譜,是計算機要執行的命令。讓我們來看看,給機器人小指令,用奶酪做壹個三明治。

妳看,上面的步驟裏,描述的很具體,包括如何握刀,刀口的方向。其實也可以具體到刀的角度和黃油塗抹的速度。

在步驟7-10中,指令中包含了塗抹黃油的時間,因為小智不知道多少黃油才夠,所以程序員大概需要三秒鐘的時間進行估算。

傳播

編程語言的設計要方便高效,寫算法的時候要做很多具體的指令,不僅繁瑣,而且重復。為了避免重復指令,在編程中,我們可以使用循環來處理壹些基本指令,使程序更簡單。

比如我們讓機器人小智走10步,我們要說10遍“給我走10步”。這樣的指令不僅繁瑣,而且在次數上也容易出錯。解決方法是用壹個循環:“向我走10步。”

循環是壹種執行重復指令直到進程結束的結構。有兩種循環:計數循環和條件循環。

計數周期是由次數控制的周期,稱為周期。不管結果如何,for循環總是重復指令。

條件循環通過條件控制循環的次數,這就是While循環。

在算法中使用loop,修改壹句話,可以讓編程工作量翻倍,達到事半功倍的效果。

比如在三明治的程序指令中,我們可以使用循環來提高效率。在步驟10之後,再增加壹條指令:重復上述步驟1-10。這樣機器人會反復工作,但會出現死循環。機器人會按照指令工作,不斷在面包片上塗黃油,直到面包片用完,最後程序崩潰。

為了避免這個缺陷,我們需要對程序進行修復,修改步驟11,重復上述步驟1-10,直到兩片面包都塗上黃油。這就增加了壹個特定的條件,讓機器人的操作更加完美。

可變的

編程中經常會遇到變量。變量就像壹個標有變量名和值的盒子。

在電子遊戲中經常會遇到變量,比如遊戲角色還剩多少條命,命的數量就是壹個變量。

我們人體也是有變量的,比如頭發的長短,身高體重的變化,年齡的增長。

讓我們玩壹個猜年齡的遊戲。

在這個遊戲中,程序中的年齡適合任何年齡的人。人的年齡是變量名,年齡的值是變量值。可以寫成:((年齡×2+1)×5+5)×10-100 = =年齡。

經過計算,左邊公式的最終結果是100乘以年齡。如果劃掉最後兩個零,自然就是年齡了。這個遊戲在玩數學魔術。

條件語句

條件語句是計算機根據給定信息做出選擇的語句。

在生活中,我們每天都要根據條件做出選擇。舉個例子,如果人行道的信號燈是紅色的,那麽我們就要等綠燈,否則我們可能會被車撞倒。

我們來做壹個與條件語句相關的問題:如果妳去找妳的朋友約翰還錢,結果發現約翰、詹姆斯和威廉是同卵三胞胎。有人告訴妳,約翰和詹姆斯總是說謊,只有威廉說真話。妳只能問壹句話來確認這個人是不是約翰。妳會問什麽?

正確答案是:“妳是詹姆斯嗎?”因為威廉說了實話:“沒有”詹姆斯撒謊:“沒有”,只有約翰說了謊,只有他壹個人回答“有”。

試運行測試/調試

“調試”壹詞起源於20世紀40年代,由美國的少將·格蕾絲·赫伯提出。她在哈佛大學給電腦寫程序的時候,發現壹個真正的bug鉆進了電腦,導致電腦無法正常運行,調試(調試去除bug)也由此而來。

調試就是仔細檢查編寫過程、算法和流程圖,排除和修復導致程序無法正常運行的問題或錯誤。

在編寫程序的過程中,計算機只執行接受的指令,不像人壹樣思考。所以程序寫好之後,要花很多時間調試代碼。

調試的常用方法有:尋找bug(程序錯誤);註釋代碼;小黃鴨的調試方法。

小黃鴨調試法看似愚蠢,但很有效。就是把壹只小黃鴨放在電腦旁邊,然後給壹無所知的小黃鴨講解程序的所有細節。

這種方法的秘訣在於,程序員在向不懂編程的人解釋代碼是如何運行的時候,必須非常詳細地解釋代碼運行的細節,這樣程序員才會發現程序中的錯誤,自己解決問題。

編程思維包括理性推理、邏輯思維和數學運算。學習編程思維,可以創造性地解決問題,表達思想。

編程思維有四個部分:問題分解;模式識別;抽象思維;算法設計。

問題分解

模式識別

比如我們要登錄壹些網站,會被要求輸入驗證碼,也就是模式識別,為了防止別人冒充用戶打開其他功能。

抽象思維

當妳運用抽象思維時,妳應該扔掉與問題無關的信息。

比如妳周日下午兩點要去打球,妳家離球場5.2公裏。早上還要澆花拖地,中午還要去妳媽家吃飯。估計壹點鐘能看完,她家離球場3.5公裏。所以在壹點和兩點之間妳要走多遠?

在所有信息中,澆花拖地和去球場無關,因為我媽家離球場更近,唯壹相關的信息只有壹條:我媽家離球場3.5公裏。

算法設計

妳壹定聽說過數學天才高斯的故事。1785中,高斯老師給學生出了壹道題,把1到100的所有數字加起來。老師原本想多占點課堂時間,但出乎他意料的是,年僅8歲的高斯很快給出了答案:5050。

那時候還沒有電腦,高斯從頭到尾都沒有把數字壹個壹個加起來。

我們來看看高斯是怎麽用編程思維解決問題的。

首先是問題分解。他把壹個大問題分解成小問題,找出每組數字的規律性,即每對首尾數字相加得到同壹個數。

其次,形成自己的模式識別,可以打亂順序。把所有的數字加起來就行了,1+100 = 101,2+99 = 101...,還有50組從頭到尾加起來等於65438+。

第三,它采用抽象思維,省略了不必要的算術步驟,不需要把第壹個和最後壹個數字依次加到最後壹組。

最後設計算法,通過乘法運算:50×101=5050。

計算機再強大,也是人類賦予的。真正厲害的是人腦。

隨著互聯網的發展,人們的生活已經離不開電腦,比如用手機打電話、聽歌、拍照;用電腦發郵件,瀏覽財經信息;在超市買東西,只需要掃碼,電腦就會自動結算金額,核對賬單。

《人人編程思維》這本書告訴我們,編程是人和計算機之間的橋梁,人類通過編程創造了壹個更美好的世界。我們不壹定要學編程,但是要學編程思維。

編程思維是我們解決問題的元技能,與我們的生活息息相關。工作、學習甚至家務都離不開編程思維的邏輯能力和創造力。學習編程思維就是學習思考。

  • 上一篇:學歷越高,工資就越高嗎?
  • 下一篇:面向對象編程的重要性在哪
  • copyright 2024編程學習大全網