Ngôn ngữ lập trình nào cũng đều sử dụng đến phép toán, biểu thức, câu lệnh gán Ta xét các khái niệm này trong ngôn ngữ lập trình TP.. 1..[r]
Trang 1Tuần : 1 Ngày soạn 26/081/08
CHƯƠNG II CHƯƠNG TRÌNH ĐƠN GIẢNBÀI
A- Mục tiêu bài học:
1 Kiến thức:
- Biết được các phép toán thông dụng trong ngôn ngữ lập trình
- Biết diễn đạt một biểu thức trong ngôn ngữ lập trình
- Biết được chức năng của lệnh gán
- Biết được cấu trúc của lệnh gán và một số hàm chuẩn thông dụng trong ngôn ngữ lập trình Pascal
2 Kỹ năng:
- Sử dụng được các phép toán để xây dựng biểu thức
- Sử dụng được lệnh gán để viết chương trình
3 Thái độ:
Học sinh tích cực chủ động, nghiêm túc, chính xác trong nghiên cứu khoa học
B- Phương pháp:
Thuyết trình giới thiệu và sử dụng giáo cụ trực quan kết hợp với vấn đáp HS
C- Chuẩn bị của giáo viên và học sinh:
1-Chuẩn bị của giáo viên
- Bảng viết, sách giáo khoa, sách giáo viên, phiếu học tập
2-Chuẩn bị của học sinh
- Sách giáo khoa
D- Tiến trình lên lớp:
I- Ổn định lớp :
II- Kiểm tra bài cũ Nêu các kiểu dữ liệu chuẩn trong Pascal và phạm qui biểu diễn giá trị III- Bài mới:
1 Đặt vấn đề: Trong khi viết chương trình ta thường thực hiện các tính toán, thực hiện các so sánh…
Vậy trong chương trình ta viết như thế nào? Có giống ngôn ngữ tự nhiên hay không? Tất cả các ngôn ngữ
có sử dụng chúng một cách giống nhau không? Ta đi tìm hiểu về Phép toán, biểu thức và câu lệnh gán
trong ngôn ngữ lập trình
2 Triển khai bài:
Hoạt động 1: Cung cấp cho học sinh biết được một số kiểu dữ liệu chuẩn.
Hoạt động của giáo viên và học sinh Nội dung kiến thức
Gv: Hãy kể các phép toán em đã được học trong toán
học?
Hs: Suy nghĩ và trả lời: Phép: cộng, trừ, nhân, chia, lấy
số dư, chia lấy nguyên, so sánh
Gv: Trong ngôn ngữ lập trình nào cũng có các phép toán
đó nhưng được diễn đạt bằng một cách khác
Gv: Các phép toán đó có dùng được trong ngôn ngữ lập
trình?
Chỉ có một số phép toán dùng được, một số phép phải
xây dựng từ một số phép toán khác
VD: Phép lũy thừa không phải ngôn ngữ nào cũng viết
được
Gv: Mỗi ngôn ngữ khác nhau lại có cách kí hiệu phép
toán khác nhau
Ngôn ngữ lập trình nào cũng đều sử dụng đến phép toán, biểu thức, câu lệnh gán
Ta xét các khái niệm này trong ngôn ngữ lập trình TP
1 Phép toán:
NNLT TP sử dụng một số phép toán sau
Phép toán
Trong toán học Trong TP
Số nguyên
+ (cộng) , - (trừ) , x (nhân) , div (chia nguyên), mod (chia lấy dư)
+, -, *, div, mod
TIẾT
6
Trang 2Phép toán quan hệ
< (nhỏ hơn), ( nhỏ hơn hoặc bằng), >
( lớn hơn), (lớn hơn hoặc bằng) , = (bằng), (khác)
<, <=, >, >=,
=, <>
Logic (phủ định),(hoặc) , (và) Not, or, and
Hoạt động 2: Cung cấp cho học sinh về biểu thức số học trong TP
Gv: Trong toán học, biểu thức là gì?
Hs: đưa ra khái niệm biểu thức toán học.
Gv: Đưa ra khái niệm biểu thức trong lập trình
Gv: Cách viết biể thức này có giống cách viết
trong toán học hay không?
Hs:đưa ra ý kiến riêng của mình
Gv: phân tích ý kiến của học sinh
Gv: đưa ra cách viết biểu thức và thứ tự thực
hiện phép toán trong lập trình.
Gv: cách viết biểu thức phụ thuộc vào cú pháp
từng ngôn ngữ lập trình.
Đưa ra một số biểu thức toán học và yêu cầu học
sinh viết chúng trong ngôn ngữ TP
Hs: Lên bảng viết
1 Biểu thức số học:
- Là một dãy các phép toán +, -, *, /, div, mod
từ các hằng,biến kiểu số và các hàm Dùng cặp dấu () để qui định trình tự tính toán
Thứ tự thực hiện các phép toán:
- Trong ngoặc trước, ngoài ngoặc sau
- Nhân chia trước , cộng trừ sau
- Giá trị của biểu thức có kiểu là kiểu của biến hoặc hằng có miền giá trị lớn nhất trong biểu thức
Hoạt dộng 3: cung cấp cho học sinh một số hàm học chuẩn trong TP
Gv: Muốn tính X2 ta viết như thế nào?
√xHs: Ta có thể đưa ra X*X
Gv: Muốn tính sinx Cosx,… làm thế nào?
Hs: chưa biết cách tính
Gv: để tính các giá trị đó một cách đơn giản, người ta
xây dựng sẵn một số đơn vị chương trình trong các thư
viện chương trình giúp người lập trình tính toán nhanh
các giá trị thông dụng
Gv: Với các hàm chuẩn cần quan tâm đến kiểu đối số và
kiểu giá trị trả về
VD: sinx thì thường được đo bằng độ hay râdin?
Vd: Sqr(x) với x=3 kq= 9 số nguyên
X=2.5 (số thực) kq = 6.25 số thực
2 Hàm số học chuẩn:
- Các ngôn ngữ lập trình thường cung cấp sẵn một số hàm số học để tính một số giá trị thông dụng
- Cách viết : Tên_hàm(đối số)
- Kết quả của hàm phụ thuộc vào đối số
- Đối số là một hay nhiều biểu thức số học đặt trong dấu() sau tên hàm
- Bản thân hàm cũng có thể coi là biểu thức số học và có thể tham gia vào biểu thức như toán hạng bất kì
3.
Ví dụ:
Biểu thức trong toán học:
10 2
xy y x
Trang 3Hoạt động 5: Tìm hiểu biểu thức logic và câu lệnh gán
Gv: muốn so sánh nhiều diều kiện đồng thời làm như thế
nào?
Hs: đưa ra ý kiến của mình (và, hoặc )
Đưa ra ví dụ và cách viết đúng trong ngôn ngữ Tp
Chú ý: Mỗi ngôn ngữ có cách viết khác nhau
Gv: Mỗi NNLT có cách viết lệnh gán khác nhau.
Gv: Cần chú ý điều gì khi viết lệnh gán?
Hs: đưa ra ý kiến
Gv: phân tích ý kiến của học sinh sau đó tổng
hợp lại: cần chú ý đến kiểu của biến và kiểu của
biểu thức
Gv: giáo viên đưa ra một vài ví dụ sau đó yêu cầu học
sinh đưa ra kết quả khi thực hiện câu lệnh gán
Gv: Hãy cho biết hai câu lệnh sau giống hay là khác nhau
và giải thích?
1) x= 3+5;
2) x:= 3+5;
Hs: Suy nghĩ và trả lời câu hỏi
Hai câu lệnh trên khác nhau hoàn toàn
5 Biểu thức logic.
+ Biểu thức logic đơn giản nhất là hằng hoặc
biến logic
+ Thường dùng để liên kết nhiều biểu thức
quan lại với nhau bởi các phép toán logic
Vd: ba số dương a,b,c là độ dài ba cạnh tam
giác nếu biể thức cho giá trị đúng
(a+b>c) and (b+c>a) and (c+a>b)
Biểu thức điều kiện 0 X 5 được viết như sau
(X>=0) and (X<=5)
6 Câu lệnh gán:
+ Lệnh gán là cấu trúc cơ bản nhất của mọi ngôn ngữ lập trình, thường dùng để gán giá trị cho biến
Cấu trúc:
< tên biến>:= <biểu thức>;
+ Trong đó biểu thức phải phù hợp với tên
biến
Có nghĩa là kiểu của tên biến phải cùng kiểu với kiểu của biểu thức hoặc phải bao hàm kiểu của biểu thức
Hoạt động của lệnh gán: tính giá trị biểu thức sau đó ghi giá trị vào tên biến
Trang 4Câu lệnh 1) đó lầu phép so sánh so sánh giá trị biến x có
bằng 3+5 hay không
Câu lệnh 2) là câu lệnh gán: gán 3+5 cho x kết quả là x
có giá trị bằng 8
Vd:
X1:=(-b- sqrt(b*b-4*a*c))/(2*a);
X2:=(-b + sqrt(b*b-4*a*c))/(2*a);
I:=I+1;
J:=J-2;
Trong đó : lệnh thứ 3 tăng giá trị I lên một đơn vị, lệnh thứ 4 giảm J hai đơn vị
IV- Củng cố bài :(2 phút)
Những nội dung đã học
- Các phép toán trong Turbo Pascal: số học, quan hệ và logic
- Các biểu thức trong Turbo Pascal: số học, quan hệ và logic
- Cấu trúc lệnh gán trong Turbo Pascal: tên_biến := biểu_thức;
V- Dặn dò :
- Làm các bài tập 5, 6, 7, 8, sách giáo khoa, trang 35-36
- Xem phụ lục A, sách giáo khoa trang 121: Một số phép toán thường dùng và giá trị phép toán logic
VI Rút kinh nghiệm: