Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
教 青少年 寫程式
從 Scratch 2.0
到 Python 3.3
Renyuan Lyu
呂仁園
長庚大學,資訊系
1
http://scratch.mit.edu/users/ryTemp2014_001/
https://dl.dr...
ryCatStar00,貓咪之星
• http://scratch.mit.edu/projects/20615907/
2
• 主程式流程
3
• 畫三角形
• 畫五邊形
• 畫多邊形
• 畫五星形
• 畫貓咪之星
4
5
rySolveEquation00,解2元1次方程式
• http://scratch.mit.edu/projects/20607239/
6
• 主程式流程
7
• 輸入方程式係數
a, b, c,
e, f, g
8
• 解2元1次方程式演算法,行列式計算。
9
10
ryArkanoid00,敲磚塊遊戲
11
• http://scratch.mit.edu/projects/20604541/
• http://scratch.mit.edu/projects/17662884/
• 球拍 (Paddle)、球 (Tennis Ball)
12
• 磚塊 (block)
13
• 失敗精靈、勝利精靈
14
• Pong with High Score
– http://scratch.mit.edu/projects/12778537/
• 由此延伸出去,看看別人如何寫程式。
• http://scratch.mit.edu/projects/1...
16
Python
17
• 如何像電腦科學家一樣的思考
– 用 Python 3 來學習
– https://dl.dropboxusercontent.com/u/33089565/r
y2014_thinkcspy/html/index.html
CPU, RAM, HardDisk
• Computer Components
– https://www.youtube.com/watch?v=rK3YxmkarIg
– In this section you learn a littl...
Python程式語言很簡單
19
• https://dl.dropboxusercontent.com/u/330895
65/ry2014_thinkcspy/html/_ryTest01.html
• 列出 99 乘法表
• 列出 100...
Hello, little turtles!
嗨,小烏龜!
• https://dl.dropboxusercontent.com/u/330895
65/ry2014_thinkcspy/html/hello_little_turtles
....
補充 01
• What is a Computer?
• What is a Programming Language?
• Hello, world !
– 大多數程式語言的第一支程式
21
What is a Computer?
• A Computer (電腦,計算機) is composed of
– Central Processing Unit (CPU), (中央處理器)
– Random Access Memory (...
What is a Programming Language
(程式語言)?
• 語言是人類互相溝通的工具。
• 華語、英語、日語、西班牙語、、、、
– 自然語言數量 6,000 以上
• 使用人口數:
– 華語 > 西班牙語 > 英語 > 日...
Hello, world !
大多數程式語言的第一支程式
#include <stdio.h>
main() {
printf("hello, world");
}
public class HelloWorld {
public static...
• Assembly language — x86 Windows
; This program displays "Hello, World!" in a windows
messagebox and then quits.
;
; Writ...
補充 02
• A hands-on introduction to Python for beginning
programmers
• http://www.pyvideo.org/video/1850/a-hands-on-
introd...
Jessica’s 16 min Intro
27
28
by Renyuan
29
30https://www.dropbox.com/s/yxk299gvcuao6au/教青少年寫程式ex001.py
Python 程式範例
31
• 列出 99 乘法表
• 列出 100 以內的質數
• 小烏龜
• 求二元一次方程式的解
• 井字棋, Tic-Tac-Toe
https://dl.dropboxusercontent.com/u/330895...
更多小烏龜程式
• https://dl.dropboxusercontent.com/u/330895
65/ry2014_thinkcspy/html/_ryTurtle03.html
• https://www.dropbox.com/s...
Upcoming SlideShare
Loading in …5
×

教青少年寫程式

1,381 views

Published on

Teaching Kids to Code and Learn.
From Scratch to Python

Published in: Education, Technology
  • Be the first to comment

教青少年寫程式

  1. 1. 教 青少年 寫程式 從 Scratch 2.0 到 Python 3.3 Renyuan Lyu 呂仁園 長庚大學,資訊系 1 http://scratch.mit.edu/users/ryTemp2014_001/ https://dl.dropboxusercontent.com/u/33089565/ry2014_thinkcspy/html /_ryTest01.html
  2. 2. ryCatStar00,貓咪之星 • http://scratch.mit.edu/projects/20615907/ 2
  3. 3. • 主程式流程 3
  4. 4. • 畫三角形 • 畫五邊形 • 畫多邊形 • 畫五星形 • 畫貓咪之星 4
  5. 5. 5
  6. 6. rySolveEquation00,解2元1次方程式 • http://scratch.mit.edu/projects/20607239/ 6
  7. 7. • 主程式流程 7
  8. 8. • 輸入方程式係數 a, b, c, e, f, g 8
  9. 9. • 解2元1次方程式演算法,行列式計算。 9
  10. 10. 10
  11. 11. ryArkanoid00,敲磚塊遊戲 11 • http://scratch.mit.edu/projects/20604541/ • http://scratch.mit.edu/projects/17662884/
  12. 12. • 球拍 (Paddle)、球 (Tennis Ball) 12
  13. 13. • 磚塊 (block) 13
  14. 14. • 失敗精靈、勝利精靈 14
  15. 15. • Pong with High Score – http://scratch.mit.edu/projects/12778537/ • 由此延伸出去,看看別人如何寫程式。 • http://scratch.mit.edu/projects/12778537/remixes 15
  16. 16. 16
  17. 17. Python 17 • 如何像電腦科學家一樣的思考 – 用 Python 3 來學習 – https://dl.dropboxusercontent.com/u/33089565/r y2014_thinkcspy/html/index.html
  18. 18. CPU, RAM, HardDisk • Computer Components – https://www.youtube.com/watch?v=rK3YxmkarIg – In this section you learn a little about the architecture of a computer and some general terms to use when talking about computer programs. This includes: • CPU - Central Processing Unit • RAM - Random Access Memory • Hard Drive - A Persistent Storage Device 18
  19. 19. Python程式語言很簡單 19 • https://dl.dropboxusercontent.com/u/330895 65/ry2014_thinkcspy/html/_ryTest01.html • 列出 99 乘法表 • 列出 100 以內的質數 • 求二元一次方程式的解 • 小烏龜
  20. 20. Hello, little turtles! 嗨,小烏龜! • https://dl.dropboxusercontent.com/u/330895 65/ry2014_thinkcspy/html/hello_little_turtles .html 20 from turtle import * def main(): mode("logo") speed(10) shape("arrow") pensize(3) circle(66) rt(180) circle(66) pu() lt(90) fd(33) rt(90) ….
  21. 21. 補充 01 • What is a Computer? • What is a Programming Language? • Hello, world ! – 大多數程式語言的第一支程式 21
  22. 22. What is a Computer? • A Computer (電腦,計算機) is composed of – Central Processing Unit (CPU), (中央處理器) – Random Access Memory (RAM), (隨機存取 記憶體) – Input/Output (I/O) devices. (輸入輸出設備) • A screen (螢幕) is an output device. • A mouse (滑鼠) and a keyboard (鍵盤) are input devices. • A hard drive (硬碟) is an I/O device. keyboard 22
  23. 23. What is a Programming Language (程式語言)? • 語言是人類互相溝通的工具。 • 華語、英語、日語、西班牙語、、、、 – 自然語言數量 6,000 以上 • 使用人口數: – 華語 > 西班牙語 > 英語 > 日語、、、 • 影響力: – 英語 > { 華語、日語、西班牙語、、、} • 人類與電腦溝通,要透過程式語言 • Assembly, C, C++, Java, Python, Scratch, … – 程式語言數量甚至多過自然語言 • 使用人口數: – {C, C++ , Java }> Python > Scratch …. • 影響力: – {C, C++ , Java }> Python > …. • 容易學習的程度: – Scratch > Python > {C, C++, Java,…} > Assembly 23
  24. 24. Hello, world ! 大多數程式語言的第一支程式 #include <stdio.h> main() { printf("hello, world"); } public class HelloWorld { public static void main(String [] args) { System.out.println("Hello world!"); } } print(‘Hello, world!’) PRINT "Hello, world!" BASIC C Python 3 Scratch Java 印= print 印 (‘Hello, world !’) 24 JavaScript alert('Hello, world!'); Scratch 中文化 Python 3 中文化 C++ #include <iostream> int main() { std::cout << "Hello, world!" << std::endl; return 0; }
  25. 25. • Assembly language — x86 Windows ; This program displays "Hello, World!" in a windows messagebox and then quits. ; ; Written by Stewart Moss - May 2006 ; ; Assemble using TASM 5.0 and TLINK32 ; ; The output EXE is standard 4096 bytes long. ; It is possible to produce really small windows PE exe files, but that ; is outside of the scope of this demo. .486p .model flat,STDCALL include win32.inc extrn MessageBoxA:PROC extrn ExitProcess:PROC .data HelloWorld db "Hello, world!",0 msgTitle db "Hello world program",0 .code Start: push MB_ICONQUESTION + MB_APPLMODAL + MB_OK push offset msgTitle push offset HelloWorld push 0 call MessageBoxA push 0 call ExitProcess ends end Start 25 蠻可怕的吧! 怪不得嚇跑一堆人。
  26. 26. 補充 02 • A hands-on introduction to Python for beginning programmers • http://www.pyvideo.org/video/1850/a-hands-on- introduction-to-python-for-beginning-p • http://www.pyvideo.org/video/2559/hands-on-intro-to- python-for-beginning-programmer • Introduction to Python with Jessica McKellar • https://www.youtube.com/watch?v=sAU2l5MKCbI • http://vplayer.oreilly.com/?chapter=http%3A%2F%2Fatom.o reilly.com%2Fatom%2Foreilly%2Fvideos%2F2005177&video _product=urn%3Ax- domain%3Aoreilly.com%3Aproduct%3A9781491902141.VID EO#embedded_player 26
  27. 27. Jessica’s 16 min Intro 27
  28. 28. 28
  29. 29. by Renyuan 29
  30. 30. 30https://www.dropbox.com/s/yxk299gvcuao6au/教青少年寫程式ex001.py
  31. 31. Python 程式範例 31 • 列出 99 乘法表 • 列出 100 以內的質數 • 小烏龜 • 求二元一次方程式的解 • 井字棋, Tic-Tac-Toe https://dl.dropboxusercontent.com/u/330895 65/ry2014_thinkcspy/html/_ryTest01.html
  32. 32. 更多小烏龜程式 • https://dl.dropboxusercontent.com/u/330895 65/ry2014_thinkcspy/html/_ryTurtle03.html • https://www.dropbox.com/sh/yf62s5vhmg5g5 j5/nkUJ92najk 32

×