- Vận dụng được các lệnh và kiểu dữ liệu đã học để lập trình giải các bài toán một cách trọn vẹn.. II.[r]
(1)Ng y 02/05/2012à Tiết 49
ÔN TẬP I Mục tiêu:
1 Kiến thức:
- Nắm toàn kiến thức học từ đầu năm học Kĩ năng:
- Vận dụng lệnh kiểu liệu học để lập trình giải tốn cách trọn vẹn
II Phương pháp – đồ dùng dạy học:
- Phương pháp: Thuyết trình, vấn đáp, gợi mở, trắc nghiệm - Phương tiện: sgk, máy chiếu
III Hoạt động dạy học: Ổn định tổ chức:
2 Kiểm tra cũ: lồng vào học Bài ôn tập:
HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS
I Đặt câu hỏi để hs nhớ lại kiến thức học
-Kể tên loại ngơn ngữ lập trình? -Phân biệt biên dịch thơng dịch? - Trình bày thành phần ngơn ngữ lập trình?
-Nêu cấu trúc chung chương trình Pascal đơn giản Cho ví dụ? -Kể tên kiểu liệu đơn giản học?
- Cấu trúc câu lệnh gán? - Các thủ tục vào/ra liệu?
-Nêu cấu trúc chung lệnh rẽ nhánh -Nêu cấu trúc chung lệnh lặp? -Cách khai báo kiểu mảng, khai báo biến kiểu mảng tham chiếu đến phần tử mảng?
-Cách khai báo kiểu xâu? Các hàm
Theo dõi câu hỏi gv suy nghĩ trả lời:
- Ngôn ngữ máy -Hợp ngữ
-Ngôn ngữ bậc cao
- Bảng chữ cái, cú pháp ngữ nghĩa -Gồm phần: phần khai báo phần thân
- HS cho ví dụ
- có kiểu liệu: integer; real; boolean; char
Tên biến := biểu thức;
-DÙng để tính tốn biểu thức gán giá trị cho biến
- Vào: Read()/ Readln(); -Ra: write()/writeln(); -If <điều kiện> then
<lệnh 1> else <lệnh 2>;
- For <biến điều khiển> := <giá trị đầu> to <giá trị cuối> < câu lệnh>;
- Type <tên kiểu mảng> =
(2)thủ tục xử lí xâu? - Tênbiênxâu[chir số];
- Hàm: length(st); upcase(ch); copy; -Thủ tục: delêt; insert;
II Một ssó câu hỏi trắc nghiệm:
Câu 1: Trong chương trình trình chuẩn sau đây, chương trình chuẩn thủ tục chuẩn?
a.Sin(x); b.SQRT(x); c.Length(x); d.Delete(s,5,1);
Câu 2: Giả sử có hai biến xâu x y (y có giá trị) câu lệnh sau không hợp lệ?
a.x:=copy9y,5,3); b.x:=y;
c.x:=delete(y,5,3); d.delete(y,5,3);
Câu 3: Nói cấu trúc chương trình con, khẳng định sau khơng đúng?
a.Phần đầu phần thân thiết phải có, phần khai báo có khơng b.Phần khai báo có khơng tùy thuộc vào chương trình cụ thể c.Phần đầu có khơng có được
d.Phần đầu thiết phải có để khai báo tên chương trình Câu 4: Khẳng định sau đúng?
a.Một chương trình thiết phải có tham số hình thức b.Một chương trình thiết phải có biến cục
c.Một chương trình thiết phải có tham số hình thức, khơng thiết phải có biến cục
d.Một chương trình khơng có tham số hình thức có thể khơng có biến cục bộ
Câu 5: Kiểu liệu hàm a.chỉ kiểu integer b.chỉ kiểu real
c.có thể kiểu integer, real, char, boolean, string
d.có thể kiểu integer, real, char, boolean, string, record, kiểu mảng IV Củng cố:
- Về nhà tiêp stục ôn tập để tiết sau ơn tập viết chương trình
Ng y 05/05/2012à Tiết 50
(3)1 Kiến thức:
- Nắm toàn kiến thức học từ đầu năm học 2 Kĩ năng:
- Vận dụng lệnh kiểu liệu học để lập trình giải tốn cách trọn vẹn
II Phương pháp – đồ dùng dạy học:
- Phương pháp: Thuyết trình, vấn đáp, gợi mở, trắc nghiệm - Phương tiện: sgk, máy chiếu, phòng máy tính
III Hoạt động dạy học: 1.Ổn định tổ chức:
2.Kiểm tra cũ: lồng vào học 3.Bài ơn tập:
Néi dung – H§ cđa GV H§ cđa HS
Bài tập 1:Nhập a,b,c hệ số hàm số bậc Sau ta nhập X liên tục, ứng với giá trị X, ta in giá trị Y tng ng
Chơng trình kết thúc ta nhập Hớng dẫn
Viết chơng trình tÝnh Y t¬ng øng X uses crt;
var
a,b,c,x:real;{a,b,c,x kiÓu real} function y(x:real):real;
begin
y:=a*x*x+b*x+c;{TÝnh y theo x} end;
begin
clrscr;{Xoá hình}
write('A, B, C = ');readln(a,b,c);{NhËp a,b,c} repeat
write('X = ');readln(x);{NhËp X}
if x<>0 then writeln('Y = ',y(x):0:2);{NÕu x<>0 th× in ra Y t¬ng øng}
until x=0; end. Bµi tËp 2:
{ Nhập N Sau nhập N toạ độ A,B N đờng thẳng In hình đờng thẳng có độ dài lớn Hớng dẫn
Viết hàm tính độ dài đoạn thẳng với tham số toạ độ}
uses crt;
var max,xa,ya,xb,yb:real;{max,xa,ya,xb,yb kiÓu real} i,n:integer;{i,n kiÓu integer}
function dodai(xa,ya,xb,yb:real):real; begin
dodai:=sqrt(sqr(xa-xb)+sqr(ya-yb));{Gán dodai bằng độ dài đoạn AB}
end; begin
clrscr;{Xoá hình}
write('N = ');readln(n);{Nhập N} max:=0;{G¸n max b»ng 0}
for i:=1 to n do{Cho i chạy từ đến N}
HS suy nghĩ thực theo yêu cầu GV
HS suy nghÜ vµ thùc hiƯn
HS suy thảo luận để xậy dựng chơng trình
HS theo dâi chay chơng trình máy chiếu
(4)begin
write('XA, YA, XB, YB = ');readln(xa,ya,xb,yb);{Đọc toạ độ A,B}
if max<dodai(xa,ya,xb,yb)then
max:=dodai(xa,ya,xb,yb);{Nếu max nhỏ độ dài AV cập nhật max}
end;
writeln('Do dai doan thang dai nhat : ',max:0:2); {XuÊt max}
readln; end. Bµi tËp 3:
{ Nhập N Sau nhập N số hạng Tính UCLN BCNN N số
Híng dÉn
ViÕt hµm tÝnh UCLN,BCNN gi÷a sè
UCLN (A1 An) = UCLN( UCLN(A1 An-1) ,An) BCNN (A1 An) = BCNN( BCNN(A1 An-1) ,An)} uses crt;
var
a,i,n:integer;{a,i,n kiÓu integer}
u,b:integer;{u,b kiÓu integer (biÕn lu UCNN,BCNN)} function ucln(a,b:integer):integer;
begin
while a<>b do{Trong a<>b th×}
if a>b then a:=a-b else b:=b-a;{NÕu a>b gán a=a-b ngợc lại gán b=b-a}
ucln:=a;{G¸n ucln b»ng a} end;
function bcnn(a,b:integer):integer; begin
bcnn:=a*b div ucln(a,b);{TÝnh bcnn} end;
begin
clrscr;{Xoá hình}
write('N = ');readln(n);{§äc N}
write('So thu : ');readln(a);{§äc phần tử thứ vào a}
u:=a;b:=a;{Gán u,b b»ng a}
for i:=2 to n do{Cho i chạy từ đến n} begin
write('So thu ',i,' : ');readln(a);{NhËp sè thø i vµo a} u:=ucln(u,a);{Gán u UCLN u a}
b:=bcnn(b,a);{Gán b BCNN u b} end;
writeln('UCLN = ',u); writeln('BCNN = ',b); readln;
end. Bµi tËp 4:
{ Nhập N In hình số nguyên tố từ đến N Hớng dẫn
ViÕt hµm NGUYENTO(N) trả giá trị TRUE N nguyên tố}
uses crt; var
i,n:integer;{i,n kiÓu integer} function nt(n:integer):boolean;
HS suy nghÜ vµ thùc hiƯn
HS suy thảo luận để xậy dựng chơng trình
HS theo dõi chay chơng trình máy chiếu
(5)var i:integer;{Khai b¸o i kiĨu integer} begin
for i:=2 to trunc(sqrt(n))do{Cho i chạy từ đến trunc(sqrt(n))}
if n mod i=0 then begin nt:=false;exit;end;{Nếu n chia hết cho i gán nt=false;tho¸t khái CT b»ng exit}
nt:=true;{G¸n nt b»ng TRUE} end;
begin
clrscr;{Xo¸ hình}
write('N = ');readln(n);{Đọc N}
for i:=2 to n do{Cho i chạy từ đến N} if nt(i)then write(i:5);{Nếu i ntố xuất I} readln;
end. Bµi tËp 5:
{ Nhập số N Sau nhập N phần tử In phần tử có số ớc lớn
Hớng dẫn
Viết hàm TINH(N) trả số íc cña N
Lu ý r»ng sè cã sè íc lín nhÊt tÊt c¶ mäi sè} uses crt;
var
i,n:integer;{i,n kiÓu integer}
a,max,luua:integer;{a,max,luua kiÓu integer} function tinh(n:integer):integer;
var i,souoc:integer;{Khai b¸o i,souoc kiĨu integer} begin
if n=0 then tinh:=maxint{Nếu N=0 thì} else{Ngợc lại}
begin
souoc:=0;{G¸n souoc b»ng 0}
for i:=1 to n do{Cho i chạy từ đến N}
if n mod i=0 then inc(souoc);{NÕu n chia hÕt cho i thì tăng souoc}
tinh:=souoc;{Gán tinh souoc} end;
end; begin
clrscr;{Xo¸ hình}
write('N = ');readln(n);{Đọc N} max:=0;{Gán max b»ng 0}
for i:=1 to n do{Cho i chạy từ đến N} begin
write('So thu ',i,' : ');readln(a);{NhËp sè thø i vµo a} if max<tinh(a)then{nÕu max < sè íc cđa a th×} begin
max:=tinh(a);{CËp nhËt max} luua:=a;{G¸n luua b»ng a} end;
end;
writeln('So co nhieu uoc nhat la :',luua);{XuÊt luua} if luua=0 then write('Co vo so uoc')else writeln('Co ',max,' uoc');{NÕu luua=0 xuất có vô số ớc ngợc lại xuất max}
readln; end.
HS suy nghÜ vµ thùc hiÖn
HS suy thảo luận để xậy dựng chơng trình
(6)IV Củng cố: