Giáo án môn Tin học 11 - Học kỳ I - Năm học 2013-2014

Bài 2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH

I. MỤC ĐÍCH, YÊU CẦU

1. Kiến thức

- Biết một số khái niệm như: tên, tên chuẩn, tên dành riêng, .

2. Kỹ năng

- Phân biệt được tên chuẩn với tên dành riêng và tên do người lập trình đặt.

- Nhớ các quy tắc đặt tên hằng và biến

- Biết đặt tên đúng, nhận biết tên sai.

3. Thái độ

- Ý thức được tầm quan trọng của môn học và có thái độ học tập nghiêm túc, luôn tự tìm hiểu học tập

II. CHUẨN BỊ

1. Gv: Giáo án, máy chiếu, máy tính, phòng chiếu hoặc bảng.

2. Hs: Hiểu kiến thức ở bài 1, đọc trước SGK bài 2.

III. PHƯƠNG PHÁP

- Thuyết trình, vấn đáp

- Diễn giải, đàm thoại, giải quyết tình huống có vấn đề.

IV. NỘI DUNG

1. Ổn định lớp:

+ Chào thầy cô.

+ Cán bộ lớp báo cáo sỉ số

+ Chỉnh đốn trang phục

2. Kiểm tra bài cũ

Câu 1: Thế nào là lập trình, ngôn ngữ lập trình?

Câu 2: Chương trình dịch là gì? Có mấy loại chương trình dịch?

I. MỤC ĐÍCH, YÊU CẦU

1. Kiến thức

- Cũng cố lại kiến thức về ngôn ngữ lập trình, chương trình dịch

- Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa.

2. Kỹ năng

- Biết các thành phần cơ bản 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. Quy tắc đặt tên trong Pascal, biết đặt tên đúng.

- Phân biệt được tên, hằng và biến

- Biết một trong những nhiệm vụ quan trọng của chương trình dịch là phát hiện lỗi cú pháp của chương trình nguồn.

3. Thái độ

- Nghiêm túc, tích cực trong học tập.

II. CHUẨN BỊ

1. Gv: Giáo án, máy chiếu, máy tính, phòng chiếu hoặc bảng.

2. Hs: Học bài cũ, đọc trước SGK bài mới.

III. PHƯƠNG PHÁP

- Thuyết trình, vấn đáp

- Diễn giải, đàm thoại, giải quyết tình huống có vấn đề.

IV. NỘI DUNG

1. Ổn định lớp:

+ Chào thầy cô.

+ Cán bộ lớp báo cáo sỉ số

+ Chỉnh đốn trang phục

2. Kiểm tra bài cũ ( Kiểm tra trong khi giảng bài )

I. MỤC ĐÍCH, YÊU CẦU

1. Kiến thức

- Cấu trúc chung của một chương trình và cấu trúc chung của một chương trình Pascal

2. Kỹ năng

- Hiểu và phân biệt các thành phần trong cấu trúc của một chương trình.

- Nhận biết được các thành phần của một chương trình đơn giản.

3. Thái độ

- Ý thức được tầm quan trọng của môn học và có thái độ học tập nghiêm túc, luôn tự tìm hiểu học tập

II. CHUẨN BỊ

1. Gv: Giáo án, máy chiếu, máy tính, phòng chiếu hoặc bảng.

2. Hs: Học bài cũ, đọc trước SGK bài mới.

III. PHƯƠNG PHÁP

- Thuyết trình, vấn đáp

- Diễn giải, đàm thoại, giải quyết tình huống có vấn đề.

IV. NỘI DUNG BÀI GIẢNG

1. Ổn định lớp:

+ Chào thầy cô.

+ Cán bộ lớp báo cáo sỉ số

+ Chỉnh đốn trang phục

2. Kiểm tra bài cũ

 Câu 1: Nêu các thành phần của ngôn ngữ lập trình?

 Câu 2: Trong Pascal có máy loại tên?nêu quy tắc đặt tên?

3. Bài mới

 

doc92 trang | Chia sẻ: lethuong715 | Lượt xem: 575 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Giáo án môn Tin học 11 - Học kỳ I - Năm học 2013-2014, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
lần lặp đã biết trước.
Trong lập trình, có những thao tác phải lặp lại nhiều lần, khi đó ta gọi là cấu trúc lặp.
Lặp thường có 2 loại :
Lặp với số lần biết trước .
Lặp với số lần không biết trước .
NNLT nào cũng cung cấp một số câu lệnh để mô tả các cấu trúc lặp như trên.
Sau đây chúng ta sẽ tìm hiểu các câu lệnh trong ngôn ngữ Pascal.
2. Lặp có số lần biết trước và câu lệnh for – do
Trong Pascal, có 2 lọai câu lệnh lặp có số lần biết trước :
- Lặp dạng tiến:
For := to do ;
- Lặp dạng lùi
For := downto do ;
Trong đó:
Biến đếm thường là biến kiểu số nguyên.
Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm. Giá trị đầu phải nhỏ hơn hay bằng giá trị cuối.
Ở dạng lặp tiến: Biến đếm tự tăng dần từ giá trị đầu đến giá trị cuối.
Ở dạng lặp lùi: Biến đếm tự giảm dần từ giá trị cuối đến giá trị đầu.
Tương ứng với mỗi giá trị của biến đếm, câu lệnh sau do thực hiện 1 lần.
4. Cũng cố
- Nắm lại các cấu trúc lặp.
- Nhớ được 2 dạng tiến lùi của câu lệnh FOR - DO trong Pascal
- Xem trước bài mới
V. PHỤ LỤC 1
Tuần: 08
Ngày soạn:30/09/2013
Tiết: 16
Ngày dạy: 07/10/2013
Tiết 16
IV. NỘI DUNG
1. Ổn định lớp: 
 - Chào thầy cô.
 - Cán bộ lớp báo cáo sỉ số
 - Chỉnh đốn trang phục
2. Kiểm tra bài cũ:
	Nêu cấu trúc câu lệnh For_do (dạng tiến và dạng lùi)?giải thích ý nghĩa câu lệnh?
3. Bài mới:
HOẠT ĐỘNG CỦA Gv & Hs
NỘI DUNG
Gv. Chiếu hai thuật toán của bài toán tong_1a và tong_1b
Gv. Viết chương trình pascal tính tong_1a. và giải thích thành phần các câu lệnh.
Hs. Học sinh chú ý nghe giảng.
GV : Lấy ví dụ minh họa trong Pascal để các em thấy được sự thay đổi giá trị của biến đếm trong một chương trình thực sự của Pascal .
 Vd: a=2;
Gv. Yêu cầu học sinh hoạt động nhóm viết bài toán với thuật toán tính tong_1b.
Hs. Học sinh thảo luận nhóm
 Báo cáo kết quả
Gv. Chiếu đề bài ví dụ 2. Định hướng phương pháp và yêu cầu học sinh lên bảng làm bài
Hs. Suy nghĩ trả lời
Gv. Với 2 ví dụ này, giáo viên nên gõ sẵn chương trình. Sau khi chữa bài cho học sinh quan sát việc chạy chương trình, giáo viên vừa cho chạy chương trình vừa giải thích ý nghĩa các lệnh trong chương trình (chú ý nhiều đến lệnh lặp) .
Ví dụ
Ví dụ 1 : Hai chương trình cài đặt thuật toán tong_1a và tong_1b .
tong_1a:
program tong_1a;
var a,N:integer;
 S:real;
Begin
Write(‘nhap gia tri cua a=’);readln(a);
S:=1/a;
For N:=1 to 100 do S:=S+1/(a+N)
Write(S:8:4);
readln
End.
tong_1b:
program tong_1a;
var a,N:integer;
 S:real;
