1 / 118

高一電腦

高一電腦. Pascal. 電腦教室使用規則. 請勿帶食物、飲料 ( 水 ) 等進入電腦教室。 教室外有餐桌供同學進食或暫放食物。牆上有抹布及清潔劑供同學使用後清潔桌面。 不得擅自更動或破壞電腦教室的設備或連線配置。 不得在電腦上玩任何遊戲。 不得使用即時通訊軟體。. 課程規劃. 第一學期分兩部份: 上半學期:每週兩節課,上程式設計。 下半學期:每週一節課,上電腦概論。 第二學期:電腦應用專題報告。. 鼓勵同學多講話. 講話要大聲講 講話的時機 心中有一些自己的想法 回答問題 看同學有無聽課 確認同學有無聽懂 引導同學思考 心中有疑問,聽不懂.

idra
Download Presentation

高一電腦

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 高一電腦 Pascal

  2. 電腦教室使用規則 • 請勿帶食物、飲料(水)等進入電腦教室。教室外有餐桌供同學進食或暫放食物。牆上有抹布及清潔劑供同學使用後清潔桌面。 • 不得擅自更動或破壞電腦教室的設備或連線配置。 • 不得在電腦上玩任何遊戲。 • 不得使用即時通訊軟體。

  3. 課程規劃 • 第一學期分兩部份:上半學期:每週兩節課,上程式設計。下半學期:每週一節課,上電腦概論。 • 第二學期:電腦應用專題報告。

  4. 鼓勵同學多講話 • 講話要大聲講 • 講話的時機 • 心中有一些自己的想法 • 回答問題 • 看同學有無聽課 • 確認同學有無聽懂 • 引導同學思考 • 心中有疑問,聽不懂

  5. 程式語言 • 語言分兩種: • 自然語言 • 中文、英文、法文….等 • 程式語言 • BASIC、C、C++、Java、Fortran、COBOL、Pascal、Prolog、Ada、Forth、LISP….

  6. 本課程所使用的語言 必須符合以下的原則: • 適合初學者 • 合適者:BASIC、Pascal • 不合適者:C、C++、Java • 有免費的編譯器 • Visual BASIC 無免費編譯器,學生用教育版每套約 NT$ 2,000。

  7. C、C++ 版本 if (age>16) printf(“%s”, “You are safe for dating.”);else printf(“%s”, “You are too young to date.”);

  8. Pascal 版本 if age > 16 then writeln (‘You are safe for dating.’)else writeln (‘You are too young to date.’);

  9. Pascal 的編譯器 • Turbo Pascal ->Quick BASIC • Delphi ->Visual BASIC • Lazarus (拉撒路) (免費的) • www.lazarus.freepascal.org

  10. 開新檔案

  11. Hello, World! • 指令格式:指令 (參數) • write 指令 • 中斷點 • writeln 指令 • 指令分隔字元: ; • 復習指令格式中參數的意義 • 存檔

  12. 作業1 • 到官方網站下載並安裝 Lazaruswww.lazarus.freepascal.org • 到 File / New 選 Project / Custom Program 並撰寫一個 Hello, World! 程式。

  13. 作業一定要做! • 作業不檢查,不算成績,但是一定要做! • 如果有作業,下一週就會有考試。 • 不做作業很容易被當。 • 作業不可以拖到上課前一天才寫,因為如果碰到困難就沒有時間解決。 • 作業一定要自已做,看懂別人寫的程式不代表自己會寫程式。 • 作業都有寫,問題都有解決,你不會被當!

  14. 老師的網頁 • http://ncmail.pcsh.tpc.edu.tw/~cpkuo • 或是到學校首頁的「親親我師」中去找我的名字 (郭兆平)。

  15. 運算符號 • 加法:+ • 減法:- • 乘法:* • 除法:div (商)mod (餘數)/ (小數)

  16. 運算子的優先順序 • 1 + 2 * 3 = 7(1 + 2) * 3 = 9 • 1 - 2 - 3 = -41 - (2 - 3) = 2 * 在 Pascal 中,不管有幾層,一律使用小括號 ()。

  17. 定義變數 • 語法:Var 變數名稱 : 資料型態 ; • Var 必須出現於 begin 之前,而不是 begin 與 end. 之間 • 程式一開始執行時,所定義的變數中的值為一個未知的值,而且每次執行時有可能會不同。所以在使用一個變數之前,都需要先給它一個值。

  18. := 指令 • := 指令的語法變數 := 值 (運算式) • := 指令會把其右側的「值」指定給其左側的「變數」 • 其目的就是要把「變數」「改成」其右側所指定的「值」

  19. 作業2 • x 代表一個 8 位數的統一發票號碼,請顯示這張發票號碼的倒數第 3 碼。 • 例如:若 x 為 12345678 則顯示 6   若 x 為 87654321 則顯示 3 • 參考程式: program last3; var x : integer; begin x := 12345678; writeln () end.

  20. 程式設計考試規則 • Open Book 考試 • 可以看筆記 (整本、非單張)、老師資料夾 • 考試中不得向他人借用任何資料 • 不得看他人的螢幕,答對的同學也不可以。 • 做出來的同學請舉手,如果答對了,老師會把視窗縮小,請勿打開、關閉或把答案刪掉。 • 如果答錯了,老師會說:「xx號同學繼續努力!」這時你應該要用更多不同的數據來測試你的程式。

  21. 考題1-1 • x 代表一個 8 位數的統一發票號碼,請顯示這張發票號碼,只是末 3 碼要改成 888。 • 例如:若 x 為 12345678 則顯示 12345888   若 x 為 87654321 則顯示 87654888 • 參考程式: program last3; var x : integer; begin x := 12345678; writeln () end.

  22. 考題1-2 • a, b 分別為兩個正整數,請顯示 a 除以 b 的商到小數點以下 2 位數。小數點以下第 3 位以後無條件捨去。 • 例如:若 a 為 11, b 為 4 則顯示 2.75 • 參考程式: program dec2; var a, b: integer; begin a := 11; b := 4; write (a div b, '.'); writeln (); end.

  23. 考題1-3 • x 代表一個電腦教室的座號,請顯示 x 所在那排的最前面座位 (排頭) 的座號。 • 若 x 為 13 則顯示 5若 x 為 24 則顯示 8 • 參考程式: program seat; var x : integer; begin x := 24; writeln () end.

  24. 考題1-4 • 電腦課要求同學要分組做期末報告,分組的方式為依座號順序,每 3 個人一組。如:1, 2, 3 一組,4, 5, 6 一組….。每組第一個人為組長。若 x 代表一個座號,請顯示 x 的組長的座號。 • 若 x 為 13 則顯示 13若 x 為 24 則顯示 22 • 參考程式: program head; var x : integer; begin x := 24; writeln () end.

  25. 考題1-5 • x 代表 2006 年 9 月的一個日期,請顯示那天是星期幾。0 代表星期日、1 代表星期一….以此類推。 • 若 x 為 13 則顯示 3若 x 為 24 則顯示 0 • 參考程式: program week; var x : integer; begin x := 24; writeln () end.

  26. 考題1-6 • a 代表電腦課在星期幾,b 代表今天星期幾。請算出下一次電腦課距離今天還有幾天。注意:0 代表星期日,1代表星期一….以此類推。如果今天就有電腦課,請顯示 0。 • 若 a 為 1,b 為 3,則顯示 5。若 a 為 5,b 為 2,則顯示 3。 • 參考程式: program days; var a : integer; {電腦課星期幾} b : integer; {今天星期幾} begin a := 1; b := 3; writeln () end.

  27. 考題1-7 • a, b 分別為兩個正整數,請顯示 a 除以 b 無條件進位後的商。 • 若 a 為 11, b 為 4 則顯示 3若 a 為 16, b 為 4 則顯示 4 • 參考程式: program roundup; var a, b: integer; begin a := 11; b := 4; writeln (); end.

  28. Turbo Delphi 安裝程序 • 先忽略光碟自動執行的畫面。 • 先安裝以下的先備元件 (prerequisites): • \prereqs\dotNETRedist\dotnetfx.exe • \prereqs\dotNETSDK\setup.exe • \prereqs\dotNETJSharp\vjredist.exe • \prereqs\MSXML\msxml.msi • 將授權檔 \prereqs\reg736.txt 複製到「C:\Documents and Settings\(使用者名稱)\」子目錄下。

  29. Turbo Delphi 安裝程序 • 回到光碟自動執行畫面,(或執行 \install.exe 檔案),選擇「Install Borland Turbo Delphi」。 • 按指示完成安裝程序。(所有選項都不用改變,以預設值進行安裝即可。)

  30. 開新檔案 在主選單上選 File / New / Other 在對話框上選 Console Application

  31. 第 1, 8, 10 行是 Pascal 語言必須的元素。 第 3 行是 Turbo Delphi 指定 Console 模式必須的指令。 第 5, 6, 9 行目前可以刪除。 program Project1; {$APPTYPE CONSOLE} uses SysUtils; begin { TODO -oUser -cConsole Main : Insert code here } end. 新增的程式內容 這行不能刪哦!

  32. 儲存檔案 • 儲存檔案的方法: • 在主選單上按 File / Save

  33. Readln 指令 • Readln 用來從畫面上輸入資料。 • 當執行到 readln 指令,程式會停下來,等待使用者輸入。 • 使用者所輸入的資料會放在 readln 指令後面 ( ) 中所指定的變數中。 • 可以用 readln 指令來取代程式最後的中斷點。 • 注意:就像 := 的左邊只能放一個變數一樣,readln 的 ( ) 中也只能放變數,不能放運算式。

  34. 運算子 • 算術運算子 數 ◆ 數 → 數+, -, *, /, div, mod • 關係運算子 數 ◆ 數 → 邏輯值>, <, >=, <=, =, <>

  35. 資料型態 • 文字:string • 數字:integer, real • 邏輯值:boolean

  36. if … then …敘述 • 語法:if 邏輯值then 敘述 ;或if 邏輯值then 敘述1 else 敘述2 ; • 以上語法也可表示成:if 邏輯值then 敘述1 [ else 敘述2 ];

  37. 運算子的優先順序 • 關係運算子的優先順序比算術運算子要低。

  38. 考題2-1 • 電腦課要求同學要分組做期末報告,分組的方式為依座號順序,每 3 個人一組。如:1, 2, 3 一組,4, 5, 6 一組….。輸入兩位同學的座號,判斷他們是否在同一組。 • 參考程式: program group; {$APPTYPE CONSOLE} var a, b: integer; begin write ('同學甲:'); readln (a); write ('同學乙:'); readln (b); writeln ('同組') writeln ('不同組'); readln; end.

  39. 考題 2-2 • 某公司舉辦「泰好康」抽獎活動,只要你的身分證號碼和七、八月的統一發票特獎號碼(50553673)最後一碼相同,就可以獲得免費泰國來回機票一張。請讓使用者輸入他身分證字號不含英文字母的後9碼,判斷他是否中獎。 • 參考程式: program thai; {$APPTYPE CONSOLE} var id: integer; begin write ('請輸入身分證號碼的後九碼:'); readln (id); writeln ('恭喜你,中了免費泰國來回機票一張!') writeln ('對不起,你沒中獎。'); readln; end.

  40. 考題 2-3 • 輸入一個座號,判斷該生是坐在電腦教室的左半邊或右半邊。 • 參考程式: program seat; {$APPTYPE CONSOLE} var x: integer; begin write ('請輸入座號:'); readln (x); writeln ('左側') writeln ('右側'); readln; end.

  41. 考題2-4 • 輸入 2006 年 10 月的任一日期,請判斷這天是上班日 (星期一 ~ 五) 或週休日 (星期六、日)。 • 參考程式: program work; {$APPTYPE CONSOLE} var x: integer; begin write ('請輸入日期:'); readln (x); writeln ('上班日') writeln ('週休日'); readln; end.

  42. 考題 2-5 • 右圖為某自強號車廂的座位配置。輸入一個座位號碼,請判斷該座位是靠窗或是靠走道。 • 參考程式 program seat; {$APPTYPE CONSOLE} var x: integer; begin write ('請輸入座位號碼:'); readln (x); writeln ('靠窗') writeln ('靠走道'); readln; end.

  43. 考題 2-6 • 輸入電腦教室的兩個座號,判斷他們是否坐在同一張桌子。 • 參考程式: program seat; {$APPTYPE CONSOLE} var x, y: integer; begin write ('請輸入座號:'); readln (x); write ('請輸入座號:'); readln (y); writeln ('同桌') writeln ('不同桌'); readln; end.

  44. 閏平年 • 閏平年的判斷是根據以下的規則: • 如果 y 不是 4 的倍數,是平年 (如 2006) • 如果 y 是 4 的倍數,而且不是 100 的倍數,是閏年 (如 2008) • 如果 y 是 100 的倍數,而且不是 400 的倍數,是平年 (如 2100) • 如果 y 是 400 的倍數,是閏年 (如 2000)

  45. 流程圖 (閏平年) if then y 不是 4 的倍數 else if then y 不是 100 的倍數 else 平年 if then y 不是 400 的倍數 else 閏年 平年 閏年

  46. if 邏輯值 then 敘述 if 邏輯值 then 敘述 巢狀結構 • if 敘述中含有另一個 if 敘述。 if 邏輯值 then else

  47. 閏平年程式 (巢狀結構版) program leap1; {$APPTYPE CONSOLE} var y: integer; begin write ('請輸入一個西元年份:'); readln (y); if y mod 4 <> 0 then writeln ('平年') else if y mod 100 <> 0 then writeln ('閏年') else if y mod 400 <> 0 then writeln ('平年') else writeln ('閏年'); readln; end.

  48. 運算子 • 算術運算子 數 ◆ 數 → 數+, -, *, /, div, mod • 關係運算子 數 ◆ 數 → 邏輯值>, <, >=, <=, =, <> • 邏輯運算子 邏 ◆ 邏 → 邏輯值and, or, not • true and true → true • true and false → false

  49. 九九乘法表

  50. 真值表

More Related