MỞ ĐẦU
CĂN BẢN
LỆNH RẺ NHÁNH
VÒNG LẶP
NÂNG CAO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Lệnh If .. Then trong Pascal

Trong bài này chúng ta sẽ học lệnh rẻ nhánh if .. then trong Pascal, đây là lệnh dùng để đổi hướng chương trình dựa vào một điều kiện nào đó. Kể từ bài lệnh if này ta sẽ bắt đầu học những kiến thức nâng cao hơn.

Trước khi học bài này bạn cần phải hiểu được khái niệm về giá trị của biểu thức. Chúng ta có hai giá trị đó là đúng (TRUE) - sai (FALSE), và mỗi biểu thức đặt trong điều kiện if phải trả về một trong hai giá trị này, vì vậy ta phải sử dụng các toán tử mà mình đã giới thiệu ở bài trước.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

I. Lệnh if .. then trong Pascal

Giả sử bạn cần viết một chương trình tính tổng của hai số được nhập vào từ bàn phím, sau đó in ra màn hình tổng đó là số chẵn hay số lẻ. Lúc này bạn phải sử dụng lệnh if.

Cú pháp như sau:

if (condition) then
begin
	// statement
end;

Trong đó:

  • condition là điều kiện xảy ra
  • statement là đoạn code sẽ được chạy nếu condition có giá trị TRUE, ngược lại nếu giá trị FALSE thì sẽ bỏ qua.

Ví dụ: Viết chương trình kiểm tra một số có phải là số chẵn hay không

program IfThenPascal;

var
	a : integer;
begin

	writeln('HOC PASCAL TAI FREETUTS.NET');
	writeln('Nhap vao so can kiem tra');
	readln(a);
	
	if ( a mod 2 = 0 ) then
	begin
		writeln(a, ' la so chan');
	end;
	
	readln;
end.

Chạy chương trình bnạ sẽ thu được kết quả như sau:

if then trong pascal PNG

Lưu ý: Nếu bên trong begin và end chỉ có một lệnh duy nhất thì ta có thể bỏ begin và end. Như ví dụ trên ta có thể viết lại như sau:

begin

	writeln('HOC PASCAL TAI FREETUTS.NET');
	writeln('Nhap vao so can kiem tra');
	readln(a);
	
	if ( a mod 2 = 0 ) then
		writeln(a, ' la so chan');
	
	readln;
end.

II. Lệnh if .. then .. else trong Pascal

Ở lệnh if .. then ta chỉ cho chương trình chạy được một nhánh duy nhất, nhưng thực tế thì ta cần rẻ rất nhiều nhánh nên lúc này phải sử dụng lệnh if .. then .. else.

Giả sử mình cần viết một chương trình kiểm tra một số xem nó số chẵn hay số lẻ, sau đó in ra màn hình là số chẵn hoặc số lẻ.

Để làm bài này thì trước tiên hãy tham khảo cấu trúc ngữ pháp của lệnh if .. then .. else đã nhé.

if (condiiton) then
    begin
	// statement1
    end
else
    begin
	// statement2
    end;

Bạn cần chú ý ở khối lệnh begin .. end bên trong lệnh then không có dấu chấm phẩy nhé.

Ok, bây giờ mình sẽ giải bài toán trên như sau:

program IfThenPascal;

var
	a : integer;
begin

	writeln('HOC PASCAL TAI FREETUTS.NET');
	writeln('Nhap vao so can kiem tra');
	readln(a);
	
	if ( a mod 2 = 0 ) then
		begin
			writeln(a, ' la so chan');
		end
	else 
		begin
			writeln(a, ' la so le');
		end;
	
	readln;
end.

Kết quả:

if then else trong pascal PNG

Ở bài giải trên mình đã sử dụng khối lênh begin và end, tuy nhiên điều đó là dư thừa bởi đoạn code bên trong chỉ có một lệnh duy nhất. Ta có thể viết lại như sau:

if ( a mod 2 = 0 ) then
    writeln(a, ' la so chan');
else
    writeln(a, ' la so le');

III. Lệnh if .. then .. else lồng nhau trong Pascal

Lệnh lồng nhau tức là bên trong một lệnh có chứa nhiêu lệnh con. Điều này có nghĩa trong chương trình có sử dụng các lệnh if .. then, và bên trong đoạn code xử lý lại chứ thêm những đoạn code if .. then khác, ta gọi là lồng nhau.

if (condition1) then
	if (condition2) then
		// statement

