Sáng kiến kinh nghiệm Hướng dẫn lập trình giải một số dạng bài tập cơ bản chương trình Tin học lớp 11 chương II, chương III
Bạn đang xem 20 trang mẫu của tài liệu "Sáng kiến kinh nghiệm Hướng dẫn lập trình giải một số dạng bài tập cơ bản chương trình Tin học lớp 11 chương II, chương III", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
Tóm tắt nội dung tài liệu: Sáng kiến kinh nghiệm Hướng dẫn lập trình giải một số dạng bài tập cơ bản chương trình Tin học lớp 11 chương II, chương III
MỤC LỤC Tiêu đề Trang A. ĐẶT VẤN ĐỀ:..........................................................................................2. B. NHỮNG BIỆN PHÁP GIẢI QUYẾT VẤN ĐỀ:......................................3. 1. Cơ Sở đề ra biện pháp: ............................................................................3. 2. Biện pháp giải quyết: ..............................................................................3. 2.1. Cấu trúc cơ bản nhất của một bài lập trình trong Turbo pascal: .........4. 2.2. Các bài tập cơ bản sử dụng cấu trúc điều kiện IF – THEN: ................9. 2.3. Các bài tập cơ bản sử dụng câu lệnh lặp với số lần biết trước: .........15. 2.4. Các bài tập cơ bản sử dụng câu lệnh lặp với số lần chưa biết trước: .18. 3. Tác động của biện pháp: ........................................................................21. 4. Kết quả đạt được: ....................................................................................20. C. KẾT LUẬN: ...........................................................................................21. TÀI LIỆU THAM KHẢO:...........................................................................22. Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 1 B. NHỮNG BIỆN PHÁP GIẢI QUYẾT VẤN ĐỀ: 1. Cơ sở đề ra biện pháp: Qua việc nghiên cứu các vấn đề về lập trình theo từng dạng bài tập từ cơ bản đến phức tạp của ngôn ngữ lập trình Pascal, các tài liệu về phương pháp giảng dạy. Từ đó, đưa ra các biện pháp lập trình cho học sinh thông qua các ví dụ cụ thể về chương trình lập trình từng phần khác nhau. Để thực hiện được điều đó, chúng ta cần phải tìm tòi, nghiên cứu tìm ra những bài toán phù hợp, kích thích được sự độc lập, tích cực của học sinh trong học tập. Trên cơ sở đó, học sinh có thể tự mình tìm ra được những ý tưởng sáng tạo vận dụng thiết thực vào cuộc sống thực tế khi nhu cầu nảy sinh, khi đó các em có thể tự mình hoàn thành được ý tưởng đó. 2. Biện pháp giải quyết: Qua quá trình giảng dạy để giúp cho học sinh dễ hiểu tôi có một số kinh nghiệm sau: - Trước hết phải giúp các em nắm vững về lý thuyết, tính nguyên tắc và logíc của một bài lập trình. Cách đặt tên chương trình, tên biến: ví dụ quá 8 kí tự ta cần dùng dấu gạch nối xen giữa, bài lập trình nào thì cần dùng câu lệnh gán phối hợp với công thức của toán học để tính, bài lập trình nào thì cần dùng câu lệnh If then, for to do , while ... do. - Hướng dẫn học sinh lập trình đi từ bài dễ tới khó. - Để lập trình tốt yêu cầu các em nắm vững công thức của toán học để chuyển đổi thành biểu thức của Pascal. Cho học sinh ghi lại một số công thức cơ bản trong toán học như : • Tính biểu thức : TBP= (a+b)2 Khi đó viết biểu thức trong Pascal là: TBP := a*a + 2*a*b+b*b; • Tính diện tích hình vuông : dientich = canh x canh Khi đó viết biểu thức trong Pascal là: S:= canh* canh; • Tính chu vi tam giác: Chuvi = canh a + canh b + canh c Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 3 - Cú pháp khai báo biến: • ; • Ví dụ khai báo biến cho bài toán tính diện tích và chu vi hình chữ nhật khi biết chiều dài và chiều rộng nhập từ bàn phím là các số nguyên thì: Var cd, cr, p, s : integer; • Kiểu dữ liệu: số nguyên là (byte, word, integer, longint), số thực (real, extended), - Câu lệnh nhập dữ liệu vào từ bàn phím: Read(); hoặc Readln(); Ví dụ: readln(cd, cr); - Câu lệnh hiển thị dữ liệu ra màn hình: Write(); hoặc Writeln(); Ví dụ: hiển thị Trường THPT Le Van Huu ra màn hình thì ta có lệnh là: Writeln(’Trường THPT Le Van Huu’); - Câu lệnh gán là tính toán giá trị biểu thức bên phải được kết quả cuối cùng thì gán cho tên biến phía bên trái là: := ; ví dụ: a:=9; b:=a*3; c. Các phép toán số học, các hàm cơ bản: - Các phép toán số học cơ bản: +, -, * (phép nhân), / (phép chia). - Các hàm cơ bản: • Hàm ABS(x): hàm tính giá trị tuyệt đối cho số thực hoặc số nguyên. • Hàm SQR(x): hàm tính bình phương cho số thực hoặc số nguyên. • Hàm SQRT(x): hàm tính căn bậc hai cho số thực hoặc số nguyên. • Hàm Ln(x) tính lôgarit tự nhiên của x (x là số thực). • Hàm Exp(x), sin(x), cos(x) tính lôgarit tự nhiên của x (x là số thực). d. Một số bài tập áp dụng lý thuyết trên: Bài 1: Dựa vào cấu trúc bài lập trình sắp xếp các lệnh sau để thành một bài lập trình tính giá trị s=a+b; Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 5 Var cd,cr, p, s : integer; Begin Write(’moi nhap chieu rong va chieu dai hinh chu nhat:’); Readln(cr,cd); p:=(cr+cd)*2; s:=cd*cr; Wrietln(’chu vi hinh chu nhat:’, p); Writeln(’dien tich hinh chu nhat:’,s); Readln End. Gợi ý: Bài tập 4: Lập chương trình nhập vào cạnh hình vuông, tính chu vi và diện tích hình vuông đó, cho kết quả hiển thị lên màn hình: Hướng dẫn Lập trình tương tự như bài 3: Chu vi tính P:=canh*4; Diện tích tính S:=canh*canh; Bài tập 5: Lập chương trình nhập vào ba cạnh của một tam giác, tính chu vi và diện tích hình tam giác đó, cho kết quả hiển thị lên màn hình: Hướng dẫn Lập trình tương tự như bài 3: Chu vi tính CV:=a+b+c; Nửa chu vi tính p:=CV/2; Diện tích tính S:=SQRT(p(p-a)*(p-b)*(p-c)); Bài 6: Lập chương trình nhập vào bán kính đường tròn R, tính chu vi và diện tích đường tròn đó, cho kết quả hiển thị lên màn hình: Hướng dẫn: Program Tinh_chuvi_dientich_ hinhtron; Const pi=3.14; Var r,cv,dt : Real; {real la so thuc} Begin Write(’moi nhap ban kinh hinh tron:’); Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 7 Hieu:= a*a – 2*a*b + b*b; Writeln(’hieu binh phuong =’, hieu); Readln End. Gợi ý: - Kết quả thu được khi chạy chương trình bài 8 là: hieu binh phuong = 1 - Các bài toán chạy chương trình nên tính toán kết quả câu lệnh gán, đoạn lập trình và đối chiếu câu lệnh hiển thị writeln để đưa ra kết quả. 2.2. Các bài tập cơ bản sử dụng cấu trúc điều kiện IF - THEN - Để có thể giúp học sinh nắm bắt được các kiến thức cấu trúc điều kiện ta có thể hình dung như sau: a. Cú pháp If - Then và ý nghĩa: Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh If - Then. Với hai dạng thiếu và đủ : Dạng 1: Cấu trúc rẽ nhánh dạng thiếu: If Then ; • Ý nghĩa: Nếu điều kiện có giá trị đúng thì câu lệnh sau từ khóa then được thực hiện. Nếu điều kiện có giá trị sai thì câu lệnh sau điều kiện then không được thực hiện. • Ví dụ: If 9>3 Then Writeln(’ban lam toan rat tot!’); Dạng 2: Cấu trúc rẽ nhánh dạng đầy đủ: If Then Else ; • Ý nghĩa: Nếu điều kiện có giá trị đúng thì câu lệnh 1 sau then được thực hiện và bỏ qua câu lệnh 2. Nếu điều kiện có giá trị sai thì câu lệnh 2 sau từ khóa Else được thực hiện và bỏ qua câu lệnh 1. • Ví dụ: If 9<3 Then wrietln(’ Ban di hoc toan ’) Else writeln(’ ban di hoc ly ’); Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 9 Writeln(’so b lon hon so a:’); Readln End. Bài 2: Cho biết kết quả hiển thị ra màn hình khi thực hiện chương trình sau: Prgram xet_so; Var a,b:integer; Begin a:= -13; b:=a*a – 169; If b=0 then Writeln(’Ket qua bieu thuc b=0’); If b>0 then writeln(’Ket qua bieu thuc b lon hon 0’); If b<0 then writeln(’Ket qua bieu thuc b nho hon 0’); Readln End. Hướng dẫn: Sau khi chạy chương trình trên có kết quả là: Ket qua bieu thuc b=0. Bài 3: Lập chương trình nhập vào một số nguyên khác 0. Cho biết bạn vừa nhập số nguyên đó là số âm hay số dương, hiển thị kết quả lên màn hình. Hướng dẫn: Program Nhap_xet_so; Var so:integer; Begin Writeln(’moi vao mot so nguyen khac 0:’); Readln(so); If so < 0 then writeln(’ so ba vua nhap la so am’); If so > 0 then writeln(’ so ban vua nhap la so duong’); Readln End. Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 11 Writeln(’phuong trinh bac hai vo nghiem); If delta=0 then Begin x:=-b/(2*a); Writeln(’phuong trinh bac hai co mot nghiem x1=x2=’,x:10:1); End; If delta <0 then Begin x1:=(-b-sqrt(delta))/(2*a); x2:= (-b+sqrt(delta))/(2*a); Writeln(’phuong trinh bac hai co nghiem thu nhat x1=’,x1:10:1); Writeln(’phuong trinh bac hai co nghiem thu hai x2=’,x2:10:1); End; Readln; End. Bài 6: Hãy nhập vào một số nguyên dương. Cho biết số bạn vừa nhập là số chẵn hay số lẻ. Hướng dẫn: Program xet_so; Var a: word; Begin Writeln(’moi nhap vao mot so nguyen duong:’); Readln(a); If a mod 2 = 0 then writeln(’so ban vua nhap la so chan’) Else writeln(’so ban vua nhap la so le’); Readln End. Bài 7: Hãy lập chương trình tính tiền điện cho khách hàng của từng hộ dân. Khi biết Số điện tiêu thu nhập vào từ bàn phím. Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 13 2.3. Các bài tập cơ bản sử dụng câu lệnh lặp với số lần biết trước: - Câu lệnh For tiến. - Câu lệnh For lùi. - Để có thể giúp học sinh nắm bắt được các kiến thức câu lệnh lặp với số lần biết trước ta cần nắm vững lý thuyết sau: Dạng 1: Câu lệnh For tiến. For := to do ; Trong đó: • For (lặp), To (tới), Do (làm) là các từ khóa của Pascal. • Biến đếm : Là một biến đơn, kiểu nguyên. • Giá trị đầu, giá trị cuối: Là những con số nguyên, một đoạn số nguyên liên tục: chẳng hạn như 1 đến 100, -10 đến 10, Ví dụ: For i:=1 to 100 do write(i:4); {Hiển thị số từ 1 đến 100} • Câu lệnh là một lệnh đơn hoặc lệnh ghép (lệnh ghép là sau do nếu yêu cầu thực hiện cùng lúc từ hai lệnh trở lên thì đặt vào giữa begin và end;) Ý nghĩa: Biến đếm nhận giá trị đầu kiểm tra nhỏ hơn hoặc bằng giá trị cuối thì đi thực hiện sau do. Sau đó biến đếm tự động tăng lên một đơn vị thì cũng phải kiểm tra tương tự như trên nếu đúng đi thực hiện câu lệnh sau do. Nếu sai thoát khỏi vòng lặp for tiến. - Một số bài tập cơ bản: Bài 1: Sắp xếp các lệnh sau đây thành một bài lập trình hoàn chỉnh trong pascal để thực hiện hiển thị các số từ 1 2 3 4 5 mỗi số cách nhau 3 khoảng cách trắng. Var i:integer; Clrscr; End. Uses crt; Readln For i:=1 to 5 do Begin Write(i:4); Hướng dẫn: Uses crt; Var i:integer; Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 15 Bài 3: Em hãy lập chương trình nhập vào một số nguyên dương n. Tính tổng các số nguyên từ 1 đến n. Cho hiển thị tổng ra màn hình. Hướng dẫn: Program tính_tong; Var i,n :integer; s:real; Begin Write(‘moi nhap so nguyen duong n’); Readln(n); s:=0; For i:=1 to n do s:=s+i; Writeln(’tong s=’,s); Readln End. Bài 4: Em hãy lập chương trình nhập vào một số nguyên dương n. Tính tổng s=2+4+..+2n. Cho hiển thị tổng s ra màn hình. Hướng dẫn: Program tính_tong; Var i, n :integer; s:real; Begin Write(’moi nhap so nguyen duong n’); Readln(n); s:=0; For i:=2 to 2*n do If (i mod 2 = 0) then s:=s+i; {A} Writeln(’tong s=’,s); Readln End. Ph¹m Anh Tïng – Trêng THPT Lª V¨n Hu 17
File đính kèm:
- sang_kien_kinh_nghiem_huong_dan_lap_trinh_giai_mot_so_dang_b.doc