- Yêu cầu học sinh khởi động chương trình pascal - T×m hiÓu bµi to¸n 2 cña bµi tËp thùc hµnh 4 vµ - §a ra bµi to¸n 2 cña bµi tËp thùc hµnh 4 cho häc thực hiện soạn thảo và chạy thử chươ[r]
Trang 1Bài 11 Kiểu mảng
I Mục tiêu
- Về kiến thức: học sinh cần nắm được mảng là kiểu dữ liệu có cấu trúc, có 2 kiểu mảng là mảng một chiều và mảng hai chiều, có 2 cách khai báo gián tiếp và trực tiếp, học sinh hiểu và viết được một số chương trình đơn giản về mảng
- Về kĩ năng: học sinh thao tác tốt với máy tính và thực hiện được một số bài toán đơn giản về mảng
- Về thái độ: rèn luyện ý thức tự giác, thao tác nhanh, chính xác
II Chuẩn bị của giáo viên và học sinh
- Giáo viên: giáo án, kĩ năng thuyết trình, giảng giải
- Học sinh: vở ghi, nghe giảng, hỏi và trả lời câu hỏi
III Hoạt động dạy học
1 Kiểu mảng một chiều
Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu Mảng được đặt tên và mỗi phần tử của nó có một chỉ số
- Mô tả về mảng một chiều
- Đưa ra các quy tắc xác định mảng một chiều
- Xét ví dụ: (sgk-53): chuẩn bị máy chiếu, chiếu ví dụ
viết bài toán không sử dụng mảng và có sử dụng
mảng
- Yêu cầu học sinh nhận xét 2 đoạn chương trình?
Đ1: Không sử dụng mảng:
if t1>tb then dem:=dem+1; if t2>tb then dem:=dem+1;
if t3>tb then dem:=dem+1; if t4>tb then dem:=dem+1;
if t5>tb then dem:=dem+1; if t6>tb then dem:=dem+1;
if t7>tb then dem:=dem+1;
Đ2: Có sử dụng mảng:
For i:=1 to N do
if nhietdo[i] > trung_binh then dem:=dem+1;
- Trình chiếu cho học sinh quan sát toàn bộ ví dụ có
sử dụng mảng Yêu cầu học sinh đưa ra cấu trúc khai
báo mảng một chiều?
- Giảng giải cho học sinh về kiểu chỉ số và kiểu phần
tử
- Nghe, ghi chép
- Quan sát ví dụ trên máy chiếu
- Nhận xét: Đ1 phải viết lặp lại nhiểu câu lênh if giống nhau, Đ2 khắc phục được điều đó của Đ1
- Quan sát và đưa ra cấu trúc khai báo mảng một chiều
a Khai báo
Cách1: khai báo trực tiếp
Var <tên biến mảng>: array [kiểu chỉ số] of <kiểu phần tử>;
Cách 2: khai báo gián tiếp
Type <tên kiểu mảng> = array [kiểu chỉ số] of <kiểu phần tử>;
Var <tên biến mảng>: <tên kiểu mảng>;
b Một số ví dụ
- Tìm phần tử lớn nhất của dãy số nguyên
- Sắp xếp dãy số nguyên bằng thuật toán tráo đổi
- Tìm kiếm nhị phân
- Hãy xác định Input và Output của bài toán
- Nhận xét bổ sung cho học sinh
- Hướng dẫn gợi mở, tổ chức cho học sinh thảo luận
đưa ra thuật toán của bài toán bằng cách liệt kê
- Xây dựng bài toán trên máy tính bằng ngôn ngữ lập
trình pascal
- Trình chiếu cho học sinh quan sát chương trình thực
hiện chạy chương trình
- giải đáp những thắc mắc của học sinh
- Đọc yêu cầu bài toán và xác định Input, Output của bài toán
- Thảo luận đưa ra thuật toán của bài toán bằng cách liệt kê
Thảo luận xây dựng bài toán trên máy tính bằng ngôn ngữ lập trình pascal
- Quan sát và nhận xét
Lop11.com
Trang 22 Kiểu mảng hai chiều
- Mảng hai chiều là bảng các phần tử cùng kiểu
- Chuẩn bị sẵn một chương trình đưa ra màn hình
bảng nhân và trình chiếu cho học sinh quan sát
- Mô tả về mảng hai chiều
- Đưa ra các quy tắc xác định mảng hai chiều
- Cho học sinh quan sát hai đoạn lệnh sau và nhận
xét?
Đ1: sử dụng mảng một chiều
var B: array[1 9] of array [1 10] of integer;
Đ2: sử dụng mảng hai chiều
var B: array[1 9,1 10] of integer;
- Tương tự với bảng một chiều, yêu cầu học sinh quan
sát và đưa ra cấu trúc khai báo mảng hai chiều?
- Quan sát, nghe giảng
- Quan sát và nhận xét: Đ2 phải khai báo ngắn gọn hơn Đ1
- Quan sát và đưa ra cấu trúc khai báo mảng hai chiều
a Khai báo
Cách 1: khai báo trực tiếp
Var <tên biến mảng>: array [kiểu chỉ số hàng, kiểu chỉ số cột] of <kiểu phần tử>;
Cách 2: khai báo gián tiếp
Type <tên kiểu mảng> = array [kiểu chỉ số hàng, kiểu chỉ số cột] of <kiểu phần tử>;
Var <tên biến mảng>: <tên kiểu mảng>;
b Một số ví dụ
- Chương trình tính và đưa ra màn hình bảng nhân
- Chương trình nhập vào từ bàn phím các phần tử của mảng hai chiều B gồm 5 hàng, 7 cột với các phần tử là các số nguyên và một số nguyên k sau đó, đưa ra màn hình các phần tử của mảng có giá trị nhỏ hơn k
- Hãy xác định Input và Output của bài toán
- Nhận xét bổ sung cho học sinh
- Hướng dẫn gợi mở, tổ chức cho học sinh thảo luận
đưa ra thuật toán của bài toán bằng cách liệt kê
- Xây dựng bài toán trên máy tính bằng ngôn ngữ lập
trình pascal
- Trình chiếu cho học sinh quan sát chương trình thực
hiện chạy chương trình
- giải đáp những thắc mắc của học sinh
- Đọc yêu cầu bài toán và xác định Input, Output của bài toán
- Thảo luận đưa ra thuật toán của bài toán bằng cách liệt kê
Thảo luận xây dựng bài toán trên máy tính bằng ngôn ngữ lập trình pascal
- Quan sát và nhận xét
IV Giáo viên rút kinh nghiệm sau giờ dạy
………
………
………
………
Tổ trưởng duyệt
Trang 3Bài tập và thực hành 3
I Mục tiêu
- Về kiến thức: học sinh hiểu và biết giải một số bài toán đơn giản trên máy tính
- Về kĩ năng: rèn luyện kĩ năng sử dụng một số câu lệnh và một số kiểu dữ liệu thông qua việc tìm hiểu, chạy thử các chương trình có sẵn
- Về thái độ: rèn luyện ý thức tự giác, thao tác nhanh, chính xác
II Chuẩn bị của giáo viên và học sinh
- Giáo viên: giáo án, kĩ năng thuyết trình, giảng giải
- Học sinh: vở ghi, nghe giảng, hỏi và trả lời câu hỏi
III Hoạt động dạy học
Bài 1: Tạo mảng A gồm n (n ≤ 100) số nguyên, mỗi số có trị tuyệt đối không vựot quá 300 Tính tổng các phần tử của mảng là bội số của một số nguyên dương k cho trước
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 1 của bài tập thực hành 3 cho học
sinh tìm hiểu và chay thử chương trình mẫu đã cho
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 1 của bài tập thực hành 3 và thực hiện soạn thảo và chạy thử chương trình mẫu
program sum1;
uses crt;
const nmax=100;
type MyArray=arry[1 nmax] of integer;
var A:MyArray;
a,n,a,i,k:integer;
Begin
clrscr; randomize;
write('nhap n=');
readln(n);
for i:=1 to n do A[i]:=random(300)-random(300);
for i:=1 to n do write (A[i]:5);
writeln;
write('nhap k');
readln(k);
s:=0;
for i:=1 to n do
if A[i] mod k =0 then s:=s+A[i]; writeln('tong can tinh la:');
readln
end.
- Giới thiệu cho học sinh về hàm random(n)
- Đưa ra một số câu lệnh và yêu cầu học sinh đưa vào
chương trình vừa soạn thảo để có một chương trình
mới đưa ra các số âm và các số dương trong mảng
- Nhận xét, bổ sung, trả lời những thắc mắc của học
sinh
- chú ý nghe Chạy thử chương trình vừa soạn thảo
- Thực hành soạn thảo đưa các câu lệnh vào các vị trí cần thiết của chương trình trước đó để có một chương trình mới
- Chạy thử chương trình mới
- Nhận xét
- Đưa ra các câu hỏi cần giải đáp Bài 2: Viết chương trình tìm phần tử có giá trị lớn nhất của mảng và đưa ra màn hình chỉ số và giá trị của phần
tử tìm được Nếu có nhiều phần tử có cùng giá trị lớn nhất thì đưa ra phần tử có chỉ số nhỏ nhất
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
Lop11.com
Trang 4- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 2 của bài tập thực hành 3 cho học
sinh tìm hiểu và chay thử chương trình mẫu đã cho
- Tìm hiểu bài toán 2 của bài tập thực hành 3 và thực hiện soạn thảo và chạy thử chương trình mẫu
program MaxElement;
uses crt;
const nmax=100;
type MyArray=arry[1 nmax] of integer;
var A:MyArray;
n,i,j:integer;
Begin
clrscr;
write('nhap n=');
readln(n);
for i:=1 to n do
begin
write('phan tu thu',i,'=');
readln(A[i]);
end; j:=1;
j:=2 to n do if A[i]>A[j] then j:=i;
writeln('chi soL',j,'gia tri:',A[j]:4);
readln;
end.
- Yêu cầu học sinh soạn thảo và chạy thử chương
trình
- Yêu cầu học sinh chỉnh sửa lại đoạn chương trình
vừa chạy thử để có một chương trình mới chỉ đưa ra
chỉ số của các phần tử có cung giá trị lớn nhất
- nhận xét, bổ sung bài làm của học sinh
- Giải đáp thắc mắc của học sinh
- Thực hiện soạn thảo và chạy thử chương trình
- Thực hiện chỉnh sửa chương trình để có một chương trình mới chỉ đưa ra chỉ số của các phần
tử có cung giá trị lớn nhất
- Nhận xét và đặt câu hỏi thắc mắc
IV Giáo viên rút kinh nghiệm sau giờ dạy
………
………
………
………
Tổ trưởng duyệt
Trang 5Bài tập và thực hành 4
I Mục tiêu
- Về kiến thức: học sinh hiểu và biết giải một số bài toán đơn giản trên máy tính
- Về kĩ năng: rèn luyện kĩ năng sử dụng một số câu lệnh và một số kiểu dữ liệu thông qua việc tìm hiểu, chạy thử các chương trình có sẵn
- Về thái độ: rèn luyện ý thức tự giác, thao tác nhanh, chính xác
II Chuẩn bị của giáo viên và học sinh
- Giáo viên: giáo án, kĩ năng thuyết trình, giảng giải
- Học sinh: vở ghi, nghe giảng, hỏi và trả lời câu hỏi
III Hoạt động dạy học
Bài 1
a Hãy tìm hiểu và chạy thử chương trình thực hiện sắp xếp dãy số nguyên bằng thuật toán tráo đổi với các giá trị khác nhau của n Qua đó nhận xét về thời gian chạy của chương trình
b Khai báo thêm biến nguyên Dem và bổ sung thêm vào chương trình những lệnh cần thiết để biến Dem tính
số lần thực hiện tráo đổi trong thuật toán đưa ra kết quả
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 1 ý a của bài tập thực hành 4 cho
học sinh tìm hiểu và chay thử chương trình mẫu đã
cho
- Hãy nhận xét về thời gian thực hiện chương trình?
- Khuyến khích học sinh đưa ra các đề xuất cho bài
toán chạy tốt hơn
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 1 ý a của bài tập thực hành 4
và thực hiện soạn thảo và chạy thử chương trình mẫu
- Khi sử dụng biến trung gian t tránh lặp lại nhiều câu lệnh giống nhau, thời gian chạy chương trình nhanh hơn, tốn ít bộ nhớ
uses crt;
const Nmax=250;
type ArrInt=array[1 Nmax] of integer;
var n,i,j,y:integer;
A:ArrInt;
Begin
clrscr; randomize; write('nhap n='); readln(n);
for i:= 1 to n do A[i]:=random(300)-random(300);
for i:= 1 to n do write(A[i]:5); writeln;
for j:=1 downto 2 do
for i:=1 to j-1 do
if A[i]>A[i+1] then Begin
t:=A[i]; A[i]:=A[i+1]; A[i+1]:=t;
end;
writeln('day so duoc sap xep');
for i:= 1 to n do write(A[i]:7);
writeln;
readln end.
- Giải thích cho học sinh về đoạn câu lệnh tráo đổi có
sử dụng biến trung gian t
- Đưa ra biến Dem, một số câu lệnh và yêu cầu học
sinh đưa vào chương trình vừa soạn thảo để có một
chương trình mới tính số lần thực hiện tráo đổi trong
thuật toán đưa ra kết quả
- Đưa ra một số câu hỏi gợi mở: Khai báo biến Dem
như thế nào? tăng biến Dem o đâu?
- chú ý nghe Chạy thử chương trình vừa soạn thảo
- Thực hành soạn thảo đưa thêm biến nguyên Dem và các câu lệnh cần thiết vào các vị trí cần thiết của chương trình trước đó để có một chương trình mới
- Chạy thử chương trình mới
- Nhận xét
- Đưa ra các câu hỏi cần giải đáp
Lop11.com
Trang 6- Nhận xét, bổ sung, trả lời những thắc mắc của học
sinh
Bài 2
Hãy đọc và tìm hiểu phân tích để viết chương trình giải bài toán: Cho mảng A gồm n phần tử Hãy viết chương trình tạo mảng B [1 n], trong đó B[i] là tổng của i phần tử đầu tiên của A
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 2 của bài tập thực hành 4 cho học
sinh tìm hiểu và chay thử chương trình mẫu đã cho
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 2 của bài tập thực hành 4 và thực hiện soạn thảo và chạy thử chương trình mẫu
uses crt;
const Nmax=100;
type MyArray=array[1 Nmax] of integer;
var n,i,j,y:integer;
A,B:MyArray;
Begin
clrscr; randomize; write('nhap n='); readln(n);
for i:= 1 to n do A[i]:=random(300)-random(300);
for i:= 1 to n do write(A[i]:5); writeln;
for i:=1 to n do
Begin
B[i]:=0;
for j:=1 to i do B[i]:=B[i]+A[j];
end;
for i:= 1 to n do write(B[i]:5);
writeln;
readln end.
- Phân tích gợi mở cho học sinh: Ta có: B[1]= A[1] và
B[i]=B[i-1]+A[i], 1<i≤ n do đó ta thay đoạn chương trình
Bắt đầu tạo B … bởi hai câu lệnh sau: B[1]= A[1]; for
i:= 2 to n do B[i]:= B[i-1]+ A[i];
- Với hai lệnh này máy chỉ thực hiện n-1 phép cộng,
trong khi đó với đoạn CT trước máy phải thực hiện
n(n+1)/2 phép cộng
- nhận xét, bổ sung bài làm của học sinh
- Giải đáp thắc mắc của học sinh
- chú ý nghe Chạy thử chương trình vừa soạn thảo
- Thực hành soạn thảo đưa thêm biến nguyên Dem và các câu lệnh cần thiết vào các vị trí cần thiết của chương trình trước đó để có một chương trình mới
- Chạy thử chương trình mới
- Nhận xét
- Đưa ra các câu hỏi cần giải đáp
IV Giáo viên rút kinh nghiệm sau giờ dạy
………
………
………
………
Tổ trưởng duyệt
Trang 7Bài 12 Kiểu xâu
I Mục tiêu
- Về kiến thức: Biết xâu là một dãy các kí tự( có thể coi xâu là mảng một chiều), biết cách khai báo xâu, truy cập phần tử xâu
- Về kĩ năng: Biết sử dụng một số hàm, thủ tục về xâu, cài đặt được một số chương trình đơn giản
- Về thái độ: rèn luyện ý thức tự giác, thao tác nhanh, chính xác
II Chuẩn bị của giáo viên và học sinh
- Giáo viên: giáo án, kĩ năng thuyết trình, giảng giải
- Học sinh: vở ghi, nghe giảng, hỏi và trả lời câu hỏi
III Hoạt động dạy học
- Xâu là một dãy các kí tự trong bộ mã ASCII, mối kí tự được gọi là một phần tử của xâu Số lượng kí tự của một xâu được gọi là độ dài của xâu Xâu có độ dài bằng 0 gọi là xâu rỗng
- Các ngôn ngữ lập trình đều có quy tắc, cách thức cho phép xác định:
+ Cách khai báo biến kiểu xâu + Cách tham chiếu tới phần tử của xâu
+Số lượng kí tự của xâu
- Giảng giải, thuyết trình về xâu
- Lấy ví dụ về xâu
- Theo em để xác đinh kiểu xâu cần xác định những
yếu tố nào?
- tương tự với kiểu mảng hãy cho biết cách tham
chiếu tới phần tử của xâu?
- Nghe, quan sát
- Trả lời liệt kê những yếu tố cần xác định khi xây dựng dữ liệu kiểu xâu
- Tham chiếu: <tên biến xâu>[độ dài]
VD: biến Hoten lưu trữ giá trị ‘ Nguyen’ thì Hoten[3] cho kết quả là kí tự thứ 3 là ‘u’
1 Khai báo
Var <tên biến>: string [độ dài lớn nhất của xâu];
- Lấy ví dụ về xâu, yêu cầu học sinh quan sát và đưa
ra cấu trúc khai báo biến xâu?
- Nhấn mạnh việc sử dụng tên dành riêng String, độ
dài lớn nhất của xâu không vượt quá 255 kí tự
- Nghe, quan sát
- Đưa ra cấu trúc của khai báo biến xâu
2 Các thao tác xử lýxâu
a Phép ghép xâu
- kí hiệu: +
- dùng để ghép nhiều xâu thành một xâu
b Các phép so sánh
- gồm các phép so sánh: =, <>, <, >, <=, >=
c Thủ tục delete(st, vt, n): thực hiện việc xoá n kí tự của biến xâu st bắt đầu từ vị trí vt.
d Thủ tục Insert(s1, s2, vt): Chèn xâu s1 vào xâu s2 bắt đầu ở vị trí vt.
e Hàm Copy(S, vt, N): Tạo xâu gồm N kí tự liên tiếp bắt đầu từ vị trí vt của xâu S
f Hàm Length(s): Cho giá trị độ dài xâu s.
g Hàm Pos(s1,s2): cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2
h Hàm Upcase(ch): Cho chữ in hoa ứng với chữ cái trong ch.
- Thuyết trình, giảng giải về các phép toán, hàm và
thủ tục đơn giản về xâu
- Dựa vào cấu trúc các hàm và thủ tục hãy lấy ví dụ?
- trình chiếu ví dụ có sử dụng các phép toán, hàm, thủ
tục về xâu
- Khuyến khích học sinh đề xuất các ý kiến
- Nghe, quan sát
- Lấy ví dụ về xâu dựa vào cấu trúc của các hàm, thủ tục về xâu
- Đề xuất các ý kiến về xâu
3 Một số ví dụ
Ví dụ 1: Nhập họ tên của hai người vào hai biến xâu vàđưa ra màn hình xâu dài hơn, nếu bằng nhau thì đưa ra
xâu nhập sau
Lop11.com
Trang 8Ví dụ 2: Nhập hai xâu từ bàn phím và kiểm tra kí tự đầu tiên của xâu thứ nhất có trùng với kí tự cuối cùng của
xâu thứ hai không?
Ví dụ 3: Nhập một xâu từ bàn phím và đưa ra màn hình xâu đó nhưng được viết theo thứ tự ngược lại
Ví dụ 4: Nhập một xâu vào từ bàn phím và đưa ra màn hình xâu thu được từ nó bởi việc loại bỏ các dấu cách
nếu có
Ví dụ 5: Nhập vào từ bàn phím xâu kí tự s1, tạo xâu s2 gồm tất cả các chữ số có trong s1 (giữ nguyên thứ tự
xuất hiện của chúng) và đưa kết quả ra màn hình
- Phân tích các ví dụ cho học sinh nghe, trình chiếu
các ví dụ cho học sinh quan sát
- Khuyến khích học sinh nhận xét, đề xuất các ý kiến
về các bài toán về xâu?
- Hướng dẫn học sinh xây dựng một chương trình về
xâu đơn giản
- Nghe, quan sát
- Đề xuất các ý kiến về xâu
- Thảo luận xây dựng một chương trình xâu đơn giản
IV Giáo viên rút kinh nghiệm sau giờ dạy
………
………
………
………
Tổ trưởng duyệt
Trang 9Bài tập và thực hành 5
I Mục tiêu
- Về kiến thức: Làm quen với việc tìm kiếm, thay thế và biến xâu
- Về kĩ năng: học sinh hiểu và thao tác tốt với dữ liệu kiểu xâu
- Về thái độ: rèn luyện ý thức tự giác, thao tác nhanh, chính xác
II Chuẩn bị của giáo viên và học sinh
- Giáo viên: giáo án, kĩ năng thuyết trình, giảng giải
- Học sinh: vở ghi, nghe giảng, hỏi và trả lời câu hỏi
III Hoạt động dạy học
Bài1: Nhập vào từ bàn phím một xâu Kiểm tra xâu đó có phải là xâu đối xứng hay không Xâu đối xứng có
tính chất: đọc nó từ phải sang trái cũng thu được kết quả giống như đọc từ trái sang phải (còn gọi là xâu palindrome)
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 1 của bài tập thực hành 5 cho học
sinh tìm hiểu và chay thử chương trình mẫu đã cho
- Yêu cầu học sinh viết lại chương trình trong đó
không dùng biến xâu p
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 1 của bài tập thực hành 5 và thực hiện soạn thảo và chạy thử chương trình mẫu
- Thực hiện viết lại chương trình trong đó không dùng biến xâu p
var i,x:byte;
a,p: string;
begin
write('nhap vao xau');
readln(a);
x:= length(a);
p:=' ';
for i:= x downto 1 do
p:= p+ a[i];
if a=p then
write('xau la palindrome') else
write('xau khong phai la palindrome');
readln
end.
Bài 2: Viết chương trình nhập từ bàn phím một xâu kí tự S và thông báo ra màn hình số lần xuất hiện của mỗi
chữ cái tiếng Anh trong S (không phân biệt chữ hoa hay chữ thường)
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 2 của bài tập thực hành 5 cho học
sinh tìm hiểu và chay thử chương trình
- Yêu cầu học sinh đề xuất ý kiến
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 2 của bài tập thực hành 5 và thực hiện soạn thảo và chạy thử chương trình
- Đề xuất ý kiến
var s:string;
i, d:integer;
begin
write('nhap xau s');
readln(s); d:=0;
for i:= 1 to length(s) do
Lop11.com
Trang 10if (s[i]>='A') and (s[i])<='Z') then d:=d+1;
write('so luong chu cai la',d);
readln
end.
Bài 3: Nhập vào từ bàn phím một xâu Thay thế tất cả các cụm kí tự ‘anh’ bằng cụm kí tự ‘em’
- tại phòng thực hành, triển khai nội dung thực hành
- Nhắc lại một phần lý thuyết học sinh cần nắm được
trong bài thực hành
- Yêu cầu học sinh khởi động và kiểm tra hoạt động
của máy tính
- Yêu cầu học sinh khởi động chương trình pascal
- Đưa ra bài toán 3 của bài tập thực hành 5 cho học
sinh tìm hiểu và chay thử chương trình
- Yêu cầu học sinh đề xuất ý kiến
- chú ý nghe triển khai nội dung của bài thực hành
- Thực hành khởi động máy tính, kiểm tra kết nối
và hoạt động của máy tính, khởi động chương trình turbo pascal
- Tìm hiểu bài toán 3 của bài tập thực hành 5 và thực hiện soạn thảo và chạy thử chương trình
- Đề xuất ý kiến
var a:string;
vt:integer;
begin
write('nhap xau a'); readln(a);
while pos('anh',a)<>0 do
begin
vt:=pos('anh',a);
delete(a,vt,3);
insert('em',a,vt);
end;
write(a);
readln
end.
IV Giáo viên rút kinh nghiệm sau giờ dạy
………
………
………
………
Tổ trưởng duyệt