C¸c NNLT ®Òu cã th viÖn chøa mét sè ch¬ng tr×nh tÝnh gi¸ trÞ nh÷ng hµm to¸n häc thêng dïng. BiÓu thøc quan hÖ[r]
(1)Bài tập I Mục tiêu:
- Củng cố lại kiến thức &
- HS làm đợc tập SGK ( Tr13) tập SBT - GV cho thêm số tổng hợp kiến thức & - Bớc đầu làm quen với tập NNLT bậc cao II Đồ dùng dạy học
GV: Gi¸o ¸n, SGK, SGV, STK
HS: Vở ghi, SGK Tin học 10, tin học 11 III Các hoạt động dạy học
1 ổ n định tổ chức lớp Kiểm tra cũ ( xen kẽ) Bài tập
Hoạt động GV HS Nội dung chính
GV cho điểm miệng câu trả lời HS HS đọc câu
? Em hÃy nêu tác dụng NNLT bậc cao HS tr¶ lêi
GV nhËn xÐt, bỉ sung kết luận Đó lí ngời ta xây dựng NNLT bậc cao
HS c cõu hi
GV ? Thế tên dành riêng ? Thế tên chuẩn
? im khỏc chúng gì? HS suy nghĩ trả lời GV kết luận HS đọc câu
Gỵi ý ? Hằng thờng có loại ? Chi tiết tõng lo¹i ?
Từ đối chiếu với câu hỏi để tìm biểu diễn khơng Thảo luận nhóm
Từng nhóm đa kết GV tổng hợp đa đáp án Gv yc HS đọc đề bài, suy nghĩ trả lời HS khác nhận xét, bổ sung GV kết luận
Gv yc HS đọc đề bài, ? Nhớ lại thông dịch gỡ?
HS suy nghĩ trả lời HS khác nhËn xÐt, bỉ sung GV kÕt ln
Gv ®a VD: gpt bËc
Nếu dùng liệu kiểm thử có kiểm tra đợc trờng hợp nghiệm xảy khơng ?
Từ HS trả lời 1.5 HS đọc đề
? Nhắc lại từ khoá pascal? Cho VD
Từ làm 1.11 giải thích HS đọc đề
C©u 1(13) Ngêi ta phải xây dựng ngôn ngữ lập trình bậc cao Vì:
- Nó gần với NN tự nhiên, thuận tiện cho ngời LT - Nó không phụ thuộc vào phần cứng MT ch-ơng trình thực nhiều loại MT khác
- Chơng trình viết NNBC dễ hiểu, dễ hiệu chỉnh dễ nâng cấp
- Nó cho phép làm việc với nhiều kiểu liệu Câu 4(tr13) HÃy cho biết điểm khác tên dành riêng tên chuẩn
Tờn dnh riờng khụng c dùng khác với ý nghĩa xác định, tên chuẩn dùng với ý nghĩa khác
C©u Những biểu diễn sau hằng Pascal
c) 6,23 DÊu phÈy ph¶i thay b»ng dÊu chấm e) A20 Là tên cha rõ giá trị
h) 'C Sai quy định xâu: thiếu nháy đơn cuối
Chó ý
g) 4+6 Là biểu thức đợc coi i)TRUE Là xâu nhng không logic Bài 1.3 ( SBT-tr6)
Khơng thể khẳng định chơng trình chơng trình cịn chứa lỗi ngữ nghĩa
Bµi 1.4 ( SBT-tr6)
Trong chế độ thơng dịch, giả sử 2/3 số câu lệnh chơng trình đợc thực Khơng thể khẳng định chơng trình cú pháp Vì cú pháp câu lệnh cha đợc thực cha đợc kiểm tra Bài 1.6 ( SBT-tr6)
Phải kiểm tra tính đắn chơng trình nhiều liệu thử nghim khỏc
Vì: Chơng trình có nhiều nhánh có nhiều dạng lỗi ngữ nghĩa khác
Bài 1.11 (Tr7)
Từ khoá Pascal lµ: A) END F) var Bµi 1.15 (Tr7)
Trong dòng thông tin thích chứa kí tự Tuần 3
Ngày soạn:
(2)? Tác dụng thích ? Từ HS trả lời 1.15
GV kÕt luận khác sâu
ngoài bảng chữ chơng trình dịch bỏ qua thích dịch chơng trình
4 Củng cố- HDVN
Đa tập: Ghép câu cột với câu thích hợp cột bảng sau:
Cét Cét KÕt qu¶
(1)Biên dịch (a) đại lợng có giá trị khơng đổi quỏ
trình thực chơng trình 1-d
(2) Thông dịch (b) dịch thực câu lệnh, câu lệnh trình tiếp tục 2-b (3) Chơng trình viết
trờn NNLT bậc cao (c) đại lợng đợc đặt tên, dùng để lu trữ giátrị giá trị đợc thay đổi trình thực chơng trỡnh
3-e (4) Biến (d) dịch toàn chơng trình nguồn thành chơng
trỡnh ớch cú th thực máy lu trữ để sử dụng lại cần thiết
4-c (5) Hằng (e) phải đợc chuyển đổi thành chơng trình ngơn
ngữ máy thực đợc 5-a - Hc bi
- Đọc Đọc bµi
Chơng II: chơng trình đơn giản Bài 3: cấu trúc chơng trình Bài 4: số kiểu liệu chuẩn I Mục tiêu:
- Hiểu chơng trình mơ tả thuật tốn ngơn ngữ lập trình - Biết cấu trúc chơng trình đơn giản; cấu trúc chung thành phần; - Nhận biết đợc thành phần chơng trình đơn giản
- Bíêt số kiểu liệu chuẩn: nguyên, thực, kí tự, logic; - Xác định đợc kiểu cần khai báo liệu đơn giản II Đồ dùng dạy học
GV: Gi¸o ¸n, SGK, SGV, STK, m¸y chiÕu, m¸y tÝnh HS: Vë ghi, SGK Tin häc 10, tin häc 11
III Các hoạt động dạy học ổ n định tổ chức lớp
3 KTBC Bµi míi
Hoạt động GV HS Nội dung chính
HS nghiªn cøu SGK
? Em h·y cho biÕt cÊu tróc chung cđa NNLT bËc cao ? C¸ch sư dơng cđa tõng phÇn?
HS TL GV kÕt ln HS nghiên cứu SGK
? Phần khai báo bao gồm HSTL
GV đa ví dụ chơng trình Pascal Program < SX_Day_so>;
Uses crt; Const n= 100 ;
Var i, j: <kiĨu d÷ liệu>
(*có thể khai báo khác *) Begin
[<dÃy lệnh>]
I Cấu trúc chơng trình 1 Cấu trúc chung
[<phần khai báo>]: có không <phần thân>: thiết phải có
2 Các thành phần ch ơng trình a) Phần khai báo
Gồm: tên chơng trình, th viện, hằng, biến ch-ơng trình
* Khai báo tên chơng trình: có không
Pascal: Program< tên chơng trình>
Tờn chng trỡnh l tờn ngời lập trình đặt theo quy định tên
VD: Program vi_du;
* Khai b¸o th viƯn: uses <tên t.v> Tuần 4
(3)end
HS nghiªn cøu vÝ dơ trªn + SGK GV đa số câu hỏi
Cõu 1: cho khai báo tên chơng trình dạng tổng qt ? Cho VD Tên ch-ơng trình có đặc điểm gì?
Câu2: nội dung khai báo th viện đặc điểm ? Cho VD
Câu Nội dung khai báo đặc điểm ? Cho VD
Câu 4: Nội dung khai báo biến đặc điểm ? Cho VD
Chú ý: GV hớng dẫn HS nghiên cứu VD C++ để em có nhận thức ngơn ngữ lập trình bậc cao
HS thảo luận theo nhóm, nhóm câu Mỗi nhóm báo báo kết
GV nhận xét tổng hợp
Chú ý: Lập trình ngôn ngữ cần tìm hiêu cách khai báo ngôn ngữ HS nhiên cứu SGK
? HÃy cho biết phần thân chơng trình Pascal bao gồm gì?
Từ Begin end thuộc loại tên nào? Nếu dịch tiếng việt có nghĩa ntn? HS th¶o ln tr¶ lêi GV nhËn xÐt, bỉ sung kết luận
GV: Mỗi NNLT có cách tổ chức chơng trình khác nhau, thờng phần thân chứa câu lệnh chơng trình
GV cho HS quan sát chơng trình ngôn ngữ khác Pascal C++ HS quan sát nhận xét cách viết chơng trình ngôn ngữ khác HS thảo luận trả lời câu hỏi
HS nghiên cứu thêm VD SGK
GV treo giÊy khỉ lín phãng to gåm mét sè kiĨu d÷ liƯu
HS quan sát, kết hợp SGK để biết đợc kiểu nguyên
GV ph©n tÝch bé nhớ lu trữ giá trị có nghĩa nào?
HS Kẻ bảng vào học thuộc GV giải thích thêm
? Nu bin ch dùng giá trị từ đến 100 ta khai báo kiểu integer có đợc khơng? ( Đợc nhng lãng phí b nh)
HS nghiên cứu SGK Kẻ bảng vào vë
HS nhớ lại bảng mã ASCII lớp 10 HS đọc VD SGK để hiểu đợc kiểu kí t Pascal l th no?
HS Kẻ bảng SGK vµ häc thuéc
- Trong Pascal: uses crt;
- Trong C++: #include <stdio.h> * Khai b¸o hằng
Const <tên hằng>=<giá trị hằng>; - Trong Pascal:
const Pi=3.1416
thờng đợc sử dụng cho giá trị xuất nhiều lần chơng trình
* Khai b¸o biÕn
Tất biến dùng chơng trình phải đặt tên phải khai báo
Biến đơn: Biến nhận giá trị thời điểm thực chơng trình
VD: GPT bậc 2: Các hệ số a, b, c đợc khai báo nh biến đơn
b) PhÇn thân chơng trình
Dóy lnh phm vi c xác định cặp dấu hiệu mở đầu kết thỳc to thnh thõn chng trỡnh
VD: Thân chơng tr×nh pascal
3 Ví dụ ch ơng trình đơn giản VD1
Trong Pascal Trong C++ Program VD;
Begin
Writeln(' Xin chao'); End.
# include <stdio.h> void main ()
{
printf("xin chao"); }
VD đa dòng ' Xin chao' hình II Một số kiểu liệu chuẩn
trong Pascal 1 KiĨu nguyªn
Kiểu Bộ nhớ Phạm vi giá trị byte byte Từ đến 255 integer byte -215 đến 215-1
(-32768 đến 32767) word byte Từ đến 216-1(65535)
longint byte Từ -231 đến 231-1
-2147483648-2147483647) 2 KiÓu thùc
Kiểu Bộ nhớ Phạm vi giá trị Real byte hoặc10-38 đến 1038
extended 10 byte hoặc10-4932 đến 104932
3 KiĨu kÝ tù
Kí tự kí tự thuộc mã ASCII gồm 256 kí tự có mã ASCII thập phân từ đến 255
Kiểu Bộ nhớ Phạm vi giá trị
Char byte 256 kÝ tù b¶ng m· ASCII 4 Kiểu logic
Tên dành riêng
Bắt đầu Begin[<dÃy lƯnh>]
end.
(4)KiĨu Bé nhí Phạm vi giá trị Boolean byte True False
4
Cñng cè - HDVN
Gv hệ thống lại kiến thức nhắc lại số kiến thức quan trọng - Làm câu hỏi 1, 2( SGK tr 35) vµ
(5)&5 Khai báo biến
Bài 6: phép toán, biểu thức, câu lệnh gán I Mục tiêu:
- Hiu cách khai báo biến Biết cách khai báo biến
- Biết khái niệm: phép toán, biểu thức số học, hàm số học chuẩn, biểu thức quan hệ; - Hiểu lệnh gán; viết đợc lệnh gán ;
- Viết đợc biểu thức số học lôgic với phép tốn thơng dụng - Bớc đầu hình thành kĩ sử dụng NNLT bậc cao để giải toán II Đồ dùng dạy học
GV: Giáo án, SGK, SGV, STK; HS: Vở ghi, SGK Tin học 11 III Các hoạt động dạy học ổ n định tổ chức lớp
2 KiĨm tra bµi cị
? HÃy nêu thành phần chơng trình cách khai báo chúng Bài
Hot động GV HS Nội dung chính
GV giải thích thêm cho HS hiểu khai báo biến
Sau khai báo có vùng nhớ dành cho biến với kích thớc kích thớc kiểu để lu trữ gía trị biến
HS nghiên cứu SGK
GV đa VD khai báo biến Giải phơng trình bậc
Var
a, b, c: integer; delta, x1, x2: real;
Trong đó: tham số thành phần NNLT; Real thuộc kiểu liệu no ?
Từ cách khai báo hÃy đa có ph¸p khai b¸o biÕn Pascal
HS tù cho VD minh ho¹
Từ VD GV đa em tính tổng nhớ dành cho biến khai báo =3*2+2*6+1*2+1*1=21byte
HS nghiªn cøu mơc : Mét sè chó ý khai báo biến
GV nhấn mạnh lại
GV nờu số VD sử dụng biến cha Pascal
HS tự lấy VD
Gv yêu cầu HS nghiên cứu SGK
GV dùng máy chiếu, chiếu bảng kí hiệu phép toán pascal
HS quan sát, phân tích GV giải thích thêm HS nghiên cứu ý SGK
GV giải thích thêm ý lấy VD minh hoạ
(a+b)>c and (b+c)>a and (a+c)>b
Đay biểu thức kiểm tra xem ba cạnh có tạo thành tam giác không
HS nghiên cứu SGK VD SGK
I Khai b¸o biÕn
Mọi biến dùng chơng trình cần khai báo tên kiểu liệu Khai báo biến để cấp phát nhớ cho biến Mỗi biến đợc khai báo lần Ta xét khai báo biến đơn Pascal, khai báo khoá Var Var <danh sách biến>: < kiểu liệu>;
- DS biến: nhiều tên biến, tên biến đợc viết cách dấu phẩy;
- Kiểu DL: kiểu DL chuẩn hay ngời lập trình định nghĩa
- Cấu trúc <danh sách biến>: < kiểu liệu>; xuất nhiều lần
VD: Xét khai báo biÕn Var
a, b, c: integer; x,y: real; n:word; d: char
Một số ý khai báo biến (SGK - Tr23) - Tên biến gợi nhớ đến ý nghĩa biến - Khơng nên đặt tên biến ngắn hay dài - Khi khai báo lu ý đến phạm vi gia strị VD sử dụng biến cha Pascal nh: đặt tên biến sai với quy định đặt tên, biến danh sách biến không phân cách dấu phẩy, tên biến trùng nhau, sử dụng biến cha khai báo, biến danh sách không kiểu,
II phép toán, biểu thức, câu lệnh gán
1 PhÐp to¸n
Các ngơn ngữ lập trình có phép toán số học nh: cộng, trừ, nhân, chia đại l-ợng thực, phép toán chie nguyên v ly Tit 5
Ngày soạn:
(6)? Biểu thức số học gì? Em cho VD biểu thức toán học viÕt nã pascal ntn
GV cho VD: 2*(x+y)/5*(x-z)
? Trình tự thực phép tốn ntn Vậy BT số học đợc viết theo quy tắc HS trả lời GV kết luận
HS tù lấy số VD khác
HS nghiên cứu mục ý SGK
GV giải thích thêm cách ®a VD t-¬ng øng víi tõng chó thÝch
VD1: a:integer ; b: real; BT a+b trả giá trị Real
VD2: Giải PT bậc hai ta tính delta tríc Delta:=b*b-4*a*c (dïng biÕn trung gian) Khi so s¸nh tính nghiệm ta cần dùng Delta
IF (Delta>0) then x1:=
X2:=(-b-sqrt(delta))/(2*a) Không phải dùng IF (b*b-4*a*c)>0 then X1:=(-b+sqrt(b*b-4*a*c))/(2*a)
Hs nghiªn cøu SGK
? ThÕ nµo lµ hµm sè häc chuÈn
GV chiếu bảng hàm số học chuẩn cho HS quan sát
YC HS nhà học thuộc bảng GV giải thích thêm Kiểu đối số ?Em cho 1VD BT Tốn học ( có chứa hàm) chuyển sang Pascal ? Em hiểu biểu thức quan hệ ? Phép toán quan hệ bao gồm ?
Em cho VD biểu thức quan hệ Từ suy dạng tổng quát
? Nó đợc thực theo trình tự ntn? HS trả lời GV kết luận
HS tù lÊy thêm VD xem VD SGK HS nghiên cứu SGK
GV lấy số VD để HS hiểu xếp loại học lực cho HS
( §TBCM>=8.0) and ((Toan>=8.0) or (văn>=8.0))
Xét VD sau: Delta:=b*b-4*a*c;
?Kt hp từ VD GV nêu học cho biết dạng tổng quát câu lệnh gán
HS tự cho VD giải thích
GV cho VD yêu cầu HS giải thích ý nghĩa câu lệnh gán
phần d, phép toán quan hƯ B¶ng kÝ hiƯu (SGK)
Chó ý: KÕt qu¶ phép toán quan hệ cho giá trị logic
- Tạo biểu thức phức tạp từ quan hệ đơn giản
2 BiÓu thøc sè häc
Quy t¾c viÕt
- Dùng cặp ngoặc trịn để xác định trình tự thực phép tốn
- Viết lần lợt từ trái qua phải
- Khơng đợc bỏ qua dấu (*) tích Các phép toán đợc thực theo thứ tự - Thực phép toán ngoặc trớc - Trong phép tốn khơng có ngoặc thực từ trái sang phải: nhân, chia, chia nguyên, lấy phần d, cộng, trừ
Chó ý:
- NÕu biỴu thøc chøa mét h»ng hay biÕn kiĨu thùc th× ta cã biĨu thức số học thực, giá trị biểu thức thuéc kiÓu thùc
- Trong số trờng hợp nên dùng biến trung gian để tránh đợc việc tính biểu thức nhiều lần
3 Hµm sè häc chuÈn
Các NNLT có th viện chứa số chơng trình tính giá trị hàm tốn học thờng dùng Các chơng trình nh đợc gọi l cỏc hm s hc chun
Bảng hàm số häc chuÈn ( SGK tr 26) VD:
4 BiÓu thøc quan hƯ
Hai biĨu thøc cïng kiĨu liªn kÕt víi bëi phÐp to¸n quan hƯ cho ta mét biĨu thøc quan hƯ
<BThøc 1> <phÐp to¸n quan hệ><Bthức2> Thực hiện: Tính giá trị biểu thức thực phép toán quan hệ Kết giá trị logic
VD: x>8 x+y >= 2*x BiĨu thøc logic
not ( khơng) đợc viết trớc biểu thức cần phủ định
Các phép toán and ( và), or ( hoặc) dùng để kết hợp nhiều biểu thức logic quan hệ thành biểu thức
(7)<tªn biÕn>:=<biĨu thøc>;
KiĨu giá trị biểu thức phải phù hợp với kiểu d÷ liƯu cđa biÕn
VD: NÕu cã a:integer ; BT a:=c+d
Thì Biểu thức c+d phải trả kiểu integer Tên biến vế trái dấu " :=" , giá trị giá trị biểu thức ë vÕ ph¶i