Bài 4. Sử dụng biến trong chương trình

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn: Võ Nhật Trường
Người gửi: Võ Nhật Trường (trang riêng)
Ngày gửi: 12h:45' 29-10-2021
Dung lượng: 5.3 MB
Số lượt tải: 538
Nguồn: Võ Nhật Trường
Người gửi: Võ Nhật Trường (trang riêng)
Ngày gửi: 12h:45' 29-10-2021
Dung lượng: 5.3 MB
Số lượt tải: 538
Số lượt thích:
0 người
Biến và hằng là gì?
NỘI DUNG TRỌNG TÂM
Cách sử dụng biến và hằng trong chương trình
Các thành phần chính của chủ đề
2. Khai báo biến
1. Biến là công cụ trong lập trình
4. Hằng
3. Sử dụng biến trong chương trình
Trong toán học em đã biết biến số (gọi tắt là biến) là một đại lượng có thể nhận các giá trị khác nhau và thường được sử dụng trong các biểu diễn các hàm số, các biểu thức.
Ví dụ: Bài toán tính chu vi và diện tích hình tròn với bán kính R = 3 ?
Bán kính hình tròn R có thể được xem là một biến trong bài toán trên
Kết quả tính toán như sau:
Chu vi hình tròn : 2. Pi. R = 2. 3,14 . 3
Diện tích hình tròn : Pi. R2 = 3,14. 3. 3
-Trong lập trình, biến cũng đóng vai trò vô cùng quan trọng.
-Ta có thể viết chương trình Pascal cho phép người sử dụng nhập từ bàn phím bán kính của hình tròn, sau đó tính toán chu vi và diện tích hình tròn, thông báo quả ra màn hình như sau :
Kết quả khi chạy chương trình
Nhập số 5 và Enter
Kết quả
R trong chương trình trên dùng để lưu trữ dữ liệu nhập vào. Trong ngôn ngữ lập trình, R được gọi là biến.
Hoạt động cơ bản của máy tính là xử lí dữ liệu. Trước khi được máy tính xử lí, dữ liệu cần được lưu trong bộ nhớ của máy tính. Ví dụ tính tổng hai số:
1. Biến là công cụ trong lập trình :
20
15
5
Writeln (15+5);
in ra màn hình kết quả số 20
Để chương trình luôn biết chính xác dữ liệu cần được lưu ở vị trí nào trong bộ nhớ, các ngôn ngữ lập trình cung cấp một công cụ lập trình rất quan trọng. Đó là biến nhớ, hay gọi ngắn gọn là biến
1. Biến là công cụ trong lập trình :
20 (= X+Y)
X
Y
15
5
Ta có thể sử dụng hai biến X và Y để lưu giá trị của hai số 15 và 5. Khi đó lệnh: Writeln (x+y); -> kết quả là 20.
Trong lập trình, biến được dùng để lưu trữ dữ liệu và dữ liệu được biến lưu trữ có thể thay đổi trong khi thực hiện chương trình.
Dữ liệu do biến lưu trữ được gọi là giá trị của biến.
Em hãy thảo luận và trình bày về biến trong ngôn ngữ lập trình Pascal
1. Biến là công cụ trong lập trình :
5 là giá trị của biến
x
biến x
5
Ví dụ: Cần tính giá trị của các biểu thức
1. Biến là công cụ trong lập trình :
Ta có thể thực hiện như sau:
y = x / 3
z = x / 5
x =100+50
Em hãy nhớ lại cấu trúc chương trình gồm mấy phần
2. Khai báo biến:
x
Program Phep_Tru;
Var so1,so2,hieu :Integer;
Begin
Write(`-Nhap so thu nhat = ‘); Readln(so1);
Write(`-Nhap so thu hai = ‘); Readln(so2);
hieu:= so1-so2;
Writeln(`-------------------------------`);
Writeln(`so1:4, ` - `,so2:4, ` = `,hieu:5);
Readln
End.
Phần khai báo
Biến cần được khai báo ở đâu?
Khai báo biến gồm những gì?
Trình bày cú pháp khai báo biến?
2. Khai báo biến:
z
Các biến dùng trong chương trình cần phải được khai báo ngay trong phần khai báo của chương trình.
Việc khai báo biến gồm:
*Khai báo tên biến
*Khai báo kiểu dữ liệu của biến.
Tên biến phải tuân theo quy tắc đặt tên của ngôn ngữ lập trình.
x
y
2. Khai báo biến:
a
Cú pháp khai báo biến:
Var : ;
-Var: là từ khoá dùng để khai báo biến.
-Danh sách tên biến: do người lập trình đặt theo qui tắc, viết cách nhau bởi dấu phẩy “,”.
-Kiểu dữ liệu: Là kiểu dữ liệu của biến sẽ nhận trong chương trình (string, integer, char, real, boolean,…).
Ví dụ: Var a,b: integer;
S, dien_tich:real;
thong_bao:string;
b
s
Thong_bao
Dien_tich
2. Khai báo biến:
Ví dụ : Khai báo biến trong Pascal:
Var m, n : integer ; s, dientich : real ; thong_bao, ten : string ;
Từ khoá
Biến kiểu số nguyên (Integer)
Biến kiểu số thực (Real)
Biến kiểu xâu (string)
2. Khai báo biến:
Bài tập :
Đánh dấu ۷ vào lựa chọn đúng hoặc sai :
۷
۷
۷
۷
۷
۷
۷
2. Khai báo biến:
Bài tập: Hãy cho biết kiểu dữ liệu của các biến cần khai báo dùng để viết chương trình sau đây:
Viết chương trình nhập vào họ tên, lớp, chiều cao, cân nặng của học sinh và in ra màn hình.
Các biến hoten và lop là kiểu chuỗi;
Biến chieucao, cannang : kiểu số thực;
Var hoten, lop : string ;
chieucao, cannang : real ;
Khai báo biến
Các thành phần chính của chủ đề
2. Khai báo biến
1. Biến là công cụ trong lập trình
4. Hằng
3. Sử dụng biến trong chương trình
3. Sử dụng biến trong chương trình:
z
Sau khi khai báo, ta có thể sử dụng các biến trong các câu lệnh để tính toán hoặc xử lí chúng như với các giá trị dữ liệu (số, kí tự hay xâu,…). Điều phải lưu ý là để có kết quả tính toán đúng mục tiêu của chương trình, cần phải gán các giá trị dữ liệu thích hợp cho các biến
x
y
Thao tác có thể thực hiện với các biến là gì?
3. Sử dụng biến trong chương trình:
Các thao tác có thể thực hiện với biến là:
-Gán giá trị cho biến
-Tính toán với giá trị của biến.
Kiểu dữ liệu của giá trị được gán cho biến phải trùng với kiểu của biến.
Ví dụ:
3. Sử dụng biến trong chương trình:
x -a/b (Biến x nhận giá trị -a/b)
x y (Biến x được gán giá trị của biến y)
i i + 1 (Biến i nhận giá trị bằng giá trị hiện thời của i cộng thêm 5
*Câu lệnh gán giá trị trong các ngôn ngữ lập trình có dạng:
Tên biến Biểu thức cần gán giá trị cho biến
Trong đó dấu ← biểu thị phép gán
Ví dụ:
3. Sử dụng biến trong chương trình:
Khai báo biến
Gán giá trị cho biến
Gán giá trị cho biến
3. Sử dụng biến trong chương trình:
Kí hiệu phép gán trong Pascal là dấu :=
:= ;
Trong Pascal, lệnh để gán giá trị cho biến khi nhập từ bàn phím:
Readln( );
Read( );
Ví dụ: Gán giá trị cho biến x:
X := 12;
X := y;
X := (a+b)/2;
X := x+1;
Readln(x);
Read(x);
3. Sử dụng biến trong chương trình:
Bài tập:
Gán giá trị số 12 vào biến X.
Gán giá trị đã lưu trong biến Y vào biến X.
Tính trung bình cộng hai giá trị trong hai biến a và b. Kết quả gán vào biến X.
Tăng giá trị của biến X lên 1 đơn vị, kết quả gán trở lại biến X.
Bài tập: Các phép gán sau có hợp lệ không? Giả xử biến A được khai báo kiểu dữ liệu số thực, biến X là kiểu dữ liệu xâu.
۷
۷
۷
۷
۷
Bài tập vận dụng
Chương trình nhập vào chiều dài và chiều rộng của hình chữ nhật là 2 số nguyên. Tính và in ra màn hình chu vi và diện tích của hình chữ nhật đó.(Cho d = 5, r = 3)
Write(‘Nhap chieu dai, chieu rong HCN’);
Readln(d, r);
4. Hằng:
Ví dụ: Chương trình tính diện tích hình tròn có bán kính r như hình bên, các em thấy ngoài công cụ biến là r,s, trong ngôn ngữ lập trình còn có công cụ khác là hằng số pi=3.14
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
4. Hằng:
Tương tự như biến, hằng cũng là một công cụ lưu trữ dữ liệu. Khác với biến, hằng là một đại lượng có giá trị không đổi trong suốt chương trình.
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
Em hãy nêu cú pháp khai báo hằng trong chương trình?
4. Hằng:
Trong Pascal, hằng được khai báo theo cú pháp sau:
Const = ;
Trong đó : Const là từ khóa để khai báo hằng .
Ví dụ :
Từ khoá
Tên hằng
Giá trị của hằng
4. Hằng:
Hằng là đại lượng để lưu trữ dữ liệu và hằng có giá trị không đổi trong suốt quá trình thực hiện chương trình.
Để sử dụng hằng ta phải khai báo và gán giá trị.
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
Bài tập : Với khai báo :
Các phép gán sau đúng hay sai ?
Const pi = 3.14;
Bankinh = 2;
Var Chuvi: Real;
۷
۷
۷
Thừa dấu bằng
Thừa dấu hai chấm
Thiếu dấu hai chấm
Thiếu dấu chấm phấy
Thiếu dấu chấm
Var x,y,z :=integer; (1)
Const a:= 5; (2)
Begin (3)
x=45; (4)
y:=30 (5)
z:=(x+y)/5; (6)
Writeln(z); (7)
Readln (8)
End (9)
Đúng
Đúng
Đúng
Đúng
Bài tập: Hãy chỉ ra lỗi nếu có trong chương trình sau:
Bài tập : Đánh dấu ۷ vào lựa chọn đúng hoặc sai :
۷
۷
۷
۷
۷
Giả sử A được khai báo là biến với kiểu dữ liệu số thực, X là biến với kiểu dữ liệu xâu, R là hằng được khai báo R=3. Các phép gán sau đây có hợp lệ không ?
Biến và hằng là các đại lượng được đặt tên dùng để lưu trữ dữ liệu. Giá trị của biến có thể thay đổi, còn giá trị của hằng được giữ nguyên trong suốt quá trình thực hiện chương trình.
Biến và hằng phải được khai báo trước khi sử dụng.
Ghi nhớ
CHAO CAC BAN
Bài tập và thực hành
Bài tập 1. Viết chương trình Pascal có khai báo và sử dụng biến:
Bài toán: Một cửa hàng cung cấp dịch vụ bán hàng thanh toán tại nhà. Khách hàng chỉ cần đăng kí số lượng mặt hàng cần mua, nhân viên của hàng sẽ trả hàng và nhận tiền thanh toán tại nhà khách hàng. Ngoài trị giá hàng hóa, khách hàng còn phải trả thêm phí dịch vụ. Hãy viết chương trình Pascal để tính tiền thanh toán trong trường hợp khách hàng chỉ mua một mặt hàng duy nhất.
Công thức gợi ý:
Tiền thanh toán = Đơn giá x số lượng + phí dịch vụ
Bài tập và thực hành
a./ Khởi động Pascal. Gõ chương trình sau và tìm hiểu ý nghĩa của từng câu lệnh trong chương trình.
Program Tinh_tien;
Uses crt;
Var Soluong: integer; dongia, thanhtien: real; thongbao:string;
Const phi=10000;
Begin
clrscr; thongbao:= `Tong so tien phai thanh toan : ‘;
{Nhap don gia va so luong hang}
write(`Don gia = `); readln(dongia);
write(`So luong = `); readln(soluong);
thanhtien:= soluong * dongia + phi; (*In ra so tien phai tra*)
Writeln(Thongbao, thanhtien:10:2); readln
End.
Program Tinh_Tien;
Uses Crt;
Var soluong: integer;
dongia, thanhtien: real;
thongbao: String;
Const phi= 10000;
Begin
clrscr;
thongbao:= ‘Tong so tien phai thanh toan: ’;
{nhap don gia va so luong hang}
write(‘don gia= ‘); readln(dongia);
write(‘so luong= ‘); readln(soluong);
thanhtien:= soluong * dongia + phi;
(* In ra so tien phai tra *);
writeln(thongbao, thanhtien:10:2);
readln
End.
Khai báo tên chương trình
Khai báo sử dụng thư viện CRT
Khai báo các biến thuộc kiểu số nguyên, số thực và xâu kí tự
Khai báo hằng Phí
Bắt đầu thân chương trình
Lệnh xóa màn hình
Gán giá trị cho biến thongbao
Dòng chú thích
nhập giá trị cho biến dongia
nhập giá trị cho biến soluong
Gán giá trị cho biến thanhtien
Dòng chú thích
Xuất giá trị biến thanhtien
Dừng lại chờ bấm Enter
Kết thúc chương trình
Program Tinh_Tien;
Uses Crt;
Var soluong: integer;
dongia, thanhtien: real;
thongbao: String;
Const phi= 10000;
Begin
clrscr;
thongbao:= ‘Tong so tien phai thanh toan: ’;
{nhap don gia va so luong hang}
write(‘don gia= ‘); readln(dongia);
write(‘so luong= ‘); readln(soluong);
thanhtien:= soluong * dongia + phi;
(* In ra so tien phai tra *);
writeln(thongbao, thanhtien:10:2);
readln
End.
Khai báo tên chương trình
Khai báo sử dụng thư viện CRT
Khai báo các biến thuộc kiểu số nguyên, số thực và xâu kí tự
Khai báo hằng Phí
Bắt đầu thân chương trình
Lệnh xóa màn hình
Gán giá trị cho biến thongbao
Dòng chú thích
nhập giá trị cho biến dongia
nhập giá trị cho biến soluong
Gán giá trị cho biến thanhtien
Dòng chú thích
Xuất giá trị biến thanhtien
Dừng lại chờ bấm Enter
Kết thúc chương trình
Bài tập và thực hành
b./Lưu chương trình với tên TINHTIEN.PAS. Dịch và chỉnh sửa các lỗi gõ, nếu có.
c./ Chạy chương trình với các bộ dữ liệu (đơn giá và số lượng) như sau (1000, 20),
(3500, 200), (18500, 123). Kiểm tra tính đúng của các kết quả in ra.
d./ Chạy chương trình với bộ dữ liệu (1, 35000). Quan sát kết quả nhận được. Hãy thử đoán lý do tại sao chương trình cho kết quả sai.
Bài tập và thực hành
ĐỐ VUI
Cốc nước X màu xanh, cốc nước Y màu đỏ. Làm cách nào để tráo đổi cốc X có nước màu đỏ và cốc Y có nước màu xanh?
(Hai cốc có thể tích như nhau)
X
Y
Y
X
Quá trình thay đổi cốc nước
X
Y
Z
x
Z
Quá trình thay đổi cốc nước
X
Y
Z
x
Z
x
y
Quá trình thay đổi cốc nước
Nước của 2 cốc đã được hoán đổi
X
Z
Y
x
Z
x
y
Z
y
Chuyển các lệnh gán trên thành câu lệnh gán trong Pascal
………………………………….
………………………………….
………………………………….
- Giả sử trước đó X=10, Y=5. Sau khi thực hiện các lệnh trên giá trị của X=?, Y=?
Hoạt động nhóm
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
Yêu cầu:
1. Khai báo biến x và y là kiểu dữ liệu gì?
2. Viết các lệnh Pascal thể hiện:
nhập các giá trị x và y
in ra màn hình các giá trị x và y
hoán đổi giá trị x cho y và y cho x.
in lại ra màn hình các giá trị x và y
x,y kiểu nguyên
Readln(x); Readln(y);
writeln(x); writeln(y);
z:=x; x:=y; y:=z;
writeln(x); writeln(y);
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
3. Viết thành chương trình hoàn chỉnh
4. Thực hành trên máy tính (Ghi lại kết quả thực hành vào bảng sau)
Ví dụ cho x:=5; y:=7.Hoán đổi để x:=7; y:=5.Cho 1 biến trung gian là z, ta hoán đổi x, y cho nhau bằng cách:
z:=y { gán giá trị số 7 vào biến nhớ z }
y:=x { gán giá trị số 5 vào biến nhớ y }
x:=z { gán giá trị số 7 vào biến nhớ x }
x
y
z
(1)
(2)
(3)
Z:=X;
X:=Y;
Y:=Z;
(2)
Z:=Y;
Y:=X;
X:=Z;
Program hoan_doi;
Uses Crt;
Var X, Y : Integer;
Begin
Writeln( ‘ chuong trinh hoan doi gia tri’ );
Write( ‘Nhap x’ ); Readln(x);
Write( ‘Nhap y’ ); Readln(y);
Writeln( ‘x = ’ , x , ’y =’ , y);
Z:= X;
X:= Y;
Y:= Z;
Writeln( ‘x = ’ , x , ’y =’ , y);
Readln
End.
, Z
5. Mở lại chương trình HoanDoi trên
thay đoạn lệnh z:=x;
x:=y;
y:=z;
bằng các lệnh: x:=x+y;
y:=x-y;
x:=x-y;
Chạy chương trình, kiểm tra kết quả và nhận xét.
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
Program hoan_doi;
Uses Crt;
Var x, y : Integer;
Begin
Writeln( ‘ chuong trinh hoan doi gia tri’ );
Write( ‘Nhap x’ ); Readln(x);
Write( ‘Nhap y’ ); Readln(y);
Writeln( ‘x = ’ , x , ‘y =’ , y);
x:=x+y;
y:=x-y;
x:=x-y;
Writeln( ‘x = ’ , x , ’y =’ , y);
Readln
End.
BÀI TẬP:
A+ 3
B+ 4
C+1
D+2
Trong Pascal, cú pháp để khai báo biến là:
Var = : ;
Var;
Var : ;
Danh sách các biến là một hoặc nhiều tên biến, các tên biến được viết cách nhau bởi:
Dấu chấm phẩy (;)
Dấu phẩy (,)
Dấu hai chấm (:)
Dấu chấm (.)
Trong Pascal, cú pháp để nhập dữ liệu từ bàn phím là:
write();
hay writeln();
write();
hay readln();
read();
hay readln();
read();
hay writeln();
Nếu biến X được khai báo bởi cú pháp Var X:integer; khi chạy chương trình giả sử ta nhập giá trị cho X là 35280 và enter, thì chương trình sẽ:
Thông báo lỗi
Dừng lại, đợi nhập dữ liệu
Thực hiện câu lệnh tiếp theo
Trong Pascal, nội dung chú thích đặt trong cặp dấu:
[ và ] hoặc (* và *)
{ và } hoặc [* và *]
{ và } hoặc (* và *)
{ và } hoặc [ và ]
Các chú thích được dùng để:
Thông báo lỗi của chương trình
Làm cho chương trình dễ đọc, dễ hiểu
Làm cho chương trình đẹp hơn
Bỏ qua 1 câu lệnh nào đó
Khai báo hằng nào trong các khai báo sau là đúng?
Const dt= real;
Var diem= 10;
Cont truong= ‘TQB’;
Const phi= 1000;
Cú pháp “lệnh gán” để gán giá trị trong Pascal là gì?
x:= 100;
:= ;
:= ;
:= tên biến;
Khai báo biến nào trong các khai báo sau là đúng?
Var dt: real;
Var diem: interger;
Var R= 512;
Var tb= real;
Lệnh nhập giá trị cho biến X trong Pascal là gì?
Write(X);
Nhap(X);
Readln(X);
Writeln(‘X= ‘,X);
Cú pháp khai báo hằng trong Pascal là gì?
Var=
Const: ;
Const pi= 3.14;
Const = ;
Lệnh nhập giá trị cho biến X trong Pascal là gì?
Write(X);
Nhap(X);
Readln(X);
Writeln(‘X= ‘,X);
Tính diện tích S của hình tròn có bán kính R.
(R là số tự nhiên được nhập vào từ bàn phím).
t:=a/b; (với a, b là 2 số nguyên)
Bài tập. Hãy cho biết kiểu dữ liệu của các biến
cần khai báo dưới đây:
c:= a mod b; d:= a div b; (với a, b là 2 số nguyên)
Var R: integer; S: real;
Var a, b, c, d: integer;
Var a, b: integer; t: real;
X:= ‘Ha Noi’;
Var X: string;
Bài tập: Giả sử A được khai báo là biến với kiểu dữ liệu số thực, X là biến với kiểu dữ liệu xâu. Các phép gán sau đây có hợp lệ không?
۷
۷
۷
۷
Cú pháp khai báo biến trong pascal:
Var:;
trong đó danh sách biến gồm tên các biến được cách nhau bởi dấu phẩy
Cú pháp lệnh gán giá trị cho biến trong pascal:
:= ;
Lệnh Read() ; hay Readln();
Trong đó danh sách biến gồm tên các biến đã khai báo, được sử dụng để nhập dữ liệu từ bàn phím. Sau khi nhập xong nhấn Enter để xác nhận. Nếu giá trị nhập vào vượt quá phạm vị của biến, kết quả tính toán sẽ sai.
4. Nội dung chú thích đặt trong cặp dấu { và } hoặc (* và *). Chú thích bị bỏ quả khi dịch và chạy chương trình. Các chú thích được dùng để làm cho chương trình dễ đọc, dễ hiểu
TỔNG KẾT
BÀI TẬP VỀ NHÀ
Viết chương trình nhập vào ba số nguyên a, b và c từ bàn phím. Tính và in ra màn hình:
a. X= a + b + c.
b. Y= (a + b)2 / c.
c. Chạy lại chương trình và nhập giá trị cho a là 10.5, quan sát kết quả và nêu nhận xét.
Var a, b, c, X: integer;
Begin
write(‘a= ‘); readln(a);
write(‘b= ‘); readln(b);
write(‘c= ‘); readln(c);
X:= a + b + c;
Writeln(‘X = ‘,X);
Readln
End.
Yêu cầu:
Các biến cần khai báo và kiểu dữ liệu phù hợp?
biến n kiểu số nguyên; biến S kiểu số thực
2. Trong chương trình cần thực hiện những công việc chính nào?
B1: Nhập giá trị cho biến n: Readln(n);
B2: S:=n*(n+1)/2;
B3: In ra màn hình giá trị của S: writeln(S);
BÀI TẬP
Em hãy viết một chương trình Pascal hoàn chỉnh để tính diện tích và chu vi một hình chữ nhật (HCN) , trong đó số đo hai cạnh được nhập vào từ bàn phím.
Khai báo các biến a và b để lưu chiều rộng và chiều dài của HCN được nhập vào từ bàn phím.
Khai báo các biến CV và S để lưu chu vi và diện tích HCN.
Thân chương trình gồm các lệnh
Nhập giá trị của các kích thước a và b
Tính chu vi CV và diện tích S của hình chữ nhật đó
In ra màn hình giá trị của các biến CV và S đã tính được ở trên
Lưu chương trình với tên tệp tin là HCNHAT.PAS
NỘI DUNG TRỌNG TÂM
Cách sử dụng biến và hằng trong chương trình
Các thành phần chính của chủ đề
2. Khai báo biến
1. Biến là công cụ trong lập trình
4. Hằng
3. Sử dụng biến trong chương trình
Trong toán học em đã biết biến số (gọi tắt là biến) là một đại lượng có thể nhận các giá trị khác nhau và thường được sử dụng trong các biểu diễn các hàm số, các biểu thức.
Ví dụ: Bài toán tính chu vi và diện tích hình tròn với bán kính R = 3 ?
Bán kính hình tròn R có thể được xem là một biến trong bài toán trên
Kết quả tính toán như sau:
Chu vi hình tròn : 2. Pi. R = 2. 3,14 . 3
Diện tích hình tròn : Pi. R2 = 3,14. 3. 3
-Trong lập trình, biến cũng đóng vai trò vô cùng quan trọng.
-Ta có thể viết chương trình Pascal cho phép người sử dụng nhập từ bàn phím bán kính của hình tròn, sau đó tính toán chu vi và diện tích hình tròn, thông báo quả ra màn hình như sau :
Kết quả khi chạy chương trình
Nhập số 5 và Enter
Kết quả
R trong chương trình trên dùng để lưu trữ dữ liệu nhập vào. Trong ngôn ngữ lập trình, R được gọi là biến.
Hoạt động cơ bản của máy tính là xử lí dữ liệu. Trước khi được máy tính xử lí, dữ liệu cần được lưu trong bộ nhớ của máy tính. Ví dụ tính tổng hai số:
1. Biến là công cụ trong lập trình :
20
15
5
Writeln (15+5);
in ra màn hình kết quả số 20
Để chương trình luôn biết chính xác dữ liệu cần được lưu ở vị trí nào trong bộ nhớ, các ngôn ngữ lập trình cung cấp một công cụ lập trình rất quan trọng. Đó là biến nhớ, hay gọi ngắn gọn là biến
1. Biến là công cụ trong lập trình :
20 (= X+Y)
X
Y
15
5
Ta có thể sử dụng hai biến X và Y để lưu giá trị của hai số 15 và 5. Khi đó lệnh: Writeln (x+y); -> kết quả là 20.
Trong lập trình, biến được dùng để lưu trữ dữ liệu và dữ liệu được biến lưu trữ có thể thay đổi trong khi thực hiện chương trình.
Dữ liệu do biến lưu trữ được gọi là giá trị của biến.
Em hãy thảo luận và trình bày về biến trong ngôn ngữ lập trình Pascal
1. Biến là công cụ trong lập trình :
5 là giá trị của biến
x
biến x
5
Ví dụ: Cần tính giá trị của các biểu thức
1. Biến là công cụ trong lập trình :
Ta có thể thực hiện như sau:
y = x / 3
z = x / 5
x =100+50
Em hãy nhớ lại cấu trúc chương trình gồm mấy phần
2. Khai báo biến:
x
Program Phep_Tru;
Var so1,so2,hieu :Integer;
Begin
Write(`-Nhap so thu nhat = ‘); Readln(so1);
Write(`-Nhap so thu hai = ‘); Readln(so2);
hieu:= so1-so2;
Writeln(`-------------------------------`);
Writeln(`so1:4, ` - `,so2:4, ` = `,hieu:5);
Readln
End.
Phần khai báo
Biến cần được khai báo ở đâu?
Khai báo biến gồm những gì?
Trình bày cú pháp khai báo biến?
2. Khai báo biến:
z
Các biến dùng trong chương trình cần phải được khai báo ngay trong phần khai báo của chương trình.
Việc khai báo biến gồm:
*Khai báo tên biến
*Khai báo kiểu dữ liệu của biến.
Tên biến phải tuân theo quy tắc đặt tên của ngôn ngữ lập trình.
x
y
2. Khai báo biến:
a
Cú pháp khai báo biến:
Var
-Var: là từ khoá dùng để khai báo biến.
-Danh sách tên biến: do người lập trình đặt theo qui tắc, viết cách nhau bởi dấu phẩy “,”.
-Kiểu dữ liệu: Là kiểu dữ liệu của biến sẽ nhận trong chương trình (string, integer, char, real, boolean,…).
Ví dụ: Var a,b: integer;
S, dien_tich:real;
thong_bao:string;
b
s
Thong_bao
Dien_tich
2. Khai báo biến:
Ví dụ : Khai báo biến trong Pascal:
Var m, n : integer ; s, dientich : real ; thong_bao, ten : string ;
Từ khoá
Biến kiểu số nguyên (Integer)
Biến kiểu số thực (Real)
Biến kiểu xâu (string)
2. Khai báo biến:
Bài tập :
Đánh dấu ۷ vào lựa chọn đúng hoặc sai :
۷
۷
۷
۷
۷
۷
۷
2. Khai báo biến:
Bài tập: Hãy cho biết kiểu dữ liệu của các biến cần khai báo dùng để viết chương trình sau đây:
Viết chương trình nhập vào họ tên, lớp, chiều cao, cân nặng của học sinh và in ra màn hình.
Các biến hoten và lop là kiểu chuỗi;
Biến chieucao, cannang : kiểu số thực;
Var hoten, lop : string ;
chieucao, cannang : real ;
Khai báo biến
Các thành phần chính của chủ đề
2. Khai báo biến
1. Biến là công cụ trong lập trình
4. Hằng
3. Sử dụng biến trong chương trình
3. Sử dụng biến trong chương trình:
z
Sau khi khai báo, ta có thể sử dụng các biến trong các câu lệnh để tính toán hoặc xử lí chúng như với các giá trị dữ liệu (số, kí tự hay xâu,…). Điều phải lưu ý là để có kết quả tính toán đúng mục tiêu của chương trình, cần phải gán các giá trị dữ liệu thích hợp cho các biến
x
y
Thao tác có thể thực hiện với các biến là gì?
3. Sử dụng biến trong chương trình:
Các thao tác có thể thực hiện với biến là:
-Gán giá trị cho biến
-Tính toán với giá trị của biến.
Kiểu dữ liệu của giá trị được gán cho biến phải trùng với kiểu của biến.
Ví dụ:
3. Sử dụng biến trong chương trình:
x -a/b (Biến x nhận giá trị -a/b)
x y (Biến x được gán giá trị của biến y)
i i + 1 (Biến i nhận giá trị bằng giá trị hiện thời của i cộng thêm 5
*Câu lệnh gán giá trị trong các ngôn ngữ lập trình có dạng:
Tên biến Biểu thức cần gán giá trị cho biến
Trong đó dấu ← biểu thị phép gán
Ví dụ:
3. Sử dụng biến trong chương trình:
Khai báo biến
Gán giá trị cho biến
Gán giá trị cho biến
3. Sử dụng biến trong chương trình:
Kí hiệu phép gán trong Pascal là dấu :=
Trong Pascal, lệnh để gán giá trị cho biến khi nhập từ bàn phím:
Readln(
Read(
Ví dụ: Gán giá trị cho biến x:
X := 12;
X := y;
X := (a+b)/2;
X := x+1;
Readln(x);
Read(x);
3. Sử dụng biến trong chương trình:
Bài tập:
Gán giá trị số 12 vào biến X.
Gán giá trị đã lưu trong biến Y vào biến X.
Tính trung bình cộng hai giá trị trong hai biến a và b. Kết quả gán vào biến X.
Tăng giá trị của biến X lên 1 đơn vị, kết quả gán trở lại biến X.
Bài tập: Các phép gán sau có hợp lệ không? Giả xử biến A được khai báo kiểu dữ liệu số thực, biến X là kiểu dữ liệu xâu.
۷
۷
۷
۷
۷
Bài tập vận dụng
Chương trình nhập vào chiều dài và chiều rộng của hình chữ nhật là 2 số nguyên. Tính và in ra màn hình chu vi và diện tích của hình chữ nhật đó.(Cho d = 5, r = 3)
Write(‘Nhap chieu dai, chieu rong HCN’);
Readln(d, r);
4. Hằng:
Ví dụ: Chương trình tính diện tích hình tròn có bán kính r như hình bên, các em thấy ngoài công cụ biến là r,s, trong ngôn ngữ lập trình còn có công cụ khác là hằng số pi=3.14
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
4. Hằng:
Tương tự như biến, hằng cũng là một công cụ lưu trữ dữ liệu. Khác với biến, hằng là một đại lượng có giá trị không đổi trong suốt chương trình.
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
Em hãy nêu cú pháp khai báo hằng trong chương trình?
4. Hằng:
Trong Pascal, hằng được khai báo theo cú pháp sau:
Const
Trong đó : Const là từ khóa để khai báo hằng .
Ví dụ :
Từ khoá
Tên hằng
Giá trị của hằng
4. Hằng:
Hằng là đại lượng để lưu trữ dữ liệu và hằng có giá trị không đổi trong suốt quá trình thực hiện chương trình.
Để sử dụng hằng ta phải khai báo và gán giá trị.
Program DTHTron;
Uses crt;
Var r, s: real;
Const pi = 3.14;
Begin
Writeln(‘Nhap ban kinh hinh tron r: ’); readln(r);
S:= r*r*pi;
Writeln(‘Dien tich hinh tron la ‘, s:8:2 );
End.
Bài tập : Với khai báo :
Các phép gán sau đúng hay sai ?
Const pi = 3.14;
Bankinh = 2;
Var Chuvi: Real;
۷
۷
۷
Thừa dấu bằng
Thừa dấu hai chấm
Thiếu dấu hai chấm
Thiếu dấu chấm phấy
Thiếu dấu chấm
Var x,y,z :=integer; (1)
Const a:= 5; (2)
Begin (3)
x=45; (4)
y:=30 (5)
z:=(x+y)/5; (6)
Writeln(z); (7)
Readln (8)
End (9)
Đúng
Đúng
Đúng
Đúng
Bài tập: Hãy chỉ ra lỗi nếu có trong chương trình sau:
Bài tập : Đánh dấu ۷ vào lựa chọn đúng hoặc sai :
۷
۷
۷
۷
۷
Giả sử A được khai báo là biến với kiểu dữ liệu số thực, X là biến với kiểu dữ liệu xâu, R là hằng được khai báo R=3. Các phép gán sau đây có hợp lệ không ?
Biến và hằng là các đại lượng được đặt tên dùng để lưu trữ dữ liệu. Giá trị của biến có thể thay đổi, còn giá trị của hằng được giữ nguyên trong suốt quá trình thực hiện chương trình.
Biến và hằng phải được khai báo trước khi sử dụng.
Ghi nhớ
CHAO CAC BAN
Bài tập và thực hành
Bài tập 1. Viết chương trình Pascal có khai báo và sử dụng biến:
Bài toán: Một cửa hàng cung cấp dịch vụ bán hàng thanh toán tại nhà. Khách hàng chỉ cần đăng kí số lượng mặt hàng cần mua, nhân viên của hàng sẽ trả hàng và nhận tiền thanh toán tại nhà khách hàng. Ngoài trị giá hàng hóa, khách hàng còn phải trả thêm phí dịch vụ. Hãy viết chương trình Pascal để tính tiền thanh toán trong trường hợp khách hàng chỉ mua một mặt hàng duy nhất.
Công thức gợi ý:
Tiền thanh toán = Đơn giá x số lượng + phí dịch vụ
Bài tập và thực hành
a./ Khởi động Pascal. Gõ chương trình sau và tìm hiểu ý nghĩa của từng câu lệnh trong chương trình.
Program Tinh_tien;
Uses crt;
Var Soluong: integer; dongia, thanhtien: real; thongbao:string;
Const phi=10000;
Begin
clrscr; thongbao:= `Tong so tien phai thanh toan : ‘;
{Nhap don gia va so luong hang}
write(`Don gia = `); readln(dongia);
write(`So luong = `); readln(soluong);
thanhtien:= soluong * dongia + phi; (*In ra so tien phai tra*)
Writeln(Thongbao, thanhtien:10:2); readln
End.
Program Tinh_Tien;
Uses Crt;
Var soluong: integer;
dongia, thanhtien: real;
thongbao: String;
Const phi= 10000;
Begin
clrscr;
thongbao:= ‘Tong so tien phai thanh toan: ’;
{nhap don gia va so luong hang}
write(‘don gia= ‘); readln(dongia);
write(‘so luong= ‘); readln(soluong);
thanhtien:= soluong * dongia + phi;
(* In ra so tien phai tra *);
writeln(thongbao, thanhtien:10:2);
readln
End.
Khai báo tên chương trình
Khai báo sử dụng thư viện CRT
Khai báo các biến thuộc kiểu số nguyên, số thực và xâu kí tự
Khai báo hằng Phí
Bắt đầu thân chương trình
Lệnh xóa màn hình
Gán giá trị cho biến thongbao
Dòng chú thích
nhập giá trị cho biến dongia
nhập giá trị cho biến soluong
Gán giá trị cho biến thanhtien
Dòng chú thích
Xuất giá trị biến thanhtien
Dừng lại chờ bấm Enter
Kết thúc chương trình
Program Tinh_Tien;
Uses Crt;
Var soluong: integer;
dongia, thanhtien: real;
thongbao: String;
Const phi= 10000;
Begin
clrscr;
thongbao:= ‘Tong so tien phai thanh toan: ’;
{nhap don gia va so luong hang}
write(‘don gia= ‘); readln(dongia);
write(‘so luong= ‘); readln(soluong);
thanhtien:= soluong * dongia + phi;
(* In ra so tien phai tra *);
writeln(thongbao, thanhtien:10:2);
readln
End.
Khai báo tên chương trình
Khai báo sử dụng thư viện CRT
Khai báo các biến thuộc kiểu số nguyên, số thực và xâu kí tự
Khai báo hằng Phí
Bắt đầu thân chương trình
Lệnh xóa màn hình
Gán giá trị cho biến thongbao
Dòng chú thích
nhập giá trị cho biến dongia
nhập giá trị cho biến soluong
Gán giá trị cho biến thanhtien
Dòng chú thích
Xuất giá trị biến thanhtien
Dừng lại chờ bấm Enter
Kết thúc chương trình
Bài tập và thực hành
b./Lưu chương trình với tên TINHTIEN.PAS. Dịch và chỉnh sửa các lỗi gõ, nếu có.
c./ Chạy chương trình với các bộ dữ liệu (đơn giá và số lượng) như sau (1000, 20),
(3500, 200), (18500, 123). Kiểm tra tính đúng của các kết quả in ra.
d./ Chạy chương trình với bộ dữ liệu (1, 35000). Quan sát kết quả nhận được. Hãy thử đoán lý do tại sao chương trình cho kết quả sai.
Bài tập và thực hành
ĐỐ VUI
Cốc nước X màu xanh, cốc nước Y màu đỏ. Làm cách nào để tráo đổi cốc X có nước màu đỏ và cốc Y có nước màu xanh?
(Hai cốc có thể tích như nhau)
X
Y
Y
X
Quá trình thay đổi cốc nước
X
Y
Z
x
Z
Quá trình thay đổi cốc nước
X
Y
Z
x
Z
x
y
Quá trình thay đổi cốc nước
Nước của 2 cốc đã được hoán đổi
X
Z
Y
x
Z
x
y
Z
y
Chuyển các lệnh gán trên thành câu lệnh gán trong Pascal
………………………………….
………………………………….
………………………………….
- Giả sử trước đó X=10, Y=5. Sau khi thực hiện các lệnh trên giá trị của X=?, Y=?
Hoạt động nhóm
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
Yêu cầu:
1. Khai báo biến x và y là kiểu dữ liệu gì?
2. Viết các lệnh Pascal thể hiện:
nhập các giá trị x và y
in ra màn hình các giá trị x và y
hoán đổi giá trị x cho y và y cho x.
in lại ra màn hình các giá trị x và y
x,y kiểu nguyên
Readln(x); Readln(y);
writeln(x); writeln(y);
z:=x; x:=y; y:=z;
writeln(x); writeln(y);
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
3. Viết thành chương trình hoàn chỉnh
4. Thực hành trên máy tính (Ghi lại kết quả thực hành vào bảng sau)
Ví dụ cho x:=5; y:=7.Hoán đổi để x:=7; y:=5.Cho 1 biến trung gian là z, ta hoán đổi x, y cho nhau bằng cách:
z:=y { gán giá trị số 7 vào biến nhớ z }
y:=x { gán giá trị số 5 vào biến nhớ y }
x:=z { gán giá trị số 7 vào biến nhớ x }
x
y
z
(1)
(2)
(3)
Z:=X;
X:=Y;
Y:=Z;
(2)
Z:=Y;
Y:=X;
X:=Z;
Program hoan_doi;
Uses Crt;
Var X, Y : Integer;
Begin
Writeln( ‘ chuong trinh hoan doi gia tri’ );
Write( ‘Nhap x’ ); Readln(x);
Write( ‘Nhap y’ ); Readln(y);
Writeln( ‘x = ’ , x , ’y =’ , y);
Z:= X;
X:= Y;
Y:= Z;
Writeln( ‘x = ’ , x , ’y =’ , y);
Readln
End.
, Z
5. Mở lại chương trình HoanDoi trên
thay đoạn lệnh z:=x;
x:=y;
y:=z;
bằng các lệnh: x:=x+y;
y:=x-y;
x:=x-y;
Chạy chương trình, kiểm tra kết quả và nhận xét.
Bài tập 2: Viết chương trình nhập các số nguyên x và y, in giá trị của x và y ra màn hình. Sau đó hoán đổi các giá trị của x và y rồi in lại ra màn hình giá trị của x và y.
Program hoan_doi;
Uses Crt;
Var x, y : Integer;
Begin
Writeln( ‘ chuong trinh hoan doi gia tri’ );
Write( ‘Nhap x’ ); Readln(x);
Write( ‘Nhap y’ ); Readln(y);
Writeln( ‘x = ’ , x , ‘y =’ , y);
x:=x+y;
y:=x-y;
x:=x-y;
Writeln( ‘x = ’ , x , ’y =’ , y);
Readln
End.
BÀI TẬP:
A+ 3
B+ 4
C+1
D+2
Trong Pascal, cú pháp để khai báo biến là:
Var
Var
Var
Danh sách các biến là một hoặc nhiều tên biến, các tên biến được viết cách nhau bởi:
Dấu chấm phẩy (;)
Dấu phẩy (,)
Dấu hai chấm (:)
Dấu chấm (.)
Trong Pascal, cú pháp để nhập dữ liệu từ bàn phím là:
write(
hay writeln(
write(
hay readln(
read(
hay readln(
read(
hay writeln(
Nếu biến X được khai báo bởi cú pháp Var X:integer; khi chạy chương trình giả sử ta nhập giá trị cho X là 35280 và enter, thì chương trình sẽ:
Thông báo lỗi
Dừng lại, đợi nhập dữ liệu
Thực hiện câu lệnh tiếp theo
Trong Pascal, nội dung chú thích đặt trong cặp dấu:
[ và ] hoặc (* và *)
{ và } hoặc [* và *]
{ và } hoặc (* và *)
{ và } hoặc [ và ]
Các chú thích được dùng để:
Thông báo lỗi của chương trình
Làm cho chương trình dễ đọc, dễ hiểu
Làm cho chương trình đẹp hơn
Bỏ qua 1 câu lệnh nào đó
Khai báo hằng nào trong các khai báo sau là đúng?
Const dt= real;
Var diem= 10;
Cont truong= ‘TQB’;
Const phi= 1000;
Cú pháp “lệnh gán” để gán giá trị trong Pascal là gì?
x:= 100;
Khai báo biến nào trong các khai báo sau là đúng?
Var dt: real;
Var diem: interger;
Var R= 512;
Var tb= real;
Lệnh nhập giá trị cho biến X trong Pascal là gì?
Write(X);
Nhap(X);
Readln(X);
Writeln(‘X= ‘,X);
Cú pháp khai báo hằng trong Pascal là gì?
Var
Const
Const pi= 3.14;
Const
Lệnh nhập giá trị cho biến X trong Pascal là gì?
Write(X);
Nhap(X);
Readln(X);
Writeln(‘X= ‘,X);
Tính diện tích S của hình tròn có bán kính R.
(R là số tự nhiên được nhập vào từ bàn phím).
t:=a/b; (với a, b là 2 số nguyên)
Bài tập. Hãy cho biết kiểu dữ liệu của các biến
cần khai báo dưới đây:
c:= a mod b; d:= a div b; (với a, b là 2 số nguyên)
Var R: integer; S: real;
Var a, b, c, d: integer;
Var a, b: integer; t: real;
X:= ‘Ha Noi’;
Var X: string;
Bài tập: Giả sử A được khai báo là biến với kiểu dữ liệu số thực, X là biến với kiểu dữ liệu xâu. Các phép gán sau đây có hợp lệ không?
۷
۷
۷
۷
Cú pháp khai báo biến trong pascal:
Var
trong đó danh sách biến gồm tên các biến được cách nhau bởi dấu phẩy
Cú pháp lệnh gán giá trị cho biến trong pascal:
Lệnh Read(
Trong đó danh sách biến gồm tên các biến đã khai báo, được sử dụng để nhập dữ liệu từ bàn phím. Sau khi nhập xong nhấn Enter để xác nhận. Nếu giá trị nhập vào vượt quá phạm vị của biến, kết quả tính toán sẽ sai.
4. Nội dung chú thích đặt trong cặp dấu { và } hoặc (* và *). Chú thích bị bỏ quả khi dịch và chạy chương trình. Các chú thích được dùng để làm cho chương trình dễ đọc, dễ hiểu
TỔNG KẾT
BÀI TẬP VỀ NHÀ
Viết chương trình nhập vào ba số nguyên a, b và c từ bàn phím. Tính và in ra màn hình:
a. X= a + b + c.
b. Y= (a + b)2 / c.
c. Chạy lại chương trình và nhập giá trị cho a là 10.5, quan sát kết quả và nêu nhận xét.
Var a, b, c, X: integer;
Begin
write(‘a= ‘); readln(a);
write(‘b= ‘); readln(b);
write(‘c= ‘); readln(c);
X:= a + b + c;
Writeln(‘X = ‘,X);
Readln
End.
Yêu cầu:
Các biến cần khai báo và kiểu dữ liệu phù hợp?
biến n kiểu số nguyên; biến S kiểu số thực
2. Trong chương trình cần thực hiện những công việc chính nào?
B1: Nhập giá trị cho biến n: Readln(n);
B2: S:=n*(n+1)/2;
B3: In ra màn hình giá trị của S: writeln(S);
BÀI TẬP
Em hãy viết một chương trình Pascal hoàn chỉnh để tính diện tích và chu vi một hình chữ nhật (HCN) , trong đó số đo hai cạnh được nhập vào từ bàn phím.
Khai báo các biến a và b để lưu chiều rộng và chiều dài của HCN được nhập vào từ bàn phím.
Khai báo các biến CV và S để lưu chu vi và diện tích HCN.
Thân chương trình gồm các lệnh
Nhập giá trị của các kích thước a và b
Tính chu vi CV và diện tích S của hình chữ nhật đó
In ra màn hình giá trị của các biến CV và S đã tính được ở trên
Lưu chương trình với tên tệp tin là HCNHAT.PAS
 
↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT ↓








Các ý kiến mới nhất