Giáo án Tin 11 - Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình

- Để thực hiện chương trình ta viết bằng ngôn ngữ lập trình, ta cần soạn

thảo, sử dụng chương trình dịch để dịch chương trình đó sang ngôn ngữ

máy. Các hệ thống lập trình cụ thể thường cung cấp phần mềm phục

vụ cho việc soạn thảo, dịch và hiệu chỉnh chương trình.

- Soạn thảo : Là quá trình gõ nội dung chương trình gồm phần khai

báo và các lệnh trong thân chương trình. Về cơ bản việc soạn thảo

pdf5 trang | Chia sẻ: maiphuongdc | Lượt xem: 5997 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Giáo án Tin 11 - Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
GIÁO ÁN SỐ 8 Lớp 11 soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình Giáo viên hướng dẫn : Thầy Trần Doãn Vinh Sinh viên thực hiện : Nguyễn tiến Lợi A - Mục đích, yêu cầu - Giới thiệu cho học sinh biết các bước :soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình. -Biết một số công cụ của môi trường Turbo pascal. -Bước đầu sử dụng chương trình dịch để phát hiện lỗi. -Bước đầu chỉnh sửa được chương trình dựa vào thông báo lỗi của chương trình dịch và tính hợp lý của kết quả thu được. B – phương pháp, phương tiện. - Sử dụng phương pháp : thuyết trình, vấn đáp, thực hành… - Sách giáo khoa, vở ghi, sách tham khảo… C - Tiến trình nội dung bài giảng I - Ổn định lớp - yêu cầu lớp trưởng báo cáo sỹ số. II - Kiểm tra bài cũ, giới thiệu bài mới - gọi học sinh lên bảng trả lời câu hỏi và cho điểm. -Đặt câu hỏi và giới thiệu bài mới. III - Nội dung bài học Nội dung Hoạt động của thầy và trò T.Gian - Để thực hiện chương trình ta viết bằng ngôn ngữ lập trình, ta cần soạn thảo, sử dụng chương trình dịch để dịch chương trình đó sang ngôn ngữ máy. Các hệ thống lập trình cụ thể thường cung cấp phần mềm phục vụ cho việc soạn thảo, dịch và hiệu chỉnh chương trình. - Soạn thảo : Là quá trình gõ nội dung chương trình gồm phần khai báo và các lệnh trong thân chương trình. Về cơ bản việc soạn thảo chương trình gần giống việc soạn thảo văn bản thông thường. Để lưu nội dung chương trình vào đĩa bằng cách nhấn phím F2, nhập tên tệp rồi nhấn phím Enter - Biên dịch chương trình : chương trình dịch Tubo Passcal thuộc loại biên dịch. Lỗi cú pháp được phát hiện ngay trong quá trình dịch. Khi gặp lỗi, TP sẽ không dich tiếp mà - Đưa yêu cầu ra cho học sinh : em hãy nêu 1 số ngôn ngữ lập trình mà em biết - Lấy ví dụ về ngôn ngữ Passcal, C, C++… - lấy ví dụ về giải phương trình bậc 2 : 2x2 + 3x – 5 = 0 Program Var a , b, c , d : real; x1, x2 : real ; begin write (‘ nhap cac he so a, b, c :’); readln (a,b,c); d:= sqr(b)-4a*c ; if d<0 then writeln (‘phuong trinh vo nghiem’) if d=0 then writeln(‘phuong trinh co nghiem kep : x1=x2 =’,-b/(2-a) :0:5); if d>0 then x1:= (-b=sqrt(d))/(2*a) ; dừng lại cho biết lỗi và vị trí lỗi.Vì vậy trong quá trình soạn chương trình có thể dùng chương trình dịch( kết hợp sử dụng các phím F7, F8, F4 và F9), nhấn tổ hợp phím Alt+F9. Nếu chương trình có lỗi cú pháp thì, phần mềm sẽ hiển thị thông báo. Nếu không có lỗi chương trình lại được tiếp tục. - Thực hiện chương trình(chạy chương trình) : Nhấn tổ hợp phím Ctr+F9( thuộc bảng chon Run). Nếu trước đó ta vừa dịch không có lỗi chương trình sẽ thực hiện ngay. + Trong quá trình chạy chương trình nếu gặp thủ tục readln không có tham sỗ thì người dung phải nhấn phím Enter hoặc readln có kèm theo nhiều danh sách biến thì nhập giá trị cho biến rồi nhấn Enter -Chú ý : Khi thực hiện chương trình TP vó thể không báo lỗi, chẳng hạn như lỗi chia chia cho 0, lỗi vượt phạm vi khai báo, lỗi tràn stack… -Có trường hợp không còn lỗi nhưng kết quả thu được vẫn x2;=-b/a-x1 ; writeln(‘phuong trinh co 2 nghiem :’); writeln(‘x1 = ’); writeln(‘x2 = ’); end; readln; - Giới thiệu cho học sinh một bộ test Cho bảng A kích thường m x n (m dòng, n cột), mỗi ô trong bảng có kí hiệu là A(i,j) (hàng i cột j) chứa 1 số nguyên dương. Từ ô A(i,j) có thể đi được tới A(i-1,j+1) hoặc A(i,j+1) hoặc A(i+1,j+1). Tìm đường đi từ cột 1 đến cột n sao cho tổng giá trị trong các ô đi qua là lớn nhất. Thuật giải: Ta gọi A(i,j) là giá trị trong các ô A(i,j). B(i,j) là tổng lớn nhất của các ô đi qua từ cột 1 đến ô A(i,j), như vậy ta có công sai.Trong trương hợp này, nguyên nhân thường do bộ đọc dữ liệu sai hoặ viết chương trình chưa thể hiện đúng thuật toán hoặc thuật toán trong chương trình chưa đảm bảo tính đúng đắn. Thông thường người ta kiểm tra tính đúng đắn của thuật toán bằng một số bộ dữ liệu đặc biệt( bộ test ). Các dạng của bộ test + Kích thước nhỏ, dễ đoán nhận kết quả( không cần máy tính) +Kích thước nhỏ, dễ đoán nhận kết quả nhưng có tính chất đặc biệt ( dễ dẫn đến kết quả sai). +Kích thước lớn nhưng có quy luật tìm ra output bằng suy luận không nhờ máy tính +Kích thước lớn và có giá trị ngẫu nhiên để kiểm tra các lỗi về tổ chức dữ liệu và thời gian cho phép thực hiện. - Ngoài cách kiểm tra bằng các bộ test có thể dùng thủ tục write, writeln để hiển thị giá trị một vài biến đang cần quan tâm tại một thời điểm thực hiện trên màn hình hoặc thức: Code: B(i,1)= A(i,1) B(i,j)= Max{B(i-1,j-1), B(i,j-1), B(i+1,j-1)} + A(i,j) Và kết quả cuối cùng là Max{B(i,n)}. *Trong gìơ thực hành nên đưa một số bộ test vào từng bài cụ thể sử dụng tổ hợp phìm Ctl+F7 để theo dõi các giá trị các biến trong cửa sổ watches( chạy chương trình), căn cứ vào giá trị các biến đó có thể điều chỉnh chương trình để có kết quả như mong muốn .Sau khi chương trình kết thúc thì xoá các lệnh này IV. Củng cố bài - Hôm nay chúng đã tìm hiểu soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình, tìm hiểu thế nào là bộ test V. Bài tập về nhà - Viết một chương trình hoàn chỉnh để giải phương trình 5x + 10 =0 - Cho hay thử trên máy, tập sử dụng các phím chức năng F2, F3, F9,…. -Chuẩn bị bài cho giờ thực hành. VI. Nhận xét và rút kinh nghiệm giờ giảng

Các file đính kèm theo tài liệu này:

  • pdfgiao_an_so_8_lop_11_651.pdf