Giáo án môn Tin học khối 11 - Bài: Bài tập chương IV

Giáo án môn Tin học khối 11 - Bài: Bài tập chương IV

I. MỤC TIÊU

1. Kiến thức

- Các quy tắc kiểu dữ liệu có cấu trúc để thực hiện dữ liệu thực tế.

- Kiểu dữ liệu có cấu trúc được xây dựng từ những kiểu dữ liệu cơ sở theo một số cách thức tạo kiểu do ngôn ngữ lập trình Pascal quy định.

- Mỗi kiểu dữ liệu có cấu trúc thường hữu ích trong việc giải quyết một số bài tập.

- Trong ngôn ngữ Pascal dùng mô tả kiểu dữ liệu mới với từ khoá Type.

2. Kỹ năng

- Rèn luyện kĩ năng khai báo kiểu dữ liệu có cấu trúc (với Pascal, sử dụng thành thạo các từ khoá Var, Type).

- Sử dụng thành thạo các thao tác vào/ ra và các phép toán trên các thành phần cơ sở.

 

doc 7 trang Người đăng quocviet Lượt xem 1698Lượt tải 1 Download
Bạn đang xem tài liệu "Giáo án môn Tin học khối 11 - Bài: Bài tập chương IV", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
BÀI: BÀI TẬP CHƯƠNG IV (t1)
Tiết: 34
Ngày soạn:
14/01/2010
Ngày giảng:
18/01/2010
MỤC TIÊU
Kiến thức
Các quy tắc kiểu dữ liệu có cấu trúc để thực hiện dữ liệu thực tế.
Kiểu dữ liệu có cấu trúc được xây dựng từ những kiểu dữ liệu cơ sở theo một số cách thức tạo kiểu do ngôn ngữ lập trình Pascal quy định.
Mỗi kiểu dữ liệu có cấu trúc thường hữu ích trong việc giải quyết một số bài tập.
Trong ngôn ngữ Pascal dùng mô tả kiểu dữ liệu mới với từ khoá Type.
Kỹ năng
Rèn luyện kĩ năng khai báo kiểu dữ liệu có cấu trúc (với Pascal, sử dụng thành thạo các từ khoá Var, Type).
Sử dụng thành thạo các thao tác vào/ ra và các phép toán trên các thành phần cơ sở.
Tư duy
Tạo sự logic trong lập trình, sử dụng các kiểu có cấu trúc vào lạp trình cho phù hợp.
Thái độ
Nhiệt tình, chú ý, có sáng tạo, tự thực hành thêm. Rèn các đức tính: Cẩn thận, ham học hỏi, có tinh thần tương trợ bạn, làm việc trong nhóm.
Tiếp tục hình thành và xây dựng phẩm chất cần thiết của người lập trình.
CHUẨN BỊ BÀI GIẢNG
Phương tiện
 + Chuẩn bị của giáo viên:
Giáo án, bài giảng điện tử, hướng dẫn học sinh giải các bài tập 5,6,7,8,9,10,11 trang 79 & 80 SGK.
 + Chuẩn bị của học sinh:
SGK, chuẩn bị bài trước ở nhà. Làm bài theo nhóm. 
Phương pháp dạy học
Gợi mở vấn đáp
Đàm thoại
Dặt vấn đề
TIẾN TRÌNH DẠY HỌC
Kiểm tra bài cũ
- Kết hợp trong gờ bài tập.
Nội dung bài giảng
HOẠT ĐỘNG 1
1. Viết chương trình nhập 2 số a, b và đưa ra màn hình số nhỏ nhất.
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
1. Viết chương trình nhập 2 số a, b và đưa ra màn hình số nhỏ nhất.
Ví dụ: Nếu nhập vào 2 số 3, 7 thì đưa ra màn hình số nhỏ nhất là: 3 
Vậy để làm được bài này chúng ta sử dụng câu lệnh nào là phù hợp?
Yêu cầu HS độc lập soạn chương trình vào máy.
Giải quyết thắc mác (nếu có).
Yêu cầu HS thực hiên nhập vào 3,7 và báo kết quả
J IF THEN ELSE
Program Min_ab;
Uses crt;
Var a,b : integer;
Begin
 Clrscr;
 Write('Nhap so thu nhat: ');
 Readln(a);
 Write('Nhap so thu hai: ');
 Readln(b);
 if a < b then
 Writeln('Gia tri nho nhat la:',a)
 else
 Writeln('Gia tri nho nhat la:',b);
 Readln;
End.
J Thực hiện chương trình, báo KQ: 3
HOẠT ĐỘNG 2
Bài tập 1.
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
Bài tập 1. Viết chương trình nhập mảng số nguyên và in ra màn hình phần tử nhỏ nhất của mảng số nguyên đó. 
Ví dụ: nhập vào mảng số 2 4 5 13 7 9 20. Thì đưa ra thông báo kết số nhỏ nhất của mảng là 2.
Đưa ra huật toán:
Bước 1: Nhập N và mảng số nguyên A1, A2,An;
Bước2:Gán Min = A1;Cho i chạy từ 2 đến n
Bước 3: Nếu i>n thì đưa ra Min rồi kết thúc;
Bước 4: 
 4.1 Nếu Ai< Min thì gán Min = Ai;
 4.2 Gán i:=i+1 quay lại bước 3
Ở đây chúng ta sử dụng câu lệnh For đơn.
Yêu cầu HS soạn chương trình vào máy, 2 em một máy.
Giải quyết thắc mác (nếu có).
Program Min;
Uses crt;
Var A: array[1..100] of integer;
 Min,i, N : integer;
