giao an tin 11 full

99 604 3
giao an tin 11 full

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- Ngày soạn: 01/09/07 Chương I : MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Tiết ….Bài 1 : KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH I. Mục tiêu + Kiến thức:  Hiểu khả năng của ngôn ngữ lập trình bậc cao, phân biệt được với ngôn ngữ máy và hợp ngữ.  Hiểu ý nghĩa và nhiệm vụ của chương trình dịch. Phân biệt được biên dịch và thông dịch. + Thái độ: Ham muốn tìm hiểu các ngôn ngữ lập trình. II. Chuẩn bị của giáo viên và học sinh + Giáo viên: + Học sinh: Đọc trước SGK, xem lại một số kiến thức Tin học lớp 10. III. Phương pháp: Diễn giải, đàm thoại, giải quyết tình huống có vấn đề. IV. Tiến trình bài học: Hoạt động 1: Tìm hiểu khái niệm lâp trình và ngôn ngữ lập trình TG Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng 3’ 4’ 3’ -Quan sát bài toán và trả lời câu hỏi. +Input: a, b +Output: x=-b/a, vô nghiệm, vô số nghiệm. +B1: Nhập a, b. B2: Nếu a<> 0 kết luận có nghiệm x=-b/a. B3: Nếu a=0 và b<>0, kết luận vô nghiệm. B4: Nếu a=0 và b=0, kết luận vô số nghiệm. -Dùng ngôn ngữ lập trình. -Cho bài toán sau: Kết luận nghiện của phương trình ax + b=0. + Hãy xác định Input, Output của bài toán trên. + Hãy xác định các bước để giải bài toán trên -Hệ thống các bước này chúng ta gọi là thuật toán. Làm thế nào để máy tính điện tử có thể hiểu được thuật toán này ? -Diễn giải: Hoạt động để diễn đạt một thuật toán thông qua một ngôn ngữ lập trình được gọi là lập trình. -Các em hãy cho biết khái niệm về lập trình ? Bài 1 KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 5’ 4’ 3’ 3’ -Nghiên cứu nội dung trong SGK và trả lời câu hỏi +Lập trình là việc sử dụng cấu trúc dữ liệu và các lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. + Được một chương trình. +Ngôn ngữ máy, hợp ngữ và ngôn ngữ bâc cao. -Nghiên cứu SGK và trả lời câu hỏi. + Chương trình viết bằng ngôn ngữ máy có thể nạp trực tiếp vào bộ nhớ và thực hiện ngay. + Chương trình viết bằng ngôn ngữ lập trình bậc cao phải được chuyển đổi thành chương trình trên ngôn ngữ lập máy thì mới thực hiện được. -Phải sử dụng một chương trình dịch để chuyển đổi. Ngôn ngữ bậc cao dễ viết, dễ hiểu. Ngôn ngữ máy khó viết. - Kết quả của hoạt động lập trình ? -Ngôn ngữ lập trình gồm những loại nào ? -Theo các em chương trình được viết bằng ngôn ngữ bậc cao và chương trình được viết bằng ngôn ngữ máy khác nhau như thế nào ? -Làm thế nào để chuyển một chương trình viết bằng ngôn ngữ bậc cao sang ngôn ngữ máy ? -Vì sao không lập trình trên ngôn ngữ máy để khỏi mất công chuyển đổi khi lập trình với ngôn ngữ bậc cao - Lập trình là việc sử dụng cấu trúc dữ liệu và các lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. Hoạt động 2: Tìm hiểu hai loại chương trình dịch: thông dịch và biên dịch TG Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 5’ 4’ 3’ 3’ -Nghiên cứu SGK và trả lời câu hỏi: + Chương trình nguồn là chương trình viết bằng ngôn ngữ lập trình bậc cao. + Chương trình đích là chương trình thực hiện chuyển đổi sang ngôn ngữ máy. -Nghiên cứu SGK và trả lời câu hỏi: +Thông dịch: B1: Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn; B2: Chuyển lệnh đó thành ngôn ngữ máy B3: Thực hiện các câu lệnh vừa được chuyển đổi. +Biên dịch: B1: Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của các câu lệnh trong chương trình nguồn. B2: Dịch toàn bộ chương trình -Theo các em đối với chương trình dịch: chương trình nào là chương trình nguồn và chương trình đích -Nêu vấn đề: Em muốn giới thiệu về trường mình cho một người khách du lịch quốc tế biết tiếng Anh, có hai cách thực hiện: C1: Cần một người biết tiếng Anh dịch từng câu nói của em sang tiếng Anh cho người khách. Cách mày gọi lag thông dịch C2: Em soạn nội dung giới thiệu ra giấy và người phiên dịch dịch toàn bộ nội dung đó sang tiếng Anh rồi đọc cho khách nghe. Cách này gọi là biên dịch. Tương tự chương trình dịch có hai loại là thông dịch và biên dịch. -Các em hãy cho biết tiến trình của thông dịch và biên dịch. -Chương trình dịch gồm thông dịch và biên dịch. a) Thông dịch B1: Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn; B2: Chuyển lệnh đó thành ngôn ngữ máy B3: Thực hiện các câu lệnh vừa được chuyển đổi. +Biên dịch: B1: Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của các câu lệnh trong chương trình nguồn. B2: Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máy và có Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- nguồn thành một chương trình đích có thể thực hiện trên máy và có thể lưu trữ để sử dụng lại khi cần thiết thể lưu trữ để sử dụng lại khi cần thiết Hoạt động 3(3’): Củng cố kiến thức -Khái niệm lập trình và ngôn ngữ lập trình. -Các ngôn ngữ lập trình: ngôn ngữ máy, ngôn ngữ bậc cao, hợp ngữ. -Khái niệm chương trình dịch. -Thông dịch và biên dịch. Ngày soạn :06/09/07 Tiết … - Bài 2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH I. Mục tiêu: 1. Kiến thức: - Biết ngôn ngữ lập trình có ba thành phần cơ bản là: Bảng chữ cái, cú pháp và ngữ nghĩa. hiểu được ba thành phần này - Biết một số khái niệm: Tên, tên chuẩn, tên dành riêng(từ khoá), hằng và biến. 2. Kỹ năng: - Phân biệt được ba thành phần:bảng chữ cái ,cú pháp và ngữ nghĩa - Phân biệt được tên, hằng và biến. biết đặt tên đúng 3. Tư duy và thái độ : - Tư duy logic - Thái độ cẩn thận, chính xác. II. Chuẩn bị của giáo viên và học sinh; 1. GV: Bảng phụ, phấn, thước. 2. HS: Đọc trước bài ở nhà III. Phương pháp - Thuyết trình, vấn đáp, hoạt động nhóm IV. Tiến trình bài học HĐ1: Các thành phần cơ bản (15’) TG HĐ CỦA HS HĐ CỦA GV GHI BẢNG 3’ - Chữ cái - Cú pháp - Ý nghĩa của điều cần diễn tả. Lắng nghe HĐTP1:Dẫn dắt vào baì - Để diễn tả một ngôn ngữ tự nhiên ta cần phải biết những gì? - Các ngôn ngữ lập trình nói chung thường có chung một số thành phần như:Dùng những kí hiệu nào để viết chương trình, viết theo quy tắc nào? viết như vậy có ý nghĩa là gì? Mỗi ngôn ngữ lập trình có một quy định riêng về những thành phần này Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 7’ 12’ 8’ 8’ HS chú ý HS lắng nghe Khác nhau: Dấu cộng trong (1) là cộng 2 số thực cong trong (2) là cộng trong 2 số nguyên H ĐTP2: Giới thiệu bảng chữ cái GV treo bảng phụ 1 (SGK Trang 9) - Bảng chữ cái trong ngôn ngữ lập trình khác nhau có sự khác nhau. Ví dụ bảng chữ cái trong ngôn ngữ lập trình C ++ chỉ khác pascal là sử dụng thêm các kí tự như dấu nháy kép(“), dấu sổ ngược(\), dấu chấm than(!). - HĐTP3: Giớ thiệu cú pháp - Cú pháp ngôn ngữ lập trình khác nhau cũng khác nhau ngôn ngữ pascal dùng cặp từ Begin- End để gộp nhiều lệnh thành một lệnh nhưng trong C ++ dùng cặp kí hiệu {}. Ví dụ : Xét 2 biểu thức A+B (1) A,B là các số thực. I+J (2) với I,J là các số nguyên Hỏi HS: Về ngữ nghĩa 2 biểu thức trên có khác nhau không? - Mỗi nôn ngữ khác nhau cũng có ngữ nghĩa khác nhau 1. Các thành phần cơ bản - Mỗi ngôn ngữ lập trình thường có ba thành phần cơ bản là: bảng chữ cái ,cú pháp và ngữ nghĩa. a.Bảng chữ cái:Là tập các kí hiệu dùng để viết chương trình b. Cú pháp - Là bộ quy tắc để viết chương trình c. Ngữ nghĩa Xác định ý nghĩa 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 của nó. Tóm lại: - cú pháp cho biết cách viết một chương trình Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 3’ HS lắng nghe và ghi chép. hợp lệ, còn ngữ nghĩa xác định ý nghĩa của các tổ hợp kí tự trong chương trình. - Các lỗi cú pháp được chương trình dịch phát hiện và thông báo cho người lập trình biết. chương trình không còn lỗi cú pháp thì mới có thể dịch sang ngôn ngữ máy. - Lỗi ngữ nghĩa được phát hiện khi chạy chương trình HĐ2: Giới thiệu Tên(15’) TG HĐ CỦA HS HĐ CỦA GV GHI BẢNG 5’ Lắng nghe và ghi chép - Trong các ngôn ngữ lập trình nói chung,các đối tượng sử dụng trong chương trình đều phải đặt tên để tiện cho việc sử dụng. Việc dặt tên trong các ngôn ngữ khác nhau là khác nhau,có ngôn ngữ phân biệt chữ hoa,chữ thường, có ngôn ngữ không phân biệt chữ hoa, chữ thường. - Ngôn ngữ lập trình pascal không phân biệt chữ hoa chữ thường nhưng một số ngôn ngữ lập trình khác(như C ++ ) lại phân biệt chữ hoa, chữ thường 2 Một số khái niệm a. Tên: - Mọi đối tượng trong chương trình đều phải được đặt tên theo quy tắc của ngôn ngữ lập trình - Trong ngôn ngữ turbo pascal tên là một dãy liên tiếp không quá 127 kí tự bao gồm: chữ số, chữ cái hoặc dấu gạch dướivà bắt đầu bằng chữ cái hoặc gạch dưới - Ví dụ : Trong ngôn ngữ pascal + Các tên đúng: A, Bre1, -ten, . . . + Các tên sai: a bc, 6hgf, x# y, - Ngôn ngữ lập trình có 3 loại tên: tên dành riêng, tên chuẩn, tên do người lập trình đặt. • Tên dành riêng: Là những tên được ngôn ngữ lập trình quy định với ý nghĩa Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 4’ 5’ 5’ riêng xác định mà người lập trình không được dùng với ý nghĩa khác - Tên dành riêng được gọi là từ khoá - Ví dụ: một số tên dành riêng: - Trong pascal : program, uses, var, const, - Trong c ++ : main, include, if, . - * Tên chuẩn: là nhữnh tên được ngôn ngữ lập trình dùng với ý nghĩa nhất định nào đó. Trong các thư viện của ngôn ngữ lập trình. - Ví dụ : Một số tên chuẩn - Trong pascal: real, integer, char, . - Trong c ++ : cin, count, . * Tên do người lập trình đặt: Được xác định bằng cách trước khi sử dụng, không được trùng với tên dành riêng HĐ3: Hằng và biến (10’) TG HĐ CỦA HS HĐ CỦA GV GHI BẢNG 5’ 5’ Lắng nghe Lắng nghe VG đưa ra ví dụ:Đẻ viết một chương trình giải phương trình bậc hai ta cần khai báo những tên sau: - a,b,c là ba tên dùng để lưu ba hệ số của phương trình. - - x1,x2 là hai tên dùng để lưu nghiệm ( nếu có). - - Delta là tên dùng để lưu giá trị của delta. - b. Hằng và biến - * Hằng: Là đại lượng có giá trị không đổi trong quá trình thực hiện chương trình - - Các ngôn ngữ lập trình thường có: - + Hằng số học: số nguyên hoặc số thực - + Hăng logic: Là cácgiá trị đúng hoặc sai - Ví dụ ( bảng phụ 2:vd về hằng sgk trang 12) - * Biến:Là đại lượng được đặt tên, dùng để lưu trữ gí trị và giá trị có thể được Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 3’ Biến là đối tượng sử dụng nhiều nhất trong khi viết chương trình. Biến là đại lượng có thể thay đổi được nên thường dùng để lưu trữ kết quả thay đổi trong quá trình thực hiện chương trình - Biến phải khai báo trước khi sử dụng. - C. Chú thích: - - Trong khi viết chương trình có thể viết các chú thích cho chương trình. Chú thích không làm ảnh hưởng đến chương trình - Trong pascal chú thích được đặt trong {} hoặc (* *) - Trong C ++ chú thích đặt trong: /* */ HĐ4: Củng cố toàn bài:(4’) Giáo viên mở một chương trình pascal đơn giản có chứa các thành phần là các khái niệm của bài học, nếu không có máy thì sử dụng bảng phụ đẻ chỉ cho HS từng khái niệm trong chương trình. Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- Ngày soạn: 12/09/07 Tíêt thứ:…… BÀI TẬP CHƯƠNG 1 I. Mục tiêu: 1. Về kiến thức: - Biết có 3 lớp ngôn ngữ lập trình và các mức của ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao. - Biết vai trò của chương trình dịch. - Biết khái niệm biên dịch và thông dịch. - Biết các thành phần cơ bản của ngôn ngữ lập trình: bảng chữ cái, cú pháp và ngữ nghĩa. - Biết các thành phần cơ sở của Pascal: bảng chữ cái, tên, tên chuẩn, tên riêng (từ khóa), hằng và biến. 2. Về kỹ năng: - Biết viết hằng và tên đúng trong một ngôn ngữ lập trình cụ thể. 3. Về tư duy và thái độ: - Nhận thức được quá trình phát triển của ngôn ngữ lập trình gắn liền với quá trình phát triển của tin học nhằm giải các bài toán thực tiễn ngày càng phức tạp. - Ham muốn học một ngôn ngữ lập trình cụ thể để có khả năng giải các bài toán bằng máy tính điện tử. II. Chuẩn bị của giáo viên và học sinh: 1. Giáo viên: chuẩn bị nội dung để giải bài tập cuối chương và một số câu hỏi trắc nghiệm của chương. 2. Học sinh:Ôn lại kiến thức của chương, chuẩn bị bài tập cuối chương. III. Phương pháp: - Thuyết trình, vấn đáp IV. Tiến trình bài học: 1. Ổn định lớp và kiểm tra sĩ số. 2. Kiểm tra bài cũ. 3. Tiến trình tiết dạy: TG Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng 5 ‘ - Đọc yêu cầu của câu hỏi và bài tập cuối chương trang 13 SGK. - Suy nghĩ để đưa ra phương án trả lời. - Suy nghĩ, trả lời câu hỏi. - ĐVĐ: Trước khi giải bài tập trong SGK, các em tự ôn lại một số kiến thức mà chúng ta đã học ở các bài trước dựa trên yêu cầu của câu hỏi trang 13 SGK. - Đặt câu hỏi số 1: Tại sao người ta phải xây dựng các ngôn ngữ lập trình bậc cao? - Nhận xét, đánh giá và bổ sung hướng dẫn cho học sinh trả lời câu hỏi số 1: Bài: BÀI TẬP CHƯƠNG 1 1. Câu 1: - Ngôn ngữ bậc cao gần với ngôn ngữ tự nhiên hơn, thuận tiện cho đông đảo người lập trình. - Chương trình viết bằng ngôn ngữ bậc cao nói chung không phụ thuộc vào phần cứng máy tính và một chương trình có thể thực hiện trên nhiều máy tính khác nhau. Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -------------------------------------------------------------------------------------------------------------- 10 ‘ 10’ - Suy nghĩ, trả lời câu hỏi. - Suy nghĩ, trả lời câu hỏi, cho ví dụ - Suy nghĩ, trả lời, giải thích từng câu hỏi, - Đặt câu hỏi 2: Chương trình dịch là gì? Tại sao cần phải có chương trình dịch? . - Đặt câu hỏi 3: Biên dịch và thông dịch khác nhau như thế nào? - Phân tích câu trả lời của học sinh. - Đặt câu hỏi 4: Hãy cho biết các điểm khác nhau giữa tên dành riêng và tên chuẩn? - Gọi hs trả lời và cho ví dụ - Phân tích câu trả lời của học sinh. - Đặt câu hỏi 5: Hãy tự viết ra ba tên đúng theo quy tắc của Pascal - Gọi 3 học sinh lên bảng cho ví dụ về tên do người lập - Chương trình viết bằng ngôn ngữ bậc cao dễ hiểu, dễ hiệu chỉnh và dễ nâng cấp. - Ngôn ngữ bậc cao cho phép làm việc với nhiều kiêu dữ liệu và cách tổ chức dữ liệu đa dạng, thuận tiện cho mô tả thuộc toán. 2. Câu 2: - Chương trình dịch là chương trình đặc biệt, có chức năng chuyển đổi chương trình được viết trên ngôn ngữ lập trình bậc cao thành chương trình thực hiện được trên máy tính cụ thể. Chương trình nguồn -> Chương trình dịch -> Chương trình đích 3. Câu 3: - Trình biên dịch: duyệt, kiểm tra, phát hiện lỗi, xác định chương trình nguồn có dịch được không? dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máy và có thể lưu trữ lại để sử dụng về sau khi cần thiết. - Trình thông dịch lần lượt dịch từng câu lệnh ra ngôn ngữ máy rồi thực hiện ngay câu lệnh vừa dịch được hoặc báo lỗi nếu không dịch được. 4. Câu 4: - Tên dành riêng không được dùng khác với ý nghĩa đã xác định, tên chuẩn có thể dùng với ý nghĩa khác. [...]... nhanh hơn - Treo tranh chứa bảng một số hàm chuẩn Yêu cầu: Học sinh điền thêm một số thông tin với các chức năng của hàm - Cho biểu thức x - 2 x +1 Nghiên cứu SGK - 26 và quan sát tranh vẽ, lên bảng điền tranh x2 - 1 Hãy biểu diễn biểu thức toán trong biểu thức trong NNLT -Trong lập trình ta phải so sánh - Suy nghĩ và trả lời: 2 giá trị nào đó trước khi thực hiện lệnh bằng cách sử dụng biểu thức quan... 4 Biểu thức quan hệ: Cấu trúc chung: Diễn đàn giáo án Đinh Như Huy * http://nhuhuy.tk -quan hệ còn gọi là biểu thức so (abs(x)-sqrt(2*x+1)/(x* x- < phép toán quan hệ > sánh được dùng để so sánh 2 giá 1) trị đúng hoặc sai + trong đó BT1 và BT2 phải - Cho một ví dụ về biểu thức cùng kiểu quan hệ + Kết quả của biểu thức quan - Kết quả mà... thích từng dòng lệnh 4.khai báo biến var ; Hoạt động 4 Khai báo biến Yêu cầu học sinh nghiên cứu sách ĐỌC sách Khai báo biến GK và cho biết vì sao phải khai báo Mọi biến dùng trong chương Var :; tên biến và kiểu dữ liệu của • Danh sách biến: biến Tên biến dùng để xác SGK lập quan hệ giữa biến với địa • Kiểu dữ liệu : chỉ... thức quan - Kết quả mà phép toán quan hệ hệ là TRUE hoặc FALSE thuộc kiểu dữ liệu nào đã học? VD: - 5 > 2 -Biểu thức logic là biểu thức quan hệ được liên kết với nhau bởi phép toán logic - Trả lời: - Hãy quan sát ví dụ về biểu thức logic sau: 2< x ≤ 8 x + y < 2* x*y 5 Biểu thức logic - Biểu thức logic đơn gảin là hằng hoặc biến logic - Dùng để liên kết nhiều biểu thức quan hệ lại với nhau - Kiểu logic... dữ liệu ra màn hình Trong pascal cung cấp thủ tục chuẩn: write(); hoặc writeln(); trong đó có thể tên biến đơn, biểu thức, hằng Ví dụ: write(‘Nap so N:’); Readln(N); • Chú ý: - writeln sau khi đưa kết quả ra con trỏ xuống dòng mới - Ngoài ra trong TPcó quy cách đưa thông tin ra nàm hình sau: + Kết quả thực: :: , giá... Huy * http://nhuhuy.tk -nhiêu ? - Quan sát và trả lời: i = 3 và j = 4 V/ Củng cố, dặn dò:(2’) - Nhắc lại một số khái niệm mới về: + Các phép toán : Số học, quan hệ, logic + Cấu trúc lệnh trong Pascal: tên_biến := biểu_thức; - Làm các bài tập 5, 6, 7, 8 SGK trang 35 - 36 - Xem trước bài: Các thủ tục chuẩn vào/ ra đơn giản Ngày soạn: 06/10/2007 Tiết . du lịch quốc tế biết tiếng Anh, có hai cách thực hiện: C1: Cần một người biết tiếng Anh dịch từng câu nói của em sang tiếng Anh cho người khách. Cách mày. xác lập quan hệ giữa biến với địa chỉ bộ nhớ nơi lưu giữ giá trị của biến. Khai báo biến. Var <danh sách biến>:<kiểu dữ liệu>; • Danh sách biến:

Ngày đăng: 29/07/2013, 01:25

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan