python系統學習1-程序設計的基本方法

一、程序設計基本方法

  • 計算機與程序設計

  • 編譯和解釋

  • 程序的基本編寫方法

  • 計算機編程

1、計算機與程序設計

(1)、計算機是根據指令操作數據的設備

  • 功能性:對數據的操作、表現為數據計算、輸出輸入處理和結果存儲。

  • 可編程性:根據一系列指令自動的地、可預測地、準確地完成操作者地意圖。

(2)、計算機的發展參照摩爾定律,表現為指數形式

  • 計算機硬件所依賴的集成電路規模參照摩爾定律發展。

  • 計算機運行速度因此也接近幾何指數快速增長。

  • 同時計算機所能高效支撐的各類運算功能不斷豐富發展。

摩爾定律 Moore's Law

計算機發展歷史上最重要的預測法則,Intel公司創始人之一戈登摩爾在1965年提出。

  • 單位面積集成電路上可容納晶體管的數量約每兩年翻一番。

  • CPU/GPU、內存、硬盤、電子產品價格等都遵循摩爾定律。

(3)、程序設計

程序設計是計算機可編程性的體現

  • 程序設計,亦稱編程,深度應用計算機的主要手段。

  • 程序設計已經成為當今社會需求量最大的職業技能之一。

  • 很多崗位都將被計算機程序接管,程序設計將是生存技能。

(4)、程序設計語言

程序設計語言是一種用于交互(交流)的人造語言。

  • 程序設計語言,亦稱編程語言,程序設計的具體實現方式。

  • 編程語言相比自然語言更簡單、更嚴謹、更精確。

  • 編程語言主要用于人類和計算機之間的交互。

編程語言種類很多,但生命力強勁的卻不多。

  • 編程語言有超過600種,但絕大部分都不再使用。

  • C語言誕生于1972年,它是第一個被廣泛使用的編程語言。

  • Python語言誕生于1990年,它是最流行最好用的編程語言。

2、編譯和解釋

(1)、編程語言的執行方式

編程語言按照執行方式劃分:編譯和解釋

源代碼:采用某種編程語言編寫的計算機程序,人類可讀

? 例如:result = 2 + 3

目標代碼: 計算機可以直接執行,人類不可讀(專家除外)

? 例如:11010010 00111011

(2)、程序執行的兩種方式: 編譯和解釋

  • 編譯:將源代碼一次性轉換成目標代碼的過程

  • 解釋:將源代碼逐條轉換成目標代碼同時逐條運行的過程

執行解釋過程的程序叫作解釋器。

  • 編譯:一次性翻譯,之后不再需要源代碼(類似英文翻譯)。

  • 解釋: 每次程序運行時隨翻譯隨執行(類似實時的同聲傳譯)。

根據這兩種執行方式的不同,可以將編程語言分為兩類:

  • 靜態語言:使用編譯執行的編程語言

    • C/C++、JAVA語言

  • 腳本語言: 使用解釋執行的編程語言

    • Python語言、JavaScript語言、PHP語言

    ?

(3)、靜態語言和腳本語言

執行方式不同,優勢各有不同

  • 靜態語言: 編譯器一次性生成目標代碼,

    • 優化更充分,運行速度更快。

  • 腳本語言:執行程序需要源代碼,維護更靈活。

    • 源代碼維護靈活,跨多個操作系統平臺。

3、程序的基本編寫方法

(1)、IPO

  • IPO

    • I Input輸入,程序的輸入

    • P Process處理,程序的主要邏輯

    • O Output 輸出,程序的輸出

  • 理解IPO

    • 程序的輸入

      • 文件輸入、網絡輸入、控制太輸入、交互界面輸入、內部參數輸入等

      • 輸入是一個程序的開始

    • 程序的輸出

      • 控制臺輸出、圖形輸出、文件輸出、網絡輸出、操作系統內部變量輸出等

      • 輸出時程序展示運算結果的方式

    • 處理

      • 處理是程序對輸入數據進行計算產生輸出結果的過程。

      • 處理方法統稱為算法,它是程序最重要的部分。

      • 算法是一個程序的靈魂。

    ?

(2)、問題的計算部分

  • 一個待解決問題中,可以用程序輔助完成的部分

    • 計算機只能解決計算問題,即問題的計算部分

    • 一個問題可能有多種角度理解,產生不同的計算部分。

    • 問題的計算部分一般都有輸入、處理和輸出過程。

(3)、編程解決問題的步驟

6個步驟(1-3)

  • 分析問題:分析問題的計算部分,想清楚

    • 用編程解決問題的哪一個計算需求

  • 劃分邊界:劃分問題的功能邊界,規劃IPO

  • 設計算法:設計問題的求解算法,關注算法

  • 編寫程序:編寫問題的計算程序,編程序

  • 測試程序:調試程序使正確運行,測試運行

  • 升級維護:適應問題的升級維護,更新完善

求解計算問題的精簡步驟

  • 確定IPO:明確計算部分及功能邊界

  • 編寫程序:將計算求解的設計編程現實

  • 調試程序:確保程序按照正確邏輯能夠正確運行

4、計算機編程

(1)、編程的優點

1)、編程可以訓練思維

  • 編程體現了一種抽象交互關系、自動化執行的思維模式

  • 計算思維:區別數學為代表的邏輯思維和以物理為代表的實證思維的第三種思維模式

  • 能夠促進人類思考,增進觀察力和深化對交互關系的理解

2)、編程能夠增進認識

  • 編程不單是求解計算問題

  • 不僅是思考解決方法、還要思考用戶體驗、執行效率等

  • 能夠幫助程序員加深用戶行為以及社會和文化認識

3)、編程能夠帶來樂趣

  • 編程能夠提供展示自身思想和能力的舞臺

  • 讓世界增加新的顏色、讓自己變得更酷、提升心里滿足

  • 在信息空間里思考創新、將創新變為現實

4)、編程能夠提高效率

  • 能夠更好的利用計算機解決問題

  • 顯著提高工作、生活和學習效率

  • 為理想的實現提供一種借助計算機的高效手段

5)、編程帶來就業機會

  • 程序員是信息時代最重要的工作崗位之一

  • 國內外對程序員崗位的缺口都在百萬以上規模

  • 計算機已經滲透各個行業,就業前景非常廣闊

(2)、學習編程的誤區

掌握方法:

  • 首先,掌握編程語言的語法,熟悉基本概念和邏輯

  • 其次,結合計算問題思考程序結構,會使用編程套路

  • 最后,參照案例多練習多實踐,學會舉一反三

    ?

小結:

  • 計算機的功能性和可編程性

  • 編譯和解釋、靜態語言和腳本語言

  • IPO、理解問題的計算部分

  • 掌握計算機編程的價值

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/273948.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/273948.shtml
英文地址,請注明出處:http://en.pswp.cn/news/273948.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python 系統學習實例1.1 - 華氏度與攝氏度的轉換

# C ( F - 32 ) / 1.8???????????????????????????????????????????????????????????????????????????????? # F C * 1.8 32?????????????????????????????…

EMS問題

如果EMS啟動后在運行時報出 JMS error: "Not allowed to create destination這個錯誤,可能就是你啟動方式的問題了進入到EMS的安裝目錄的bin目錄下,運行tibemsca.bat那個文件就好使了。轉載于:https://www.cnblogs.com/xiaotianyu/p/3421737.html

python 系統學習實例1.2 - 人民幣與美元的轉換

# RMB USD / 6.78???????????????????????????????????????????????????????????????????????????????? # USD RMB* 6.78 def tempConvert(): t input("請輸入數值:") …

HDTV(1920x1080)碼率和視頻質量關系的研究 2 (實驗結果)

上一篇文章中介紹了實驗的準備工作, HDTV(1920x1080)碼率和視頻質量關系的研究 1 (前期準備) 本文介紹一下實驗的結果。 首先來看一下主觀評價的試驗結果: 從實驗結果來看,可以得出以下結論&…

python爬蟲--如何爬取翻頁url不變的網站

參考 https://blog.csdn.net/c350577169/article/details/80410133

POJ 1745 Divisibility DP

POJ:http://poj.org/problem?id1745 A完這題去買福鼎肉片,和舍友去買滴~舍友感慨“這一天可以賣好幾百份,每份就算賺一塊錢。。那么一個月。。一年。。。” 我說“那我們以后去賣這個吧,餓了還能自己煮著吃” 哈哈,一群天真的少…

NGUI如何創建自己的精靈圖集

說實話其實很簡單,但是在不知道的情況下真的不好弄啊. 1. 選擇你要制作精靈圖集的圖片,可以選擇多張 2. 提倡使用快捷鍵Alt Shift M 會有如下窗口彈出,也可以NGUI --> Open-->Atlas Maker打開 我們看到在Sprites里面就是我們選擇的要制作圖集的圖片 當在Replace后面的輸…

