M C L C Ụ Ụ
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ậ ơ ả ử ụ ệ ặ ớ ố ầ ế ướ 15.c: 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 đế ả ạ ượ 20.c: C K T LU N: Ế Ậ 21
TÀI LI U THAM KH O:Ệ Ả 22
Trang 2A.Đ T V N Đ : Ặ Ấ Ề
Tin h c là m t ngành khoa h c có m c tiêu là phát tri n và s d ng máyọ ộ ọ ụ ể ử ụ tính đi n t đ nghiên c u c u trúc, tính ch t c a thông tin, phệ ử ể ứ ấ ấ ủ ương pháp thu
th p, l u tr , tìm ki m, bi n đ i, truy n thông tin và ng d ng vào các lĩnhậ ư ữ ế ế ổ ề ứ ụ
v c khác nhau c a đ i s ng xã h i Đ i v i các em h c sinh, có th nói đây làự ủ ờ ố ộ ố ớ ọ ể
m t “hành trang” đ giúp các em v ng bộ ể ữ ước đi t i tớ ương lai - tương lai c aủ
m t th h công ngh thông tin bùng n !.ộ ế ệ ệ ổ
Trong vi c gi ng d y cho h c sinh, ngoài vi c giúp h c sinh lĩnh h iệ ả ạ ọ ệ ọ ộ
nh ng ki n th c c b n Giáo viên còn ph i bi t kích thích tính tích c c, sữ ế ứ ơ ả ả ế ự ự sáng t o say mê h c h i c a h c sinh trong vi c h c t p c a các em B i vì,ạ ọ ỏ ủ ọ ệ ọ ậ ủ ở
vi c h c t p t giác, tích c c, ch đ ng và sáng t o đòi h i h c sinh ph i cóệ ọ ậ ự ự ủ ộ ạ ỏ ọ ả
ý th c v nh ng m c tiêu đ t ra và t o đứ ề ữ ụ ặ ạ ược đ ng l c bên trong thúc đ y b nộ ự ẩ ả thân h ho t đ ng đ đ t các m c tiêu đó ọ ạ ộ ể ạ ụ
Chương trình Tin h c l p 11 là m t môn h c khó, ki n th c thì tr i r ngọ ớ ộ ọ ế ứ ả ộ
nh ng đòi h i các em ph i bi t v n d ng ki n th c c a t ng bài s p x p m tư ỏ ả ế ậ ụ ế ứ ủ ừ ắ ế ộ cách lôgíc đ l p trình gi i m t bài toán hoàn ch nh Tuy nhiên trong th c tể ậ ả ộ ỉ ự ế
r t ít h c sinh làm đấ ọ ược đi u đó H u h t các em v n d ng câu l nh, cú phápề ầ ế ậ ụ ệ không phù h p cho yêu c u c a bài t p ợ ầ ủ ậ
Vì v y quá trình d y và h c b môn Tin h c trong nhà trậ ạ ọ ộ ọ ường phổ thông còn g p r t nhi u khó khăn T th c t này tôi mu n chia s m t kinhặ ấ ề ừ ự ế ố ẻ ộ nghi m nho nh đ chúng ta cùng tham kh o trong quá trình d y h c, đó làệ ỏ ể ả ạ ọ
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
Trang 3B 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;ế ể ứ
Trang 4• Tính chu vi tam giác: Chuvi = canh a + canh b + canh c
Khi đó vi t bi u th c trong Pascal là: CV := a+b+c; …ế ể ứ
- Ngoài ra, ph i có bi n pháp khuy n khích đ ng viên các em nhả ệ ế ộ ư
thưởng đi m, khen trể ướ ớc l p, ho c nh ng em có t duy l p trình t t cùng v iặ ữ ư ậ ố ớ
th y hầ ướng d n nh ng em h c y u trong l p t đó đ kích thích s sáng t oẫ ữ ọ ế ớ ừ ể ự ạ kích thích b môn trong h c t p.ộ ọ ậ
2.1 C u trúc c b n nh t c a m t bài l p trình trong Turbo pascal ấ ơ ả ấ ủ ộ ậ
a C u trúc chung bài l p trình: ấ ậ
PROGRAM <tên chương trình>;
[<Ph n khai báo > ];ầ
BEGIN
< Ph n thân chầ ương trình >;
READLN
END
b Cách đ t tên, cú pháp khai báo tên các th vi n, khai báo bi n, câu ặ ư ệ ế
l nh nh p d li u vào t bàn phím, câu l nh hi n th k t qu ra màn ệ ậ ữ ệ ừ ệ ể ị ế ả hình, câu l nh gán ệ
- Cách đ t tên: ặ
• Tên không trùng v i t khóa ví d tên đ t ớ ừ ụ ặ begin là sai V y t khóa làậ ừ : Program, uses, var, begin End…
• Tên đ t nhi u h n 8 kí t dùng d u g ch n i xen gi a và không dàiặ ề ơ ự ấ ạ ố ữ quá 127 kí t ự
• Tên đ t b ng ti ng vi t không d u, không s d ng d u cách…ặ ằ ế ệ ấ ử ụ ấ
- Cú pháp khai báo tên các th vi n: ư ệ
• <T khóa> <Tên các th vi n>;ừ ư ệ
Ví d khai báo th vi n Crt, graph … là: Uses CRt, graph;ụ ư ệ
- Cú pháp khai báo h ng: ằ
• <T khóa> <Tên h ng = giá tr >;ừ ằ ị
Trang 6- Cú pháp khai báo bi n: ế
• <T khóa> <Tên các bi n : ki u d li u>;ừ ế ể ữ ệ
• 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(<danh sách bi n vào>); ho c Readln(<danh sách bi n vào>);ế ặ ế
Ví d : readln(cd, cr);ụ
- Câu l nh hi n th d li u ra màn hình: ệ ể ị ữ ệ
Write(<danh sách k t qu ra>); ho c Writeln(<danh sách k t qu ra>);ế ả ặ ế ả
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à: ế
<tên bi n> := <bi u th c>;ế ể ứ 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ự ấ ậ ắ ế ệ ể ộ
Trang 7Các l nh cho nh sau: Program tinh_tong; a:=12; b:=88; uses crt; begin ệ ư readln end s:=a+b; writeln(’tong s=’, s); Var a,b,s:integer; clrscr;
H ướ ng d n ẫ :
Program Tinh_tong;
Var a,b,s:integer;
Begin
a:=12;
b:=88;
s:=a+b;
writeln(’tong s=’, s);
readln
End.
Bài 2: L p chậ ương trình gán bi n a=9, bi n b=10 và tính t ng, tích, hi uế ế ổ ệ
c a b v i a Cho k t qu hi n th trên màn hình.ủ ớ ế ả ể ị
H ướ ng d n: ẫ
Program Tinh_tong_tich_hieu;
Var a,b,tong,tich,hieu:byte;
Begin
a:= 9; b:= 10;
tong:= b+a;
tich:= b*a;
hieu:= b-a;
writeln(’tong =’,tong:5, ’ tich=’, tich:5, ’hieu=’,hieu);
readln
end.
Bài 3: L p chậ ương trình nh p vào chi u dài và chi u r ng hình ch nh t,ậ ề ề ộ ữ ậ tính chu vi và di n tích hình ch nh t đó, cho k t qu hi n th lên màn hình:ệ ữ ậ ế ả ể ị
H ướ ng d n: ẫ
Program Tinh_chuvi_dientich_ HCN;
Trang 8Var 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:’);
Trang 9cv:= 2*pi*r;
dt:=pi*r*r;
Wrietln(’chu vi hinh chu nhat: ’, cv:10:1);
{cv:10:1 de doc ket qua}
Writeln(’dien tich hinh chu nhat: ’,dt:10:1);
Readln
End.
Bài 7: L p chậ ương trình tính và đ a ra màn hình v n t c V khi ch m đ tư ậ ố ạ ấ
c a m t v t r i t đ cao h, bi t r ng v=ủ ộ ậ ơ ừ ộ ế ằ 2gh , trong đó g là gia t c r i t doố ơ ự
và g=9.8m/s2 Đ cao h(m) độ ược nh p vào t bàn phím Tính xong cho k tậ ừ ế
qu v hi n th lên màn hình l y tròn 3 s th p phân.ả ể ị ấ ố ậ
H ướ ng d n: ẫ
Program Tinh_vantoc;
Const g=9.8;
Var v,h : Real;
Begin
Write(’moi nhap chieu cao h:’);
Readln(h);
v:= sqrt(2*g*h);
Writeln(’Van toc vat luc cham dat v=:’,v:10:3);
Readln
End.
Bài 8: Cho bi t k t qu hi n th ra màn hình khi th c hi n chế ế ả ể ị ự ệ ương trình sau:
Program tim_hieu;
Var a,b,hieu:integer;
Begin
a:=4;
Trang 10Hieu:= 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 <đi u ki n> ề ệ Then <câu l nh>;ệ
• Ý 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 <đi u ki n> ề ệ Then <câu l nh 1>ệ
Else <câu l nh 2>;ệ
• Ý 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 ’)