Begin
 Clrscr;
 Write('So phan tu cua mang: '); Readln(N);
 For i:=1 to N do
 Begin
 Write(' A[', i,']= ');
 Readln(A[i]);
 End;
 Min:=A[1];
 For i:=2 to N do
 if A[i] < Min then Min:= A[i];
 Writeln(' Gia tri nho nhat cua mang la:',Min);
 Readln;
End.
Test chương trình và lưu lại.
HOẠT ĐỘNG 3
Bài tập 2:
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
Bài tập 2: Nhập một xâu từ bàn phím và đưa ra màn hình :
- Độ dài của xâu là bao nhiêu?
- In ra xâu đã bị xóa đi kí tự đầu của xâu?
- In ra xâu đã bị xóa đi kí tự cuối?
Yêu cầu bài toán:
- Cho biết độ dài của xâu? 
- In ra xâu đã bị xóa đi kí tự đầu của xâu?
- In ra xâu đã bị xóa đi kí tự cuối?
Yêu cầu HS độc lập soạn chương trình vào máy.
Program Xoaxau;
Uses crt;
Var a:string;
 n, vt, k:integer;
Begin
 Clrscr;
 write('Nhap vao mot xau '); readln(a);
 write('Nhap vi tri muon xoa '); readln(vt);
 write('Nhap so luong ki tu muon xoa '); readln(n);
 k:=length(a);
 delete(a,vt,n);
 writeln(' Do dai cua xua la:', k);
 writeln('Xau ket qua sau khi xoala:',a);
 readln;;
End.
HOẠT ĐỘNG 4
Bài tập 3:
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
Bài tập 3: Viết chương trình nhập từ bàn phím thông tin của học sinh: Hoten, diemtoan, diemvan, diemtin. 
In ra màn hình những thông tin sau:
 - Hoten, 
 - Diemtoan
 - Diemvan
 - Diem tin
 -Tongdiem
Gợi ý
Type 	{ phan Khai bao}
 Hocsinh = record
	 Hoten : string[30];
	 diemtoan,diemvan,diemtin,Tong:integer;
 end;
Var A: ARRAY[1..100] of Hocsinh;
	 i,n: integer;
................................................................
Nhập số lượng học sinh
Write(' Nhap vao so hoc sinh trong lop : ');
readln(n);
..................................................................
Nhập dữ liệu bản ghi
For i:=1 to n do
 Begin
 writeln('Nhap so lieu cho hoc sinh thu ',i);
 Write('Ho Va Ten : '); readln(A[i].Hoten);
 Write(' Diem toan : ');readln(A[i].diemtoan);
 Write(' Diem van : ');readln(A[i].diemvan);
 Write(' Diem Tin : ');readln(A[i].diemtin);
 End;
............................................................
Cách tính tổng điểm cho học sinh
For i:=1 to n do 
 A[i].Tong := A[i].diemtoan+ A[i].diemvan+ A[i].diemtin;
..............................................................
Xuất dữ liệu ra màn hình
{ Xuat bang du lieu ra man hinh}
For i:=1 to n do
 Writeln('BANG KET QUA THI');
 Writeln(' Ho va ten diemtoan diemvan diem tin Tong diem ');
 Writeln(A[i].Hoten:5);
 Write(A[i].diemtoan:8);
 Write(A[i].diemvan:8);
 Write(A[i].diemtin:8);
 Write(A[i].tong:8);
Yêu cầu học sinh soạn ct và test.
Giải quyết thác mác(nếu có).
Program hocsinh;
Type 	{ phan Khai bao}
 Hocsinh = record
	Hoten : string[30];
	diemtoan,diemvan,diemtin,Tong:integer;
 end;
Var A: ARRAY[1..100] of Hocsinh;
	i,n: integer;
BEGIN
 Write(' Nhap vao so hoc sinh trong lop : '); readln(n);
 For i:=1 to n do
 Begin
 writeln('Nhap so lieu cho hoc sinh thu ',i);
 Write('Ho Va Ten : '); readln(A[i].Hoten);
 Write(' Diem toan : ');readln(A[i].diemtoan);
 Write(' Diem van : ');readln(A[i].diemvan);
 Write(' Diem Tin : ');readln(A[i].diemtin);
 End;
 For i:=1 to n do
 A[i].Tong := A[i].diemtoan + A[i].diemvan+ A[i].diemtin;
 Writeln('BANG KET QUA THI');
 Writeln(' Ho va ten diemtoan diemvan diem tin Tong diem ');
 For i:=1 to n do
 Writeln(A[i].Hoten:5,A[i].diemtoan:8,A[i].diemvan:8,A[i].diemtin:8,A[i].tong:8);
 Readln;
END.
Củng cố
	+ Kiểu mảng: cách khai báo, cách truy cập, in mảng.
	+ Kiểu xâu : Cách khai báo, thao tác xử lý xâu. 
	+ Kiểu bản ghi: Cách khai báo, các thao tác với bản ghi
Dặn dò
Các em về xem lại lý thuyết về Kiểu mảng, kiểu xâu và kiểu bản ghi để tiết sau chúng ta kiểm tra 1 tiết, ôn chương IV.
Các em nghỉ!
NHẬN XÉT
Phương pháp:
Hiệu quả sử dụng:
Hiệu quả SD TBDH:
ND cần điểu chỉnh:
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DÂN

Tài liệu đính kèm:

  • docTiet 34.doc