Một chương trình được viết bằng ngôn ngữ lập trình có cấu trúc : [] CẤU TRÚC CHUNG CỦA CHƯƠNG TRÌNH Khai báo tên chương trình; Khai báo các thư viện; Khai báo biến;... Ngôn ngữ lập trìn
Trang 1Giáo án điện tử Tin Học 8
Lý thuyết Thực hành PMHT
Trang 3Bài TH 2 Bài TH1
Bài TH4
Bài TH 3 Bài TH6 Bài TH5
Bài TH7
Trang 4LUYỆN GÕ PHÍM NHANH VỚI FINGER BREAK OUT
TÌM HIỂU THỜI GIAN VỚI PHẦN MỀM SUN TIMES
QUAN SÁT HÌNH KHÔNG GIAN VỚI PHẦN MỀM YENKA HỌC VẼ HÌNH VỚI PHẦN MỀM GEOGEBRA
Trang 5Bài 1
MÁY TÍNH VÀ CHƯƠNG TRÌNH MÁY TÍNH
Trang 6CON NGƯỜI RA LỆNH CHO MÁY TÍNH NHƯ THẾ NÀO?
* Khi nháy đúp chuột lên biểu tượng của một phần mềm trên màn hình phần mềm sẽ khởi động
* Khi nháy đúp chuột lên biểu tượng của một phần mềm trên màn hình phần mềm sẽ khởi động
* Trong soạn thảo văn bản, khi ta gõ một phím chữ thì chữ tương
ứng sẽ xuất hiện trên màn hình ta đã ra lệnh cho máy tính in chữ lên màn hình
* Trong soạn thảo văn bản, khi ta gõ một phím chữ thì chữ tương
ứng sẽ xuất hiện trên màn hình ta đã ra lệnh cho máy tính in chữ lên màn hình
•Khi thực hiện lệnh sao chép văn bản từ vị trí này sang vị trí khác
ta đã yêu cầu máy tính thực hiện liên tiếp nhiều lệnh:
* Lệnh sao chép văn bản vào bộ nhớ của máy tính
* Lệnh sao chép văn bản có trong bộ nhớ vào vị trí mới
•Khi thực hiện lệnh sao chép văn bản từ vị trí này sang vị trí khác
ta đã yêu cầu máy tính thực hiện liên tiếp nhiều lệnh:
* Lệnh sao chép văn bản vào bộ nhớ của máy tính
* Lệnh sao chép văn bản có trong bộ nhớ vào vị trí mới
Để chỉ dẫn máy tính thực hiện công việc nào đó, con người đưa cho máy tính một hay nhiều lệnh, máy tính sẽ lần lượt thực hiện các lệnh đó.
Để chỉ dẫn máy tính thực hiện công việc nào đó, con người đưa cho máy tính một hay nhiều lệnh, máy tính sẽ lần lượt thực hiện các lệnh đó.
Trang 7Quan sát hình 1_sách giáo khoa
Để cho robot hoàn thành tốt công việc, ta cần phải ra các lệnh nào?
1 Tiến hai bước.
2 Quay trái, tiến một bước.
3 Nhặt rác.
4 Quay phải, tiến ba bước.
5 Quay trái, tiến hai bước.
6 Bỏ vào thùng rác.
Trang 8VIẾT CHƯƠNG TRÌNH _ RA LỆNH CHO MÁY TÍNH LÀM VIỆC
Viết chương trình là gì?
Là viết các lệnh một cách tuần tự để điều khiển máy tính làm việc
Chương trình máy tính là gì?
Chương trình máy tính là một dãy các lệnh mà máy tính
có thể hiểu và thực hiện được
Trang 9Khi thực hiện chương trình ,máy tính hoạt động như thế nào?
Máy tính sẽ thực hiện các lệnh có trong chương trình một cách tuần tự Thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh đầu tiên đến lệnh cuối.
Hãy nhặt rác;
Bắt đầu Tiến 2 bước, Quay trái, tiến 1 bước;
Nhặt rác;
Quay phải, tiến 3 bước;
Quay trái, tiến 2 bước;
Nhặt rác;
Quay phải, tiến 3 bước;
Quay trái, tiến 2 bước;
Bỏ rác vào thùng;
Kết thúc
Ví dụ về chương trình
Trang 10Tại sao cần viết chương trình?
Việc viết nhiều lệnh và tập hợp lại trong một chương trình, giúp con người điều khiển máy tính một cách đơn giản và hiệu quả hơn.
Trang 11CHƯƠNG TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Thông tin đưa vào máy tính phải được chuyển đổi thành dạng các dãy số 0 và 1: dãy Bit
Trang 13Tuy nhiên máy tính vẫn chưa thể hiểu được các chương trình được viết bằng ngôn ngữ lập trình Chương trình này cần được chuyển sang ngôn ngữ máy bằng một chương trình dịch.
Trang 16DẶN DÒ
1 Trả lời câu hỏi 1, 2, 3, 4, 5 _ trang 08 _ sách giáo khoa
Trang 17Thực hiện tháng 8 năm 2010
Trang 18Bài 2 LÀM QUEN VỚI CHƯƠNG TRÌNH
VÀ NGÔN NGỮ LẬP TRÌNH
Trang 19Quan sát chương trình sau?
Lệnh in ra màn hình dòng chữ ‘Chao cac ban’
Trang 20a BẢNG CHỮ CÁI
ASCII
Kí tự chữ cái in hoa ‘A’ ’Z’ 65 90
Kí tự chữ cái in thường ‘a’ ’z’ 97 122
Kí tự khác Dấu chấm ‘.’ dấu phẩy ‘,’
Dấu hai chấm ‘:’ dấu chấm phẩy ‘;’,
‘’’, ‘@’, ‘^’, ‘$’, ‘#’, ‘&’
NGÔN NGỮ LẬP TRÌNH
Trang 21Bảng chữ cái của các ngôn ngữ lập trình không khác nhau nhiều.
Trang 22được dùng với ý nghĩa khác.
Ví dụ: Trong Pascal:program, uses, const, type, var, begin, end
Trang 23Được ngôn ngữ lập trình quy định dùng với ý nghĩa nhất định, người lập trình có thể định nghĩa lại để dùng với ý nghĩa khác.
• Được dùng với ý nghĩa riêng của người lập trình.
• Được khai báo trước khi sử dụng.
• Không được trùng với tên dành riêng.
• Được dùng với ý nghĩa riêng của người lập trình.
• Được khai báo trước khi sử dụng.
• Không được trùng với tên dành riêng.
Ví dụ: Trong Pascal: abs, sqr, sqrt, interger, real, byte.
Ví dụ: Delta, CT_Vidu, …
TÊN
Trang 24Mọi đối tượng trong chương trình đều phải đặt tên theo quy tắc của ngôn ngữ lập trình và từng chương trình dịch cụ thể.
Quy tắc đặt tên trong Turbo
Pascal như thế nào?
Quy tắc đặt tên:
• Gồm chữ số, chữ cái hoặc dấu gạch dưới.
• Bắt đầu bằng chữ cái hoặc dấu gạch dưới
• Một dãy liên tiếp không quá 127 kí tự.
• Không phân biệt chữ hoa, chữ thường trong tên.
• Không được trùng với từ khóa.
Quy tắc đặt tên:
• Gồm chữ số, chữ cái hoặc dấu gạch dưới.
• Bắt đầu bằng chữ cái hoặc dấu gạch dưới
• Một dãy liên tiếp không quá 127 kí tự.
• Không phân biệt chữ hoa, chữ thường trong tên.
• Không được trùng với từ khóa.
Trang 25Em hãy cho biết cấu trúc chung của
chương trình?
Một chương trình được viết bằng ngôn ngữ lập trình có cấu trúc :
[<phần khai báo>]
<phần thân chương trình>
CẤU TRÚC CHUNG CỦA CHƯƠNG TRÌNH
Khai báo tên chương trình;
Khai báo các thư viện;
Khai báo biến;
Trang 26Phần khai báo
Phần khai báo
Trang 27KHỞI ĐỘNG CHƯƠNG TRÌNH TURBO PASCAL
1 Chạy chương trình Turbo Pascal trên môi trường MS_DOS
Trên màn hình desktop, chọn My Computer, chọn ổ đĩa C:, chọn thư mục TP, chọn thư mục BIN, double click vào biểu tượng
Trên màn hình desktop, double click vào biểu tượng
2 Chạy chương trình Turbo Pascal trên môi trường WINDOWS
Trên màn hình desktop, chọn My Computer, chọn ổ đĩa C:, chọn thư mục TP, chọn thư mục BIN, double click vào biểu tượng
Trên màn hình desktop, double click vào biểu tượng
Trang 28MÀN HÌNH LÀM VIỆC CỦA TURBO PASCAL
Tên File chương trình Con trỏ soạn thảo
Dòng menu
Dòng hướng dẫn các phím chức năng Dòng Cột
Vùng soạn thảo
Trang 29Dùng bàn phím để soạn thảo chương trình
VÍ DỤ VỀ NGÔN NGỮ LẬP TRÌNH
Trang 30Nhấn tổ hợp phím Alt+F9
Trang 31Nhấn tổ hợp phím Ctrl+F9 để chạy chương trình
Trang 321 Ngôn ngữ lập trình là tập hợp các kí hiệu và quy tắc
viết các lệnh tạo thành một chương trình hoàn chỉnh và thực hiện được trên máy tính.
2 Nhiều ngôn ngữ lập trình có tập hợp các từ khóa dành riêng cho những mục đích sử dụng nhất định.
3 Một chương trình thường có hai phần: Phần khai báo
và phần thân chương trình.
4 Tên được dùng để phân biệt các đại lượng trong
chương trình và do người lập trình đặt.
Trang 33DẶN DÒ
1 Trả lời câu hỏi 1, 2, 3, 4, 5, 6 _ trang 13 _ sách giáo khoa
Trang 34Thực hiện tháng 8 năm 2010
Trang 35Bài 3
Thời gian 1 tiết
CHƯƠNG TRÌNH MÁY TÍNH
VÀ DỮ LIỆU
Trang 36• Các ngôn ngữ lập trình định nghĩa sẵn một số kiểu dữ liệu
Trang 37Tên kiểu Phạm vi giá trị
integer Số nguyên trong khoảng -215 đến 215 – 1
real Số thực có giá trị tuyệt đối trong khoảng
2,9x10-39 đến 1,7x1038 và số 0
Char Một kí tự trong bảng chữ cái
String Xâu kí tự, tối đa gồm 255 kí tự
Kiểu dữ liệu cơ bản trong ngôn ngữ lập trình Pascal
Trong Pascal, để cho chương trình dịch hiểu dãy chữ số là kiểu xâu Ta phải đặt dãy số đó trong cặp dấu nháy đơn
Ví dụ: ‘Chao cac ban’; ‘5324’
Trang 38CÁC PHÉP TOÁN VỚI DỮ LIỆU KiỂU SỐ
Kí hiệu Phép toán Kiểu dữ liệu
mod Chia lấy phần dư Số nguyên
Kí hiệu các phép toán số học trong ngôn ngữ Pascal
Trang 39• Các phép toán trong ngoặc được thực hiện trước tiên.
• Trong dãy các phép toán không có dấu ngoặc, các
phép nhân, phép chia lấy phần nguyên (div) và phép
chia lấy phần dư (mod) được thực hiện trước.
• Phép cộng và phép trừ được thực hiện theo thứ tự từ trái sang phải.
• Trong ngôn ngữ lập trình chỉ được sử dụng dấu ngoặc tròn
• Các phép toán trong ngoặc được thực hiện trước tiên.
• Trong dãy các phép toán không có dấu ngoặc, các
phép nhân, phép chia lấy phần nguyên (div) và phép
chia lấy phần dư (mod) được thực hiện trước.
• Phép cộng và phép trừ được thực hiện theo thứ tự từ trái sang phải.
• Trong ngôn ngữ lập trình chỉ được sử dụng dấu ngoặc tròn
Trình bày quy tắc tính các biểu thức số
học trong ngôn ngữ Pascal?
Trang 40y 3
a
5
x
+ +
− +
c b
a
−
+
− +
Trang 42Khi viết chương trình, để so sánh dữ liệu (số, biểu thức, …)
ta sử dụng các kí hiệu do ngôn ngữ lập trình quy định.
Khi viết chương trình, để so sánh dữ liệu (số, biểu thức, …)
ta sử dụng các kí hiệu do ngôn ngữ lập trình quy định.
Kí hiệu trong Pascal Phép so sánh Kí hiệu trong toán học
Trang 43GIAO TIẾP NGƯỜI – MÁY TÍNH
a Thông báo kết quả tính toán
Thông báo kết quả tính toán là
gì?
• Là yêu cầu đầu tiên đối với mọi chương trình
Trang 44Ví dụ:
Trang 45• Chương trình hoạt động tiếp theo tùy thuộc vào dữ liệu được nhập vào
• Là một trong những tương tác thường gặp là chương trình yêu cầu nhập dữ liệu.
• Chương trình sẽ tạm ngừng để chờ người dùng “ nhập dữ liệu “ từ bàn phím
• Chương trình hoạt động tiếp theo tùy thuộc vào dữ liệu được nhập vào
GIAO TIẾP NGƯỜI – MÁY TÍNH
Trang 46Ví dụ:
Trang 47c Tạm dừng chương trình
GIAO TIẾP NGƯỜI – MÁY TÍNH
Tạm ngừng chương trình có bao
nhiêu chế độ? Kể ra?
• Tạm ngừng trong một khoảng thời gian nhất định.
•Tạm ngừng cho đến khi người dùng nhấn phím.
Trang 48d Hộp thoại
GIAO TIẾP NGƯỜI – MÁY TÍNH
Chức năng của hộp thoại như thế
Trang 491 Các ngôn ngữ lập trình thường phân chia dữ liệu cần
xử lí theo các kiểu khác nhau, với các phép toán có thể thực hiện trên từng kiểu dữ liệu đó.
2 Quá trình trao đổi dữ liệu hai chiều giữa người và máy tính khi chương trình hoạt động thường được gọi là
giao tiếp hoặc tương tác người máy.
Trang 50DẶN DÒ
1 Trả lời câu hỏi 1, 2, 3, 4, 5, 6, 7 _ trang
26 _ sách giáo khoa
Trang 51Thực hiện tháng 8 năm 2010
Trang 52Bài 4
Thời gian 2 tiết
SỬ DỤNG BIẾN TRONG
CHƯƠNG TRÌNH
Trang 53Trong ngôn ngữ lập trình Pascal, hãy
cho biết phần khai báo của chương
trình gồm những khai báo nào?
Phần khai
báo
Program <tên chương trình>;
Uses <tên các thư viện>;
Const <tên hằng> = <giá trị của hằng>; Var <danh sách tên biến>: <kiểu dữ
liệu>;
(* có thể còn có các khai báo khác* )
Trang 54BIẾN LÀ CÔNG CỤ TRONG LẬP TRÌNH
Thế nào là Biến?
Biến (biến nhớ): là đại lượng được đặt tên Dùng để lưu trữ
dữ liệu và dữ liệu của biến lưu trữ có thể được thay đổi trong quá trình thực hiện chương trình.
Biến (biến nhớ): là đại lượng được đặt tên Dùng để lưu trữ
dữ liệu và dữ liệu của biến lưu trữ có thể được thay đổi trong quá trình thực hiện chương trình.
Giá trị của biến là gì?
Giá trị của biến là dữ liệu do biến lưu trữ
Giá trị của biến là dữ liệu do biến lưu trữ
Trang 55Ví dụ: giả sử cần in kết quả của phép cộng 15+5 ra màn hình
Câu lệnh của phép công
Trang 56Ví dụ: giả sử cần in kết quả của phép cộng ra màn hình khi hai số được nhập từ bàn phím
Câu lệnh dùng để nhập giá trị x, y
Trang 57Ví dụ: giả sử cần in kết quả của phép cộng 15+5 ra màn hình
Nhập giá trị x bất kì, sau đó enter Nhập giá trị y bất kì, sau đó enter
Trang 58Biến có cần phải khai báo
KHAI BÁO BIẾN
Trong ngôn ngữ lập trình Pascal, hãy
cho biết các thao tác khi khai báo biến
của chương trình?
Khai báo tên biến;
Khai báo kiểu dữ liệu của biến
Trang 59KHAI BÁO BIẾN
Trong ngôn ngữ lập trình Pascal,
việc khai báo biến có dạng như thế
nào?
Var <danh sách tên biến>:<kiểu dữ liệu>;
Var < danh sách tên biến >:< kiểu dữ liệu >;
Var: là từ khoá dùng để khai báo biến Có thể
khai báo nhiều danh sách tên biến có những kiểu dữ liệu khác nhau
Danh sách tên biến: tên các biến được viết
cách nhau bởi dấu phẩy “,”
Kiểu dữ liệu: là một kiểu dữ liệu chuẩn
Trang 60Ví dụ
Từ khóa của ngôn
ngữ lập trình dùng
để khai báo biến
Các biến có kiểu nguyên (integer)
Các biến có kiểu thực (real)
Biến có kiểu xâu (string)
Trang 61SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH
Trong ngôn ngữ lập trình Pascal, hãy
cho biết các thao tác khi thực hiện với
các biến như thế nào?
Gán giá trị cho biến;
Tính toán với giá trị của biến
Trong ngôn ngữ lập trình Pascal, kiểu
dữ liệu của giá trị được gán cho biến
biến như thế nào?
Kiểu dữ liệu của giá trị gán cho biến phải giống
như với kiểu của biến
Trang 62Trong ngôn ngữ lập trình Pascal, câu
lệnh gán giá trị có dạng như thế nào?
Tên biến ← Biểu thức cần gán giá trị cho biến
Tên biến ← Biểu thức cần gán giá trị cho biến
SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH
Trong đó dấu ← biểu thị phép gán
Ví dụ
x← -c/b (biến x nhận giá trị bằng –c/b) i← i + 5 (biến I được gán giá trị hiện tại của I cộng thêm 5 đơn vị)
Trang 63Lệnh trong Pascal Ý nghĩa
x:=12; Gán giá trị số 12 vào biến nhớ x
x:=y; Gán giá trị đã lưu trong biến nhớ y vào
biến nhớ x
x:=(a+b)/2; Thực hiện phép toán tính trung bình cộng hai giá trị nằm trong hai biến nhớ a và b
kết quả gán vào biến nhớ x
x:=x+1 Tăng giá trị của biến nhớ x lên 1 đơn vị, kết
quả gán trở lại biến x
Trang 64• Hằng phải được gán giá trị ngay sau khi khai báo.
• Các hằng dùng trong chương trình đều phải được khai báo tên của hằng.
• Hằng phải được gán giá trị ngay sau khi khai báo.
Trang 66CHÚ Ý
1.Khi cần thay đổi giá trị của hằng, ta chỉ cần chỉnh sửa một lần tại nơi khai báo mà không phải tìm sửa trong cả chương trình.
2.Không thể dùng câu lệnh để thay đổi giá trị của hằng ở bất kì vị trí nào
trong chương trình.
1.Khi cần thay đổi giá trị của hằng, ta chỉ cần chỉnh sửa một lần tại nơi khai báo mà không phải tìm sửa trong cả chương trình.
2.Không thể dùng câu lệnh để thay đổi giá trị của hằng ở bất kì vị trí nào
trong chương trình.
Trang 671 Biến và hằng là các đại lượng được đặt tên dùng để lưu trữ dữ liệu Giá trị của biến có thể thay đổi, còn giá trị của hằng được giữ nguyên trong suốt quá trình thực hiện chương trình.
2 Biến và hằng phải được khai báo trước khi sử dụng.
Trang 68DẶN DÒ
1 Trả lời câu hỏi 1, 2, 3, 4, 5, 6 _ trang 33 _ sách giáo khoa
Trang 69Thực hiện tháng 8 năm 2010
Trang 70Bài 5
Thời gian 4 tiết
TỪ BÀI TOÁN ĐẾN CHƯƠNG TRÌNH
Trang 71Bài toán là gì?
BÀI TOÁN VÀ XÁC ĐỊNH BÀI TOÁN
Là công việc hay một nhiệm vụ cần phải giải quyết
Để giải quyết được một bài toán cụ thể,
ta cần phải xác định rõ điều gì̀?
* Xác định các điều kiện cho trước.
* Kết quả thu được
Xác định bài toán
Trang 72Ví dụ 1: Xét bài toán “Tính diện tích hình
tam giác”.
Điều kiện cho trước
Kết quả cần thu được
Một cạnh và đường cao tương ứng
Một cạnh và đường cao tương ứng
Diện tích hình tam giác
Trang 73Ví dụ 2: Xét bài toán “Tìm đường đi
tránh các điểm nghẽn giao thông”.
Điều kiện cho trước
Kết quả cần thu được
• Vị trí điểm nghẽn giao thông.
• Các con đường có thể đi từ vị trí hiện tại tới vị trí cần tới
• Vị trí điểm nghẽn giao thông.
• Các con đường có thể đi từ vị trí hiện tại tới vị trí cần tới
Đường đi từ vị trí hiện tại tới vị trí cần tới mà không qua điểm nghẽn giao thông.
Đường đi từ vị trí hiện tại tới vị trí cần tới mà không qua điểm nghẽn giao thông.
Trang 74QUÁ TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH
Thế nào là giải bài toán trên máy
tính?
Là việc nào đó ta muốn máy tính thực hiện để từ các
điều kiện cho trước ta nhận được kết quả cần thu được
Là việc nào đó ta muốn máy tính thực hiện để từ các
điều kiện cho trước ta nhận được kết quả cần thu được
Ví dụ: Tìm ước số chung lớn nhất của hai số nguyên dương M và N
Điều kiện cho trước: hai số nguyên dương M và N Kết quả cần thu được: Ước số chung lớn nhất của M và N.
Em hiểu như thế nào là thuận toáǹ?
* Các bước để giải một bài toán
Trang 75Quá trình giải bài toán trên máy tính như
thế nào?
1 Xác định bài toán
2 Mô tả thuật toán
3 Viết chương trình
• Xác định thông tin đã cho (INPUT)
• Tìm được thông tin cần tìm (OUTPUT)
• Xác định thông tin đã cho (INPUT)
• Tìm được thông tin cần tìm (OUTPUT)
• Tìm cách giải bài toán
• Diễn tả bằng các lệnh cần phải thực hiện
• Tìm cách giải bài toán
• Diễn tả bằng các lệnh cần phải thực hiện
• Dựa vào mô tả thuật toán, ta viết chương trình bằng một ngôn ngữ lập trình
• Dựa vào mô tả thuật toán, ta viết chương trình bằng một ngôn ngữ lập trình