mã ASCII, khi viết chuỗi kí tự được đặt trong cặp dấu nháy ‘’ hoặc “ “ Ví dụ Trong TP: ‘lan’ Trong C: “lan” Chú ý: Hằng là dấu nháy đơn được viết trong NNLT TP là ‘’’’ - Biến: Biến là đạ[r]
(1)Ngày 6/09/2009 Bài soạn 1: Giáo viên: Nguyễn Thị Hồng KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH I Mục tiêu - Nắm NNLT gồm loại: NN máy, hợp ngữ, NN bậc cai - Biết vai trò chương trình dịch - Nắm khái niệm biên dịch và thông dịch - Biết nhiệm vụ quan trọng ct dịch là phát lỗi cú pháp ct nguồn II Phương pháp và phương tiện dạy học Phương pháp Thuyết trình - vấn đáp Phương tiện dạy học Giáo viên: SGK, SGV, bài soạn Học sinh: SGK, ghi III Tiến trình bài giảng Ổn định lớp Sĩ số: Vắng: Có phép: Không phép: Nội dung bài Nội dung Hoạt động thầy và trò Khái niệm a Lập trình - Lập trình là sử dụng cấu trúc liệu và các câu lệnh NNLT cụ thể để mô tả liệu và diễn đạt các thao tác thuật toán - NNLT có loại: + Ngôn ngữ máy: Mỗi loại máy tính có NN máy riêng, thường thì ct viết banừg NN loại máy nào chạy trên loại máy đó, ct viết nn máy có thể nạp trực tiếp vào nhớ và thực + Hợp ngữ: + NNLT bậc cao b Chương trình dịch Là ct đặc biệt có chức chuyển đổi ct viết NNLT bậc cao thành ct thực trên MT Ct dịch thành ct máy tính hiểu thông thường là ct trên NN máy Phân loại ct dịch Ct dịch gồm loại là thông dịch và biên dịch Tin học 11! GV: Thuyết trình đưa kiến thức Yêu cầu hs phân biệt NNLT cao với các ngôn ngữ khác Hs: NNLT bậc cao khác các NNLT khác là ct viết NNLT bậc cao nói chung không phụ thuộc vào loại máy và phải dịch sang nn may hiểu Gv: yêu cầu hs phân biệt thông dịch và biên dịch Hs: Thông dịch thì qt dịch là luân phiên và không có ct đích để lưu trữ, còn biên dịch thì chương trình nguồn và đích có thể lưu trữ lại dùng cho lần sau GV: Nhắc lại khái niệm câu lệnh cho hs nắm Trường THPT A Thanh Liêm Lop11.com (2) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng a Thông dịch: Được thực cách lặp lại các bước sau: b1: Kiểm tra tính đúng đắn câu lệnh ct nguồn b2: Chuyển đổi câu lệnh đó thành hay nhiều câu lệnh tương ứng nn máy b3: Thực các câu lệnh vừa chuyển đổi b Biên dịch: Được thực qua các bước - Duyệt phát lỗi, kiểm tra tính đúng đắn các câu lệnh ct nguồn - Dịch toàn ct nguồn thành ct đích có thể thực trên máy và có thể lưu trữ để sử dụng lại cần thiết - Câu lệnh diễn tả các thao tác các bước thuật toán - Câu lệnh đơn thực bước có thao tác - Câu lệnh cấu trúc thực bước gồm dãy các thao tác Cũng cố IV Rút kinh nghiệm và bổ sung Tin học 11! Trường THPT A Thanh Liêm Lop11.com (3) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Bài soạn 2, CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH Số tiết:2 I Mục đích – yêu cầu - Biết NNLT có thành phần là: Bảng chữ cái, cú pháp và ngữ nghĩa Hiểu và phân biệt thành phần này - Biết số khái niệm: Tên, tên chuẩn, tên dành riêng, và biến - Yêu cầu hs ghi nhớ các quy định tên, và biến ngôn ngữ lập trình biết cách đặt tên đúng và nhận biết tên sai quy định II Phương pháp và phương tiện dạy học Phương pháp: Thuyết trình, vấn đáp Phương tiện: Giáo viên: SGK, SGV, bài soạn Học sinh: SGK, ghi III Tiến trình bài giảng Ổn định lớp Sĩ số: vắng: Có phép: Không phép: Nội dung bài Nội dung Hoạt động thầy và trò Các thành phần a/ Bảng chữ cái: Là tập hợp các kí tự dùng để viết chương trình, không phép dùng kí tự nào ngoài các kí tự quy định bảng chữ cái GV: Bảng chữ cái các NNLT nói chung không khác nhiều Trong TP bảng chữ cái bao gồm các kí tự sau: - Các chữ cái in hoa và in thường bảng chữ cái tiếng anh - 10 chữ số thập phân Ả rập: 89 - các kí tự đặc biệt: +-*/=<>[ ] , ; # ^ $ @& ():‘ b/ Cú pháp: Là quy tắc để viết chương GV: Lấy ví dụ Trong LT TP phần đầu thân chương trình trình Dựa vào chúng, người lập trình và ctd biết tổ hợp nào các kí tự phải đặt cặp dấu: Begin end Do phần thân ct mà ko viết là bảng chữ cái là hợp lệ hay không hợp lệ, ko hợp lệ nhờ đó có thể mô tả chính xác thuật toán c/ Ngữ nghĩa: Xác định ý nghĩa các thao tác cần phải thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh nó - Các lỗi cú pháp ctd phát và thông báo cho người lập trình biết, ctc ko còn lỗi cú pháp có thể đượcdịch sang GV: Dựa vào cú pháp thân ct phải bắt đầu cặp dấu begin và kết thúc end có dấu chầm thì cưa thấy cú pháp begin end là thân ct HS: chú ý quan sát lắng nghe và ghi chép bài đầy đủ Tin học 11! Trường THPT A Thanh Liêm Lop11.com (4) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng ngôn ngữ máy - Các lỗi ngữ nghĩa không máy phát mà nó thường phát thử chạy ct trên các liệu Một số khái niệm a Tên Quy tắc đặt tên TP: - Là dãy liên tiếp không quá 127 kí tự bao gồm chữ cái, chữ số dấu gạch Ví dụ: abc, lan_diep… - Trong TP không phân biệt chữ hoa chữ thường Có loại tên TP là: + Tên dành riêng (từ khoá): Được NNLT quy định dùng với ý nghĩa riêng xác định, người lập trình không sử dụng với ý nghĩa khác + Tên chuẩn: Được NNLT dùng với ý nghĩa định nào đó, người Lt có thể khai báo và dùng chúng với ý nghĩa và mục đích khác + Tên người lập trình đặt Được dùng với ý nghĩa riêng, xác định cách khai báo trước sử dụng, các tên này không trùng với tên dành riêng GV: ? yêu cầu hs lấy tên hợp lệ và tên không hợp lệ HS: trả lời GV: chú ý tên Hoan = HOAN GV: ví dụ các từ khoá TP là: Program, var, const… GV: số nguyên TP là integer, số thực là real, hàm tính cosin số là sin GV: giải pt bậc cần dùng biến lưu trữ b2-4ac ta đặt tên là delta HS: quan sát, lắng nghe và ghi chéo bài đầy đủ Tiết Mục tiêu: - HS nắm khái niệm và biến, chú thích - HS nắm các dạng bài tập chương 2b Hằng và biến - Hằng: Là đại lượng có giá trị không thay GV: Lấy ví dụ minh hoạ cho các đổi quá trình thực chương trình Hằng số học: 2.5; 45; 67; 4+5; Trong NNLT thường có loại sau: số hệ hexa biễu diễn TP phải + Hằng số học: Là các số nguyên, thực thêm dâu $ đằng trước ví dụ $A1 bd số 161 VD: 12,3; 4;-45 Hằng logic: true, false + Hằng logíc: Là giá trị đúng sai Hằng xâu: ‘abc’ HS: Lấy ví dụ đúng tương ứng với True False VD: True, False + Hằng xâu: Là chuỗi các kí tự Tin học 11! Trường THPT A Thanh Liêm Lop11.com (5) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng mã ASCII, viết chuỗi kí tự đặt cặp dấu nháy ‘’ “ “ Ví dụ Trong TP: ‘lan’ Trong C: “lan” Chú ý: Hằng là dấu nháy đơn viết NNLT TP là ‘’’’ - Biến: Biến là đại lượng đặt tên dùng để lưu trữ giá trị và giá trị có thể thay đổi quá trình thực chương trình Biến phải khai báo trước sử dụng c Chú thích GV: Khi viết chú thích chương trình Trong viết chương trình có thể viết thì không làm ảnh hưởng gì đến ct Ví dụ lập trình để phân biệt rõ các bài toán ta các chú thích cho chương trình, chú thích ghi đầu đề bài toán lên đầu chương trình để không làm ảnh hưởng đến chương trình Ví dụ: Trong TP, chú thích đưa người đọc biết ct giải bài toán nào Khi đó TP ta viết {gpt_bac2} cặp dấu {} (* *) Cũng cố Nhắc lại số khái niệm: Tên, hằng, biến, chú thích Yêu cầu HS làm bài tập đến trang 13 (SGK) IV RÚT KINH NGHIỆM VÀ BỔ SUNG Tin học 11! Trường THPT A Thanh Liêm Lop11.com (6) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Bài soạn 4: Số tiết: BÀI TẬP I Mục tiêu - Học sinh luyện tập cách đặt tên, xác định tên, hằng, biến - Khắc sâu số khái niệm: Chương trình dịch, biên dịch, thông dịch, cú pháp, ngữ nghĩa II Phương pháp – phương tiên Phương tiện: - GV: SGK, SGV, bài soạn - HS: SGK, ghi Phương pháp: Vấn đáp, luyện tập III Tiến trình lên lớp Ổn định lớp Sĩ số: Vắng: Có phép: Không phép: Kiểm tra bài cũ Câu hỏi 1: Cú pháp là gì? Ngữ nghĩa là gì? Lấy VD minh hoạ NNLT TP? Câu hỏi 2: Tên chuẩn và tên dành riêng khác ntn? Lấy vd minh hoạ? Câu hỏi 3: Khái niệm hằng, biến? Lấy ví dụ minh hoạ? Nội dung bài Nội dung Hoạt động cuả thầy và trò A Bài tập SGK Bài 1: Đáp án Phải xây đựng NNLT bậc cao vì: - NNBC gần với nn tự nhiên - NNLTBC không phụ thuộc vào phần cứng máy tính - Dễ hiểu, dễ hiệu chỉnh và nâng cấp - Cho phép làm việc với nhiều liệu khác nhau, cách tổ chức liệu đa dạng, thuận tiện cho mô tả thuật toán Bài 6: (trang 13 SGK) Đáp án: Các ý sai: c,h,e vì 6,23: Dấu phẩy cần thay dấu ‘c: thiếu dấu nháy ‘ A20: chưa rõ giá trị B Bài tập thêm Bài 1: Trong chế độ thông dịch, giả sử 2/3 GV: Gọi hs đứng chổ trả lời HS: đứng dậy trả lời GV: Các em chú ý để biểu diễn là số hệ hexa ta phải thêm $ vào trước, ví dụ $A1 biểu diễn số là 161 Tin học 11! Trường THPT A Thanh Liêm Lop11.com (7) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng số câu lệnh ct đã thực hiện, có thể khẳng định rắng: CT ko còn có lỗi cú pháp không? Đáp án; Không ví cú pháp các câu lệnh chưa thực chưa kiểm tra Bài 2: Trong dòng chú thích có thể chứa các kí tự ngoài bẳng chữ cái không? sao? Đáp án: Có thể vid TCD laọi bỏ chú thích dịch chương trình Bài Hãy chọn biểu diễn tên GV: -5+9 là biểu thức cho kết là bd đây số nên nó là số a ‘****’ b -5+9 c PpPpPp d 256.53 e FA33C9 f (2) Đáp án: c,e Cũng cố và bài tập nhà Phát biểu nào đây là đúng: a Khi cần thay đổi ý nghĩa từ khoá nào đó người lập trình cần khai báo theo ý nghĩa b Tên người lập trình đặt không trùng với từ khoá có thể trùng với tên chuẩn c Mọi đối tượng có giá trị thay đổi ct gọi là biến d Trong ct tên gọi là đối tượng không thay đổi nên có thể xem là IV Rút kinh nghiệm và bổ sung Tin học 11! Trường THPT A Thanh Liêm Lop11.com (8) Ngày 6/09/2009 Bài soạn 5: Giáo viên: Nguyễn Thị Hồng CHƯƠNG II: Bài 3: CHƯƠNG TRÌNH ĐƠN GIẢN Cấu trúc chương trình I Mục đích - yêu cầu - Hiểu chương trình là mô tả thuật toán NNLT - Biết cấu trúc chung ct - Nắm và biết cách khai báo số thành phần chương trình là hằng, tên chương trình, thư viện - Nhận biết các thành phần chương trình II Phương pháp và phương tiện dạy học Phương pháp: Thuyết trình + vấn đáp Phương tiện dạy học - Giáo viên: SGK, bài soạn, SGV - Học sinh: SGK, ghi III Tiến trình lên lớp Ổn định lớp Sĩ số: Vắng: Có phép: Không phép; Nội dung bài Nội dung Hoạt động thầy và trò Cấu trúc chung Một ct TP có cấu trúc sau: [<Phần khai báo>] <Phần thân> Các thành phần ct a Phần khai báo - Khai báo tên ct Phần này có thể có không, TP có khai báo sau: Program <tên chương trình>; Với tên chương trình người lt đặt - Khai báo thư viện Muốn sử dụng đến thư viện nào đó ta cần phải khai báo thư viện theo cú pháp: Uses <tên các thư viện> GV: Để diễn giải cú pháp NNLT người ta thường sử dụng NNTN và đặt cặp dấu <> Các thành phần ct có thể có không đặt cặp dấu [] GV: Ví dụ program Ptbac2; HS: Lấy ví dụ minh hoạ GV: Trong NNLT thường có các thư viện cung cấp số chương trình thông dụng đã lập sẵn, để sử dụng các chương tình đó cần có khai báo thư viện theo cú pháp: USES <tên thư viên>; Ví dụ khai báo thư viện có số thủ tục làm việc với bàn phím và màn hình TP sau: uses crt; HS: Chú ý nghe giảng và chép bài đầy đủ Tin học 11! Trường THPT A Thanh Liêm Lop11.com (9) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng - Khai báo Cú pháp: Const <tên hằng>=<giá trị hằng>; Thường sử dụng cho giá trị xuất nhiều lần ct Khai báo tạo điều kiện thuận lời cho việc chỉnh sửa lại giá trị toàn ct cần - Khai báo biến: (Học tiết sau) b Phần thân chương trình Phần thân chương trình bắt buộc phải có và đánh dấu bắt đầu cặp dấu hiệu mở đầu và kết thúc Ví dụ TP: Begin <Dãy các câu lệnh>; End Một số ví dụ đơn giản SGK GV: Lấy ví dụ Const R=4.5; Const ten=’lan’; GV: Đưa cấu trúc thân chương trình số NNLT TP, C Lưu ý: Trong TP thường dùng dấu chấm phẩy để kết thúc câu lệnh GV: Yêu cầu hs xác đinh các thành phần ví dụ SGK, sau đó rút nhận xét: ct cùng thực cv viết = các NNLT khác thì hệ thống câu lệnh ct khác Cũng cố và bài tập nhà IV RÚT KINH NHGIỆM VÀ BỔ SUNG Tin học 11! Trường THPT A Thanh Liêm Lop11.com (10) Ngày 6/09/2009 Bài soạn Giáo viên: Nguyễn Thị Hồng Bài 4,5: MỘT SỐ KIỂU DỮ LIỆU CHUẨN KHAI BÁO BIẾN I Mục đích – yêu cầu - Biết số kiểu liệu chuẩn: Nguyên, thực, kí tự, logic - Xác định kiểu khai báo liệu đơn giản - Hiểu cách khai báo biến - Biết cách khai báo biến đơn đúng II Phương pháp và phương tiện dạy học Phương pháp: Thuyết trình, vấn đáp Phương tiện - GV: SGK, bài soạn - HS: SGK, ghi III Tiến trình bài dạy Kiểm tra bài cũ Câu hỏi: Nêu cấu trúc chung thư viện Nội dung bài Nội dung Một số kiểu liệu chuẩn NNLT nào cuãng đưa số kiểu dl chuẩn đơn giản, từ chúng ta có thể xây dựng nên kiểu dl phức tạp Một số kiểu liệu chuẩn thường dùng TP: a Kiểu nguyên Ví dụ số hs lớp b Kiểu thực Điểm tổng kết môn hs lớp Chú ý: Phép toán chứa các toán hạng gồm kiểu nguyên và kiểu thực cho kết kiểu thực c Kiểu kí tự - Tên kiểu: Char - Miền giá trị: Là các kí tự bảng mã ASCII gồm 256 ký tự - Mỗi ký tự có mã tương ứng từ đến 255 - Các kí tự có quan hệ so sánh, việc so sánh dựa trên mã kí tự Ví dụ: Kí tự A có mã 65, kí tự a có mã 97 Hoạt động thầy và trò GV: DL là thông tin mã hoá MT DL NNLT có số kiểu DL chuẩn định mặc dù thông tin đa dạng , kiểu đặc trưng bở tên kiểu, miền giá trị, kích thước nhớ, các phép toán, các hàm và thủ tục sử dụng chúng, chúng ta xét số kiểu dl NNLT TP GV: Trong TP thì ta hiểu kí tự là các kí tự thuộc bảng mã ASCII gồm có 256 kí tự có mã ASCII thập phân từ đến 255 HS: Lắng nghe và ghi chép bài đầy đủ Tin học 11! Trường THPT A Thanh Liêm Lop11.com (11) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng d Kiểu logic - Tên kiểu: Boolean; - Miền giá trị: Chỉ có giá trị là True False Khai báo biến - Mọi biến dùng CT cần khai báo tên và kiểu liệu Tên biến dùng để xác lập quan hệ các biến với địa nhớ, nơi lưu trữ giá trị biến, biến khai báo lần Trong TP biến khai báo sau: Var <DS biến>:<Kiểu liệu> Trong đó: Var là từ khoá Danh sách biến: Là nhiều tên biến, các tên biến viết cách dấu phẩy Kiểu liệu: Thường là các kiểu liệu chuẩn người lập trình định nghĩa Sau từ khoá Var có thể khai báo nhiều danh sách biến khác theo cấu trúc: <Danh sách biến>:<Kiểu liệu>; Ví dụ Var a,b,c;real; X,y: integer; Một số chú ý khai báo biến: - Cần đặt tên biến cho gợi nhớ đến ý nghĩa biến đó Điều này có lợi cho việc đọc, hiểu và sửa đổi chương trình cần thiết - Không nên đặt tên biến quá ngắn hay quá dài, dễ mắc lỗi viết nhiều lần tên biến - Khi khai báo biến cần đặc biết lưu ý đến phạm vi giá trị nó GV: Một số ngôn ngữ có cách mô tả các giá trị logic cách khác Chú ý: Khi lập trình người lập trình cần tìm hiểu đặc trưng các kiểu liệu chuẩn để xác định dịch và sử dụng để khai báo biến GV: Yêu cầu Hs đứng chổ nhắc lại ntn là biến HS: trả lời GV: Lấy ví dụ bài toán giải phương trình bậc để đưa các biến cần sử dụng ct GV: Trong bài toán giải pt bậc ta hoàn toàn có thể dùng các biến có tên là m,n,l để lưu giá trị các hệ số a,b,c nhiên lại không thể gọi nhớ và dễ nhầm, nên ta thường dùng biến có tên là a,b,c - Ta không cần đặt tên là hesoa, heso b, heso c, vì dễ gọi nhớ quá dài - ví dụ muốn sử dụng biến t để lưu trữ tuổi người thì ta không nên khai báo t là kiểu integer mà cần khai báo là kiểu byte, nhằm giảm ô nhớ Tin học 11! Trường THPT A Thanh Liêm Lop11.com (12) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Cũng cố và bài tập nhà - Nhắc lại số kiến thức trọng tâm: Cách khai báo biến, các chú ý khai báo biến - Ra bài tập nhà: Hãy lỗi cách khai báo sau; Var K,M,I,L:integer; C,C1:char; I,i1,j: word; Pi=3,1416; IV NHỮNG NHẬN XÉT VÀ BỔ SUNG Bài soạn PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN I MỤC ĐÍCH –YÊU CẦU - Giới thiệu phép toán, biểu thức số học, hàm số học chuẩn và biểu thức quan hệ - Hiểu lệnh gán và viết lệnh gán - Phân biệt khác lệnh gán và phép so sánh - Viết biểu thức số học và logic với các phép toán thông dụng II PHƯƠNG PHÁP – PHƯƠNG TIỆN DẠY HỌC Phương pháp: Thuyết trình, vấn đáp Phương tiện - GV: SGK, Bài soạn - HS: SGK, ghi III TIẾN TRÌNH BÀI GIẢNG Ổn định lớp Sĩ số: Vắng: Có phép: Không phép: Kiểm tra bài cũ Câu hỏi: Nêu cấu trúc khai báo biến TP, chú ý gì khai báo? Tin học 11! Trường THPT A Thanh Liêm Lop11.com (13) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Nội dung bài Nội dung Hoạt động thầy và trò Phép toán NNLT TP sử dụng số phép toán sau: - Số nguyên: +; - ; * ; div (chia); mod (Lấy phần dư) - Số thực: + ; - ; * ; / - Các phép toán quan hệ <; >; <=; >=; =; <> (khác); - Các phép toán logic: Not (phủ định); or (hoặc); and (và); Chú ý: Kết cùa phép toán quan hệ cho giá trị logic Ví dụ a=5; b=6 thì phép toán quan hệ a>b cho kết sai tức là false Một ứng dụng phép toán logic là để tạo các biểu thức phức tạp từ các quan hệ đơn giản Biểu thức số học - BT số học là dãy các phép toán +, - ,*,/ Div, mod và cặp dấu ngoặc () các biến, các các biến tuân theo quy tắc : + Dùng cặp ngoặc tròn để xác định trình tự thực phép toán TH cần thiết + Viết từ trái sang phải + Không bỏ qua sấu * tích - Các phép toán thực theo thứ tự: + Thực các phép toán ngoặc trước + Trong dãy các phép toán không chứa ngợac thì thực từ trái sang phải theo thứ tự: *, ?, div, mod, +, Chú ý: + Nếu biểu thức chứa hay biến kiểu thực thi ta có bt số học thực và giá trị bt thuộc kiểu thực + Trong số trường hợp nên dùng biến trung gian để có thể tránh việc tính biểu thức nhiều lần GV: Để mô tả các thao tác thuật toán, NNLT xác định và sử dụng số khái niệm bản: Phép toán, biểu thức, gắn giá trị cho biến, ta tìm hiểu thành phần GV thuyết trình đưa kiến thức HS: Chú ý lắng nghe và chép bài GV lấy ví dụ: 6*(3+7) (a+b)*c; 6*a+7*b Khi giải pt bậc 2, với = b2-4ac>0 thì tính nghiệm x (b ) / * a thì cho kết sai mà phải dùng dấu () sau: x (b ) /(2 * a ) GV: Lấy ví dụ minh hoạ sau đó yêu cầu hs lấy ví dụ HS: Chú ý lắng nghe bài, phát biểu Tin học 11! Trường THPT A Thanh Liêm Lop11.com (14) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng GV: Biểu thức x= b b 4ac viết 2a sau: X=(-b-sqrt(sqr(b)-4*a*c))/(2*a); Hàm số học chuẩn GV: Hàm tính bậc hai số là Cách viết: Tên hàm(đối số); sqrt (x) Ví dụ SQRT(9) Biểu thức quan hệ GV: Cho biểu thức quan hệ sau - biểu thức cùng kiểu liên kết với 2a > 3+6b (*) phép toán quan hệ cho ta biểu thức Trong đó 2a và 3+6b là các BT quan hệ > là phép toán quan hệ - Biểu thức quan hệ có dạng: Nếu a=3, b=1 thì btqh (*) nhận kết là <BT1> <phép toán quan hệ> <BT2> false, a=5, b=1 thì (*) nhận True Trong đó BT1 và BT2 cùng là xâu HS: Lấy ví dụ minh hoạ cùng là BT số học - BTSH thực theo trình tự: + Tính giá trị các biểu thức + Thực phép toán quan hệ - Kết BT quan hệ là giá trị logic tức là true false Biểu thức logic - BT logic đơn giản là biến logic GV: Dùng biến x để mô tả tuổi logic người ta có điều kiện x là: - BTLG là các biểu thức logic đơn giản, (x>=1)and (x<=150) các bt quan hệ liên kết với phép toán logic - Giá trị BTLG là true False - Các BTQH thường đặt cặp ngoặc ( và ) Câu lệnh gán Trong TP câu lệnh gán có dạng: GV: ví dụ x:=25 có nghĩa là gán giá trị 25 <Tên biến>:=<biểu thức>; cho biến x Trong đó tên biến là tên biến đơn, kiểu giá trị biểu thức phải phù hợp với kiểu biến Chức lệnh gán là đặt cho biến có tên vế trái dấu ‘:=’giá trị giá trị bt vế phải Cũng cố và bài tập nhà Bài 1: Hãy viết lại các biểu thức sau từ dạng toán học sang dạng biểu diễn tương ứng Pascal Tin học 11! Trường THPT A Thanh Liêm Lop11.com (15) Ngày 6/09/2009 a x y x y Giáo viên: Nguyễn Thị Hồng b e ( x 5) x cosx c x x x d x log ( x 2) x Bài Cho các cặp biểu thức: Bên trái là biểu thức dạng toán họcvà bên phải là biểu diễn tương ứng Pascal Ở dạng biểu diễn Pascal có số lỗi hãy các lỗi đó a sin A+sin(x)/sqrt(a*a+x*x+1) a x2 2e x y x2 y2 2*exp(abs(x+y))/(sqr(x)*sqr(y)) Sin x y 0.5 Sqr(sin)(x)/(y+0.5) 8 1 e x Exp(1/3*ln(-8))/(1+exp(x)) IV NHẬN XÉT VÀ NHỮNG BỔ SUNG Tin học 11! Trường THPT A Thanh Liêm Lop11.com (16) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Bài soạn 7: Bài CÁC THỦ TỤC VÀO RA ĐƠN GIẢN I Mục đích – Yêu cầu - Biết các câu lệnh vào đơn giản để nhập thông tin từ bàn phím và đưa thông tin màn hình - Viết số lệnh vào đơn giản II Phương pháp và phương tiện dạy học Phương pháp: Thuyết trình và vấn đáp Phương tiện dạy học: - Giáo viên: SGK, SGV, bài soạn - Học sinh: SGK, ghi III Tiến trình dạy học Ổn định lớp Sĩ số: Vắng: Có phép: Không phép: Kiểm tra bài cũ Câu hỏi: Nêu cú pháp, ý nghĩa lệnh gán Pascal, lấy ví dụ minhhoạ lệnh gán Nội dung bài Nội dung Hoạt động thầy và trò Nhập liệu vào bàn phím Việc nhập liệu từ bàn phím thực banừg thủ tục chuẩn: Read(<danh sach biến vào>); Readln(<danh sách biến vào>) Trong đó Danh sách biến vào là nhiều tên biến đơn (trừ biến kiểu boolean) GV: Xét bài toán ‘tìm số nghiệm pt bậc ax2+bx+c=0 ‘ Chúng ta thực nhập các số a,b,c từ bàn phím và lần nhập thì máy tính lại cho kết luận nghiệm tương ứng với số nhập vào Việc nhập các số a,b,c là việc đưa liệu từ bàn phím vào gán cho các biến a,b,c Kết tính toán lưu trữ tạm thời nhớ và đưa ngoài màn hình đĩa thông qua ct đưa dl Các ct đưa dl vào và đó gọi chung là các thủ tục chuẩn vào/ra đơn giản NNLT Pascal Ví dụ Read(N); Dùng để nhập giá trị tù bàn phím và gán cho biến N Readln(a,b,c); Dùng để nhập giá trị từ bàn phím và gán giá trị đó tương ứng cho ba biến a,b,c GV: Yêu cầu HS thực nhập liệu Tin học 11! Trường THPT A Thanh Liêm Lop11.com (17) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng Nếu nhiều biến thì các biến cách dấu phẩy Việc nhập giá trị cho biến kết thúc nhấn phím enter Khi nhập giá trị cho nhiều biến, giá trị này gõ cách ít dấu cách phím enter Đưa liệu màn hình Khi đưa liệu màn hình, Pascal cung cấp thủ tục chuẩn: Write(<DS kết ra>) Writeln(<DS kết ra>) Trong đó DS kết có thể là biến đơn, biểu thức Các thành phần DS kết viết cách dấu phẩy Chú ý: - Các thủ tục readln và writeln có thể không có tham số - Với thủ tục write và writeln có quy cách đưa thông tin sau: Kết thực: Write(X:<m>:<n>); writeln(X:m:n); Kết khác: Write(Y:<m>); writeln(Y:<m>); - Trong đó X là kết thực còn Y là kết khác thực, m là độ rộng biểu diễn X và Y, n là số chữ số thập phân bd X - Nếu phần dành cho các chữ số phần nguyên (m-(n+1))>chữ số phần nguyên X thì trình dịch TP thêm các dấu cách vào bên trái bd X cho đủ Trong trường hợp ngược lại Pascal hiển thị đủ các chữ số phần nguyên số X - Nếu n < số chữ số phần thập phân đã cho cho biến x,y,z thuộc kiểu số thực HS: Suy nghĩ và trả lời GV: Khi nhập dl cho câu lệnh Readln(a,b,c); ví dụ ta nhập 3,6,7 ta se nhập sau: cách enter cách enter enter Chú ý: nhập liệu ta nên dùng readln, sử dụng readln luôn chờ gõ phím enter GV: Lấy ví dụ minh hoạ Write(a,b,c): Đưa giá trị các biến a,b,c Write(‘pt co nghiẹm kep x=’,-b/(2*a)); DSkq là xâu và biểu thức Chú ý: - Các xâu thường dùng để tách các kết đưa chú thích - Với thủ tục writeln, sau đưa các kq màn hình thì trỏ chuyển đến đầu dòng tiếp theo, còn write thì không GV: Lấy vd minh hoạ HS: Chú ý lắng nghe và xây dựng bài GV: Writeln không có tham số dùng để xuống dòng còn readln thì ct tạm dừng ct cho người dung có thể quan sát kq trên màn hình, muốn ct chạy tiếp thì nhấn phím enter GV: Lấy ví dụ minh họa HS: Chú ý quan sát và ghi chép bài đầy đủ Tin học 11! Trường THPT A Thanh Liêm Lop11.com (18) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng số X thì viết giá trị đã làm tròn X chính xác đến n chữ số thập phân, n> số chữ số thập phân số bd thì các số điền thêm vào cuối phần thập phân cho đủ n chữ số phần thập phân Cũng cố và bài tập - Cũng cố: Nhắc lại số thủ tục: Readln, read, write, writeln - Ra bài tập: Viết chương trình thực công việc sau: Nhập vào tuổi người và đưa ta thông báo:’ so tuoi ban hien la ‘,tuoi IV Rút kinh nghiệm và bổ sung: Tin học 11! Trường THPT A Thanh Liêm Lop11.com (19) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP Bài 9: CẤU TRÚC RẼ NHÁNH I MỤC ĐÍCH – YÊU CẦU HS nắm được: - Nhu cầu cấu trúc rẽ nhánh biểu diễn thuật toán - Hiểu câu lệnh rẽ nhánh (dạng khuyết và đủ) - Hiểu và câu lệnh ghép - Sử dụng cấu trúc rẽ nhánh mô tả thuật toán số bài toán đơn giản II PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY HỌC Phương pháp: Thuyết trình, vấn đáp kết hợp mô dụng cụ trực quan Phương tiện: - Giáo viên: SGK, bài soạn, máy chiếu - Học sinh: SGK, ghi III TIẾN TRÌNH BÀI GIẢNG Ổn định lớp Sĩ số: Vắng: Có phép: Không phép: Nội dung bài Nội dung Hoạt động thầy và trò Xét ví dụ: Ví dụ 1: Tính diện tích hình chữ nhật nhập vào kích thước a, b Ta có chương trình: Program Dien_tich; Var S,a,b:real; Begin Writeln(‘nhap kich thuoc a va b’); Readln(a,b); Writeln(‘ Dien tich S= ‘,a*b); Readln End Nhận xét: Để kết đúng (S>0) thì phải thoả mãn điều kiện: - Nếu a >0 và b >0 thì tính S=a*b - Nếu a>0 và b>0 thì tính S=a*b, không thì thông báo ‘nhap sai du lieu’ Kết luận: Có nhiều mệnh đề diễn đạt dạng : GV: Gọi HS đứng chổ đọc chương trình bài toán cho GV viết lên bảng HS: Đứng dạy trả lời GV: Chiếu chương trình đúng bài toán trên màn hình sau đó cho chương trình chạy với liệu và yêu cầu hs nhận xét kết chúng bộ1 : a= 3, b=5; 2: a=-3, b=5 HS: Nhận xét GV: Theo chương trình thì máy tính thực cách từ trên xuống dưới, dù ta nhập kích thước là số âm thì máy tính tính S=a*b, đó dẫn đến kết sai (S=-3*5=-15<0) Để khắc phục việc tính diện tích âm thì a, b nhập vào luôn dương Tức là a>0 và b>0 thì tính s=a*b Vậy đã xuất mệnh đề thì Rẽ nhánh Tin học 11! Trường THPT A Thanh Liêm Lop11.com (20) Ngày 6/09/2009 Giáo viên: Nguyễn Thị Hồng - Nếu ….thì… - Nếu….thì….,nếu không thì… Cấu trúc trên gọi là cầu trúc rẽ nhánh Câu lệnh If-then a If-then dạng khuyết - Cú pháp: If<điều kiện> then <câu lệnh>; Trong đó: Điều kiện là biểu thức lô gíc (ví dụ (a>0) and (b>0)) Câu lệnh là câu lệnh TP (ví dụ s:=a*b;) - Hoạt động: Điều kiện tính và kiểm tra, điều kiện đúng thì câu lệnh thực hiện, ngược lại câu lệnh bị bỏ qua GV: Trong lập trình các NNLT cung cấp các câu lệnh dùng để diễn đạt cấu trúc rẽ nhánh, chúng ta tìm hiểu NNLT Turbo pascal GV: Áp dụng câu lệnh vào ví dụ ta có câu lệnh if- then sau: If (a>0)and(b>0) then s:=a*b; GV: Chiếu chương trình đúng sử dụng câu lệnh If-then chạy chương trình trên Pascal cho HS quan sát HS: Chú ý quan sát, lắng nghe và chép bài GV: Tiếp tục chạy chương trình với liệu a=3, b=4 và a=-3, b=4 và yêu cầu HS nhận xét kết HS: Quan sát và nhận xét GV: Với liệu đầu là hợp lệ nên máy cho kết đúng (s=12.00) với liệu không hợp lệ nên trên màn hình kết không thông báo gì làm ta thấy khó chịu, thay vì xuất màn hình đen không có thông báo gì ta muốn có thông báo ‘du lieu khong hop le’ trên màn hình liệu nhập không đúng ( không dương) Khi đó Pascal cho phép ta dùng câu lệnh if-then dạng đủ GV: Giới thiệu cấu trúc rẽ nhánh dạng b If – then dạng đủ đủ - Cú pháp: HS: Quan sát và chép bài If<điều kiện> then <câu lệnh 1> else GV: Yêu cầu HS áp dụng câu lệnh if-then <câu lệnh 2>; dạng đủ để kiểm tra số x là chẵn hay lẻ Trong đó: HS: Trả lời Câu lệnh 1, câu lệnh là câu lệnh If (x mod 2=0 ) then write(‘la so chan’) Pascal Điều kiện là biểu thức logic else write(‘la so le’); - Hoạt động: Tin học 11! Trường THPT A Thanh Liêm Lop11.com (21)