Nghe có ve khó phải không nào? Thực ra nó cũng rất dễ nếu như bạn biên dịch tuân theo thứ tự từ trên xuống và từ trái qua phải. Nếu điều kiện thỏa thì chạy code bên trong điều kiện đó, cứ như vậy cho đến hết tất cả các lệnh if lồng nhau.

Ví dụ: Viết chương trình kiểm tra một số, nếu là số chẵn thì kiểm tra số đó lớn hơn 100 không, nếu số lẻ thì kiểm số đó lớn hơn 20 không.

program IfThenPascal;

var
	a : integer;
begin

	writeln('HOC PASCAL TAI FREETUTS.NET');
	writeln('Nhap vao so can kiem tra');
	readln(a);
	
	if ( a mod 2 = 0 ) then
		begin
			writeln(a, ' la so chan');
			if (a > 100) then
				writeln(a, ' lon hon 100');
		end
	else 
		begin
			writeln(a, ' la so le');
			if (a > 20) then
				writeln(a, ' lon hon 20');
		end;
	readln;
end.

Chạy lên và nhập số 25 thì ta có được kết quả sau:

if then long nhau pascal PNG

Trên là những kiến thức cơ bản về cách sử dụng lệnh if then trong Pascal, hy vọng qua bài này bạn sẽ hiểu được thế nào là lệnh rẻ nhánh, để từ đó có thể học thêm những lệnh khác.

Cùng chuyên mục:

Tạo function trong Pascal

Tạo function trong Pascal

Trong bài này ta sẽ học đến một phần rất hấp dẫn, đó là cách…

Lệnh Goto trong Pascal

Lệnh Goto trong Pascal

Trong bài này mình sẽ giới thiệu đến các bạn lệnh goto trong Pascal, đây…

Lệnh Continue trong Pascal

Lệnh Continue trong Pascal

Trong bài này chúng ta sẽ tìm hiểu lệnh continue trong Pascal, đây là lệnh…

Lệnh Break trong Pascal

Lệnh Break trong Pascal

Trong bài này mình sẽ tìm hiểu lệnh dùng để dừng vòng lặp ngay lập…

Vòng lặp Repeat .. Until trong Pascal

Vòng lặp Repeat .. Until trong Pascal

Trong bài này mình sẽ giới thiệu vòng lặp repeat .. until trong Pascal, đây…

Vòng lặp while trong Pascal

Vòng lặp while trong Pascal

Trong bài này chúng ta sẽ tìm hiểu vòng lặp while trong Pascal, đây là…

Vòng lặp For .. Do trong Pascal

Vòng lặp For .. Do trong Pascal

Trong bài này chúng ta sẽ tìm hiểu về vòng lặp For .. Do trong…

Lệnh CASE trong Pascal

Lệnh CASE trong Pascal

Ở bài trước mình đã hướng dẫn sử dụng lệnh if dùng để rẻ nhánh…

Khối lệnh begin .. end trong Pascal

Khối lệnh begin .. end trong Pascal

Bạn có thắc mắc BEGIN và END trong chương trình Pascal là gì không nào?…

Lệnh read và readln trong Pascal

Lệnh read và readln trong Pascal

Trong bài này chúng ta sẽ tìm hiểu hai lệnh dùng để đọc dữ liệu,…

Các lệnh OUTPUT trong Pascal

Các lệnh OUTPUT trong Pascal

Những bài trước chúng ta đã sử dụng một lệnh rất nhiều đó là lệnh…

Toán tử trong Pascal

Toán tử trong Pascal

Trong bài này chúng ta sẽ tìm hiểu về một số toán tử thường dùng…

Tạo kiểu dữ liệu (Type) trong Pascal

Tạo kiểu dữ liệu (Type) trong Pascal

Trong bài này chúng ta sẽ học cách sử dụng từ khóa Type trong Pascal,…

Hằng (const) trong Pascal

Hằng (const) trong Pascal

Hằng số (Const) thực chất cũng là một loại biến bình thường, nhưng có điểm…

Biến và kiểu dữ liệu trong Pascal

Biến và kiểu dữ liệu trong Pascal

Bảng từ khóa của ngôn ngữ Pascal

Bảng từ khóa của ngôn ngữ Pascal

Bảng từ khóa trong Pascal là danh sách những từ khóa mà bạn không được…

Cấu trúc chương trình Pascal

Cấu trúc chương trình Pascal

Viết chương trình Hello World với Pascal

Viết chương trình Hello World với Pascal

fadsfs

Hello World là một chương trình thế kỉ mà hầu như ngôn ngữ lập trình…

Top