C++ - 進階 1002

This time, you are supposed to find AB where A and B are two polynomials. Input Specification: Each input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial: K N?1?? a?N?1???? N?2??…

修改6S Fortran77 代碼,建立查找表

逐像元大氣校正,常預先計算查找表(LUT,LookUp Tabel),6S大氣輻射傳輸模式也可以用來計算LUT。但6S源程序輸出信息多,且浮點數輸出精度低,不利于提取關鍵信息生成LUT,本文描述了怎樣修…

c++ 實例

#include "stdafx.h" #include <iostream> using namespace std; int main() { int a; a 4; cout<<a<<endl; return 0; }

VMware虛擬機與宿主無法復制的解決辦法

由于工作需要&#xff0c;上網機器使用虛擬機&#xff0c;因此需要經常來回的拷貝文件&#xff0c;而vmware從6.5一直走來到10.0.1&#xff0c;總是有一個問題很讓人苦惱---共享粘貼板總是會無故失效。經常實驗&#xff0c;發現可以經過以下方法臨時解決一下&#xff0c;雖然不…

c++ pat 乙級 --1001?害死人不償命的(3n+1)猜想

1001 害死人不償命的(3n1)猜想 &#xff08;15 分&#xff09; 卡拉茲(Callatz)猜想&#xff1a; 對任何一個正整數 n&#xff0c;如果它是偶數&#xff0c;那么把它砍掉一半&#xff1b;如果它是奇數&#xff0c;那么把 (3n1) 砍掉一半。這樣一直反復砍下去&#xff0c;最后…

【開源項目之路】jquery的build問題

在剛開始clone了jquery到本地build的時候&#xff0c;就遇到了問題。 “ENORESTARGET No tag found that was able to satisfy ...” 提示為bower install失敗&#xff0c;反復查找原因&#xff0c;最后在這兒看到同樣類似的問題&#xff0c;貌似是git協議的連接問題&#xff0…

適配ios7

if ([self respondsToSelector:selector(edgesForExtendedLayout)]){self.edgesForExtendedLayout UIRectEdgeNone;self.extendedLayoutIncludesOpaqueBars NO;self.modalPresentationCapturesStatusBarAppearance NO;} 轉載于:https://www.cnblogs.com/jiackyan/p/3441378.…

c++ pat 乙級 -------1002 讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。

1002 寫出這個數 &#xff08;20 分&#xff09; 讀入一個正整數 n&#xff0c;計算其各位數字之和&#xff0c;用漢語拼音寫出和的每一位數字。 輸入格式&#xff1a; 每個測試輸入包含 1 個測試用例&#xff0c;即給出自然數 n 的值。這里保證 n 小于 10?100??。 輸出…

USACO SEC.1.3 No.1 Mixing Milk

題意&#xff1a;需要收購總數為N的牛奶&#xff0c;現在有M個牛奶供應商&#xff08;總量足夠&#xff09;&#xff0c;給出總數和單價&#xff0c;求最小的花銷。 核心&#xff1a;基本的貪心解法&#xff0c;按單價排序逐個選取。 目的在于熟悉基本的貪心法的基本方法和思路…

c++ 獲取數組的長度

//獲得數組的長度 template<typename T> int count(T& x) { int s1 sizeof(x); int s2 sizeof(x[0]); int result s1 / s2; return result; }

[WPF疑難] 繼承自定義窗口

[WPF疑難] 繼承自定義窗口 原文 [WPF疑難] 繼承自定義窗口 [WPF疑難] 繼承自定義窗口 周銀輝 項目中有不少的彈出窗口&#xff0c;按照美工的設計其外邊框&#xff08;包括最大化&#xff0c;最小化&#xff0c;關閉等按鈕&#xff09;自然不同于Window自身的&#xff0c;但每個…

c++ #includecstring

其中包含了眾多的函數調用。

單獨使用modelsim進行仿真

以例子來說明 我要用testbench lpf_direct_tb.v 來測試文件lpf_direct.v 命令行方式和圖形界面兩種方式都可以 1 映射庫 .在編譯源文件之前,創建一個庫存放編譯的結果. vlib lpf_direct_tb 把庫映射到工作目錄 vmap work lpf_direct_tb 2編譯設計文件 vlog lpf_direct.v lpf_di…