Các phép toán với dữ liệu kiểu sốTrong ngôn ngữ lập trình có thể thực hiện đ ợc các phép toán số học không nhỉ?. Trong mọi ngôn ngữ lập trình đều có thể thực hiện các phép toán số học
Trang 21 D÷ liÖu vµ kiÓu d÷ liÖu
KiÓu d÷ liÖu v¨n b¶n kh«ng
KiÓu d÷ liÖu v¨n b¶n sö dông
Ng«n ng÷ lËp tr×nh th êng ph©n chia d÷ liÖu thµnh c¸c kiÓu vµ
H·y gi¶i thÝch vÒ kÕt qu¶ cña hai c«ng thøc
® îc sö dông trong Excel
ë c¸c h×nh bªn.
Trang 3Các ngôn ngữ lập trình định nghĩa sẵn một số kiểu dữ liệu cơ bản th ờng dùng sau:
Ví dụ: số học sinh, số quyển sách,…
Số thực
Ví dụ: điểm TB môn văn, chu vi đ ờng tròn,…
Xâu kí tự
Ví dụ: CHAO CAC BAN ’, ‘8A1’, ‘5/ 9/ 2008’ 8A1 , 5/ 9/ 2008 ’, ‘5/ 9/ 2008’ ‘8A1’, ‘5/ 9/ 2008’ ’, ‘5/ 9/ 2008’,…
là dãy các kí tự lấy từ bảng chữ cái của ngôn ngữ lập trình.
Trang 4Một số kiểu dữ liệu cơ bản của ngôn ngữ lập trình Pascal
integer Số nguyên trong khoảng -2 15 đến 2 15 -1
real Số thực có giá trị tuyệt đối trong khoảng
2,9 x 10 -39 đến 1,7 x 10 38 và số 0 char Một kí tự trong bảng chữ cái
string Xâu kí tự, tối đa gồm 255 kí tự
Trang 5R :
CV , S :
Bµi to¸n:
BiÕt b¸n kÝnh cña h×nh trßn lµ mét sè ch½n R TÝnh chu vi
(CV) vµ diÖn tÝch (S) cña h×nh trßn.
H·y lùa chän kiÓu
d÷ liÖu thÝch hîp
CV vµ S .
kiÓu integer
kiÓu real
Trang 62 Các phép toán với dữ liệu kiểu số
Trong ngôn ngữ lập
trình có thể thực hiện
đ ợc các phép toán số
học không nhỉ?
Trong mọi ngôn ngữ lập trình đều có thể thực hiện các phép toán số học cộng, trừ, nhân và chia với các số nguyên và số thực
Trang 7C¸c phÐp to¸n sè häc trong Pascal
KÝ hiÖu Tªn phÐp to¸n KiÓu d÷ liÖu
div Chia lÊy phÇn nguyªn Sè nguyªn
Trang 8Trong to¸n häc Trong Pascal
7 mod 3 = 1 -5 Mod 3 = -2
2 -1
7 div 3 = -5 Div 3 =
VÝ dô 2:
VÝ dô 1:
C¸ch viÕt biÓu thøc sè häc trong Pascal
15a 30b + 12 – 30b + 12
(X2 + 2X +5) - 4XY
2
2)
(X 5 b
Y 3
a
5
X
15*a - 30*b + 12 (X*X + 2*X + 5) 4*X*Y – 30b + 12 (X+5)/(a+3) y/(b+5)*(X+2)*(X+2) – 30b + 12
Trang 9Các phép toán trong ngoặc đ ợc thực hiện tr ớc tiên.
Quy tắc tính biểu thức số học
Trong các ngôn ngữ lập trình, khi viết các biểu thức toán chỉ sử dụng dấu ( )
Trong d y các phép toán không có dấu ngoặc,ãy các phép toán không có dấu ngoặc, các phép toán đ ợc * / mod div thực hiện tr ớc.
D y các phép toán có cùng mức độ u tiên thì thực hiện ãy các phép toán không có dấu ngoặc,
lần l ợt từ trái sang phải.
Trang 103 Các phép so sánh
Các ngôn ngữ lập trình cho phép sử dụng phép toán so sánh để so sánh các dữ liệu (số, biểu thức, )
Kí hiệu các phép toán và phép so sánh có thể khác nhau, tuỳ theo quy định của từng ngôn ngữ lập trình.
Kết quả của phép so sánh chỉ có thể là đúng hoặc sai.
Ví dụ 1:
Sai
10+1 > 7*2
Đúng hay Sai phụ thuộc vào
giá trị cụ thể của X
8 - X < 2
Trang 11KÝ hiÖu trong
Pascal phÐp so s¸nh kÝ hiÖu to¸n häc
B¶ng kÝ hiÖu c¸c phÐp to¸n so s¸nh trong Pascal
VÝ dô 2:
Trang 124 Giao tiếp ng ời máy tính – 30b + 12
Là quá trình trao đổi dữ liệu hai chiều giữa con ng ời và máy tính khi thực hiện ch ơng trình
Con ng ời: thực hiện kiểm tra, điều chỉnh, bổ sung…
Máy tính: đ a thông báo, kết quả, gợi ý…
T ơng tác giữa ng ời - máy là do ng ời lập trình tạo ra và th ờng thực hiện nhờ các thiết bị chuột, bàn phím, màn hình.
Trang 13a Nhập dữ liệu
Là một t ơng tác mà ch ơng trình tạm dừng để yêu cầu
ng ời dùng nhập dữ liệu .
Ví dụ: Câu lệnh yêu cầu bán kính từ bàn phím trong Pascal
Write( ‘8A1’, ‘5/ 9/ 2008’Ban hay nhap R =’, ‘5/ 9/ 2008’ );
Readln(R);
Kết quả
Ban hay nhap R =
Gõ bán kính và nhấn <Enter>
Bài toán:
Hãy nhập vào bán kính của hình tròn là một số chẵn R Tính chu vi (CV) và diện tích (S) của hình tròn.
4
Trang 14b Thông báo kết quả tính toán
Là yêu cầu đầu tiên và quan trọng đối với mọi ch ơng trình.
Ví dụ: Câu lệnh thông báo kết quả tính CV và S hình tròn.
Writeln( ‘8A1’, ‘5/ 9/ 2008’Chu vi hinh tron la: ’, ‘5/ 9/ 2008’,CV );
Writeln( ‘8A1’, ‘5/ 9/ 2008’Dien tich hinh tron la: ’, ‘5/ 9/ 2008’, S);
Kết quả
Chu vi hinh tron la: 37.68 Dien tich hinh tron la: 113.04
Trang 15c C¸c th«ng b¸o trong qu¸ tr×nh thùc hiÖn ch ¬ng tr×nh
Th«ng b¸o d¹ng hép tho¹i cho phÐp ng êi dïng tuú chän.
VÝ dô: Hép tho¹i sau cã thÓ xuÊt hiÖn khi ng êi dïng
thùc hiÖn thao t¸c kÕt thóc ch ¬ng tr×nh.
Trang 16 Th«ng b¸o t¹m ngõng trong mét kho¶ng thêi gian
VÝ dô: Trong ch ¬ng tr×nh Pascal cã c¸c c©u lÖnh sau:
Writeln( ‘8A1’, ‘5/ 9/ 2008’Cac ban cho 2 giay nhe…’, ‘5/ 9/ 2008’);
Delay(2000);
KÕt qu¶
Cac ban cho 2 giay nhe…
Ch ¬ng tr×nh t¹m ngõng 2 gi©y råi thùc hiÖn tiÕp
Trang 17 Thông báo tạm ngừng cho đến khi ng ời dùng nhấn phím
Ví dụ: Trong ch ơng trình Pascal có các câu lệnh sau:
Writeln( ‘8A1’, ‘5/ 9/ 2008’Hay nhan Enter de tiep tuc! ’, ‘5/ 9/ 2008’);
Read;
Kết quả
Hay nhan Enter de tiep tuc!
-Ch ơng trình tạm ngừng chờ
ng ời dùng nhấn phím Enter
rồi thực hiện tiếp
Trang 18Ghi nhớ!
Ngôn ngữ lập trình phân chia dữ liệu thành các kiểu và định nghĩa các phép
trình trao đổi dữ liệu hai chiều giữa ng
ời và máy tính.