Begin
Write(‘nhap gia tri cua a=’);readln(a);
S:=1/a;
For N:=100 downto 100 do S:=S+1/(a+N)
Write(S:8:4);
readln
End.
Ví dụ 2 : Tính tổng các số nguyên chia hết cho 3 hoặc 5 trong phạm vi từ M đến N (M<N).
Var M,N,i:Integer;
Begin
Write(‘nhap so M nho hon so N’);
Write(‘M, N =’); Readln(M,N);
T:=0;
For i:=M to N do 
 If (i mod 3 =0) or (i mod 5=0) then 
 T:=T+I;
Write(‘Ket qua’,T);
Readln
End.
4. Củng cố
 - Nhắc lại một số khái niệm mới
 - Nhắc lại cấu trúc câu lệnh.
 - Cho bài tập về nhà
V. PHỤ LỤC 2
Tuần: 09
Ngày soạn:07/10/2013
Tiết: 17
Ngày dạy: 14/10/2013
Bài 10: CẤU TRÚC LẶP
I. MỤC ĐÍCH, YÊU CẦU
1. Kiến thức
- Biết được cấu trúc chung của lệnh lặp WHILE trong ngôn ngữ lập trình.
- Hiểu được cấu trúc lặp với số lần không biết trước và câu lệnh While_do
2. Kỹ năng
- Sử dụng được lệnh lặp While để lập trình giải quyết được một số bài toán đơn giản
3. Thái độ
 - Hình thành cho học sinh bước đầu về tư duy về lập trình có cấu trúc.
 - Tự giác, tích cực và chủ động hoàn thành.
II. CHUẨN BỊ
1. Gv: SGK, Giáo án, Máy chiếu Projector
2. Hs: SGK, vỏ
III. PHƯƠNG PHÁP
 - Gợi mở, vấn đáp.
 - Làm việc theo nhóm
IV. NỘI DUNG BÀI GIẢNG
1. Ổn định lớp: 
 - Chào thầy cô.
 - Cán bộ lớp báo cáo sỉ số
 - Chỉnh đốn trang phục
2. Kiểm tra bài cũ:
	Dùng câu lệnh lặp For_do tính tổng sau S=12+32+52++(2n-1)2 với n được nhập vào từ bàn phím.
3.Bài mới:
HOẠT ĐỘNG CỦA Gv & Hs
NỘI DUNG
GV : Đưa ra thuật toán hoặc có thể yêu cầu học sinh tự xây dựng thuật toán giải bài toán 2, nếu tự xây dựng được thuật toán thì các em sẽ hiểu hơn về lặp không biết trước số lần
 Đưa thêm ví dụ : Nhắc lại bài toán gửi tiền vào ngân hàng: Nếu có số tiền là A, muốn gửi vào ngân hàng để được số tiền là B > A thì cần gửi trong bao lâu với lãi suất là k%.
 Yêu cầu học sinh đưa ra cách giải cho bài toán này .
GV : Phân tích phương án trả lời của học sinh sau đó đưa ra lời giải cho bài toán.
GV : Đưa ra cấu trúc câu lệnh While – Do Trong Pascal, giải thích ý nghĩa các thành phần.
HS : Lắng nghe và ghi chép.
Gv: Đưa ra bài toán 2. 
- Định hướng và cùng học sinh phân tích đưa ra thuật toán.
Hs. Nghe và trả lời
Gv. Cài đặt thuật toán, chạy thử chương trình. Giải thích các dòng lệnh của chương trình.
Hs. Nghe giảng
Gv. Đưa ra ví dụ 2.
 Phân tích, định hướng và yêu cầu Hs nêu thuật toán.
Hs. Suy nghĩ trả lời.
Gv. Phân tích thuật toán và chia lớp thành 4 nhóm. Cho học sinh cài đặt thuật toán
Hs. Cài đặt thuật toán.
 Báo cáo kết quả của nhóm.
Gv. Sửa và chiếu chương trình đã làm sẳn và chạy chương trình cho hs quan sát.
Hs. Chú ý quan sát và ghi bài.
3. Lặp với số lần chưa biết trước và câu lệnh while – do
Để giải bài toán 2 ta dùng thuật toán như sau :
Bước 1 : S :=1/a; N :=0;
Bước 2 : Nếu 1/(a+N) < 0.0001 thì chuyển đến bước 5 ;
Bước 3: N :=N +1;
Bước 4: S := S+ 1/(a+N) rồi quay lại bước 2;
Bước 5: Đưa kết qủa S ra màn hình rồi kết thúc
- Từ bước 2 đến bước 4 được lặp lại nhiều lần nếu điều kiện 1/(a+N) < 0.0001 chưa được thỏa mãn.
_ Pascal sử dụng câu lệnh lặp While
- Do để tổ chức lặp với số lần chưa viết như sau 
While Do ;
Trong đó
- Điều kiện là biểu thức quan hệ hoặc logic.
- Câu lệnh là một câu lệnh trong Pascal.
Ý nghĩa : Khi điều kiện còn đúng thì còn thực hiện câu lệnh sau Do sau đó lại quay lại kiểm tra điều kiện.
Bài toán 2:
b1: Sß1/a; Nß0;
b2: Nếu 1/(a+N)<0.0001 Chuyển đến b5
b3: NßN+1;
b4: SßS+1/(a+N) rồi quay lại bước 2
b5: Đưa S ra màn hình
Chương trình:
Var a,N:Integer;
 S: real;
Begin
 Write(‘Nhap gia tri a=’);readln(a);
 While not(1/(a+N)<0.0001) do
 Begin
 N:=N+1;
 S:=S+1/(a+N);
 End;
 Write(‘tong S la’, S:8:4);
 readln
End.
Ví dụ 2 : Tìm ước chung lớn nhất của M và N.
Thuật toán :
B1: Nếu M = N thì ƯCLN := M;
Kết thúc.
B2: Nếu M > N thì M := M – N rồi quay lại B1, ngược lại N := N – M rồi quay lại B1
Sau đây là chương trình tìm UCLN;
4. Củng cố
 - Nhắc lại cấu trúc câu lệnh lặp không biết trước số lần lặp While_do
 - Cho bài tập về nhà.
V. PHỤ LỤC 3
Tuần: 09
Ngày soạn:07/10/2013
Tiết: 18
Ngày dạy: 14/10/2013
BÀI TẬP CHƯƠNG 3
I. MỤC ĐÍCH, YÊU CẦU
1. Kiến thức
 - Biết sử dụng đúng lệnh lặp For . . . Do
 - Biết sử dụng đúng lệnh lặp While . . . Do
2. Kĩ năng
 - Bước đầu sử dụng được lệnh lặp For . . . do , và While . . . Do để lập trình giải quyết 1 số bài toán đơn giản.
 - Phân biệt được sự giống và khác nhau giữa cấu trúc lặp For và While.
 - Bước đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết một số bài toán đơn giản.
3. Thái độ: Tích cực trong học tập, cẩn thận , chính xác.
II. CHUẨN BỊ
1. Gv: Sách giáo khoa, sách giáo viên, một số bài tập áp dụng...
2. Hs: sgk, và chuẩn bị bài tập trước
III. PHƯƠNG PHÁP 
- Gợi mở, vấn đáp, đan xen hoạt động nhóm
IV. NỘI DUNG
1. Ổn định lớp,
2. Kiểm tra sĩ số.
3. Kiểm tra bài cũ	Kiểm tra trong khi giảng bài
 Hoạt động 1: Rèn luyện kĩ năng vận dụng câu lệnh For và câu lệnh rẽ nhánh If
HOẠT ĐỘNG CỦA Gv & Hs
NỘI DUNG
Gv. Dẫn dắt: Từ bài toán KTBC ở trên, nếu ta y/cầu tính và đưa ra màn hình tổng các số chẵn và tổng các số lẻ trong phạm vi từ a đến b.
Ghi bảng (sửa lại nội dung đề bài toán) 
Y/cầu hs phân tích đề bài và trả lời câu hỏi.
Hs. -Ghi đề bài toán
-Lắng nghe, phân tích bài toán và trả lời:
Gv. - So sánh với bài toán trước thì có gì khác?
- Ta cần đưa ra màn hình mấy giá trị?
- Việc chính cần thực hiện trong câu lệnh lặp là gì?
- Hãy mô tả việc trên bằng lệnh lặp For?
Hs. Đứng tại chổ trả lời:
For I:=a To b Do
 If I mod 2 =0
 then S1:=S1+I 
 else S2:=S2+I ;
Gv. Cho hs thảo luận nhóm
Hs. Học sinh thảo luận nhóm
 Báo cáo kết quả theo nhóm
Gv. Nhận xét chỉnh sửa và cho chạy thử chương trình.(chương trình soạn trước)
Bài 1: Viết CT nhập vào 2 số nguyên dương a, b (a<b), tính và đưa ra màn hình tổng các số chẵn và tổng các số lẻ trong phạm vi từ a đến b.
Phân tích
Tl: tính tổng các số chẵn và tổng các số lẻ riêng
Tl: 2 giá trị (S1: tổng chẵn; S2: tổng lẻ)
Tl: Kiểm tra biến đếm i : nếu i là chẵn thì S1:=S1+i ngược lại (i là lẻ)thì S2:=S2+i.
Chương trình
Var a, b, i , S1, S2 : longint;
Begin 
 Write(‘Nhap a va b (a<b): ‘);
 Readln(a, b);
 S1 := 0; S2 := 0;
 For i := a To b Do 
 If i mod 2 = 0 
 then S1 := S1 + i 
 else S2 := S2 + i;
 Writeln(‘Tong chan: ’, S1, 
’ Tong le: ’,S2);
 Readln
End.
 Hoạt động 2: Tiếp tục vận dụng câu lệnh lặp For để giải quyết một bài toán đơn giản.
HOẠT ĐỘNG CỦA Gv & Hs
NỘI DUNG
Gv. Nêu đề bài toán (Ghi bảng)
- Cách tính tiền gửi tiết kiệm hàng tháng như thế nào?
- Vậy, công thức tính tiền thu được sau mỗi tháng như thế nào?
- câu lệnh lặp này lặp bao nhiêu lần?
- Xác định giá trị đầu và giá trị cuối của câu lệnh For để thực hiện việc lặp trên?
Hs. Đọc đề bài, phân tích và trả lời câu hỏi
 -Thảo luận nhóm và tự viết chương trình
Gv. Chuẩn hóa lại bài làm của hs bằng chương trình mẫu (treo chtrình đã chuẩn bị trên bảng phụ).
 - Chạy chương trình.
 - Thử nghiệm với 1 năm, 14 tháng,.
Hs. Quan sát chtrình của giáo viên và ghi nhớ.
Bài 2: Ông Ba có số tiền là S, ông gửi tiết kiệm ngân hàng với lãi suất 1.5%/tháng. Hỏi sau 12 tháng gửi (không rút tiền lãi hàng tháng), ông ta được số tiền là bao nhiêu?
Phân tích
Tl: Với số tiền S, sau mỗi tháng sẽ có lãi là: 0.015*S.
Số tiền này sẽ cộng vào số tiền ban đầu để tính lãi cho tháng tiếp theo.
Tl: S := S + 0.015*S;
Tl: 12 lần
Tl: gtrị đầu là 1; gtrị cuối là 12.
Cài đặt chương trình
Var s:real; i:byte;
Begin
 Write(‘So tien ban dau: ’);
 Readln(S);
 For i:= 1 To 12 Do S:= S + 0.

File đính kèm:

  • docGiao_an_11_k1.doc