Cách viết chương trình pascal

     
Giới thiệu với hướng dẫn học tập Pascal

Pascal là tên gọi của một trong các ngôn từ lập trình cao cấp thông dụng. Ngôn ngữ lập trình sẵn Pascal được GS Niklaus Wirth nghỉ ngơi ngôi trường Ðại học Kỹ thuật Zurich (Thụy sĩ) xây đắp cùng công bố vào khoảng thời gian 1970. Niklaus Wirth khắc tên mang đến ngữ điệu này là Pascal nhằm tưởng niệm mang lại đơn vị Tân oán học và Triết học tập Pháp làm việc cố kỉnh kỷ 17 là Blaise Pascal, bạn đã phát minh sáng tạo ra một máy vi tính cơ khí đơn giản và dễ dàng thứ nhất của bé bạn.

Ngôn ngữ Pascal được sử dụng bây chừ có khá nhiều điểm biệt lập với chuẩn chỉnh Pascal nguyên ổn tdiệt của Giáo sư Wirth. Tùy theo non sông hoặc chủ thể đã cải cách và phát triển cho ra đời những chương trình biên dịch ngôn từ Pascal như:

·ISO PASCAL (International Standards Organization) của Châu Âu

·ANSI PASCAL (Aacsantangelo1907.comrican National Standards Institute) của Mỹ

·TURBO PASCAL của hãng BORLAND (Mỹ)

·IBM PASCAL của hãng sản xuất Microsoft (Mỹ)

·v.v...

Ðến ni, ngôn ngữ Pascal đã trở nên tân tiến đến phiên bạn dạng Turbo Pascal Version 7. Các diễn giải cùng ví dụ trong giáo trình này đa số sử dụng lịch trình Turbo Pascal 5.5 - 7.0, hiện đang rất được áp dụng thoáng rộng sinh sống toàn nước.

II. CÁC PHẦN TỬ CƠ BẢN CỦA NGÔN NGỮ PASCAL

1. Bộ ký kết tự

- Bộ 26 chữ Latin:

Chữ in: A, B, C, ..., X, Y, Z

Chữ thường:a, b, c, ..., x, y, z

- Bộ chữ số thập phân: 0, 1, 2, 3, ..., 8, 9

- Ký từ gạch nối dưới:_

- Các cam kết hiệu toán học:+, -, *, /, =, , (, ), <, }

2. Từkhóa

Là các từ riêng biệt của Pascal, gồm ngữ nghĩa đã có xác định, không được sử dụng nó vào những câu hỏi không giống hoặc viết tên new trùng với những từ khóa.

- Từ khóa chung:

PROGRAM, BEGIN, END, PROCEDURE, FUNCTION

- Từ khóa để khai báo:

CONST, VAR, TYPE, ARRAY, STRING, RECORD, SET, FILE, LABEL

- Từ khóa của lệnh lựa chọn:

IF ... THEN ... ELSE,CASE ... OF

- Từ khóa của lệnh lặp:

FOR... TO... DO,FOR... DOWNTO... DO,WHILE... DO,REPEAT... UNTIL

- Từ khóa điều khiển:

WITH,GOTO,EXIT, HALT

- Từ khóa toán thù tử:

AND, OR, NOT, IN, DIV, MOD

3. Tên chuẩn

Tên chuẩn là tên đã có khái niệm sẵn trong Pascal, cơ mà tín đồ ta có thể quan niệm lại nếu muốn. Trong Pascal ta bao gồm các thương hiệu chuẩn sau đây:

Boolean, Char, Integer, Word, Byte, Real, Text

False, True, MaxInt

Abs, Arctan, Chr, Cos, Sin, Eof, Eoln

Exp, Ln, Odd, Ord

Round, Trunc, Sqr, Pred, Succ

Dispose, New, Get, Put, Read, Readln,

Write, Writeln

Remix, Rewrite

4. Danh hiệu tự đặt

Trong Pascal để tại vị tên cho các biến đổi, hằng, hình dạng, chương trình bé ta cần sử dụng các thương hiệu (identifier). Danh hiệu của Pascal được bắt đầu bởi một chữ cái, tiếp nối rất có thể là các chữ cái, chữ số hay là dấu nối, ko được có khoảng white cùng độ lâu năm về tối đa được cho phép là 127.

Ví dụ 6.1:Sau đấy là những danh hiệu: x;S1;Delta;PT_bac_2

Pascal không phân biệt chữ thường cùng chữ hoa vào một thương hiệu.

Bạn đang xem: Cách viết chương trình pascal

lấy ví dụ như 6.2:aa với AA là một;XyZ_aBcvàxyZ_AbC là một trong

Lúc viết chương trình ta nên đặt những danh hiệu làm sao cho chúng tạo nên các ý nghĩa của đối tượng cơ mà chúng biểu lộ. Ðiều này góp họ viết lịch trình thuận lợi cùng người không giống cũng dễ nắm bắt nội dung lịch trình.

III. CẤU TRÚC MỘT CHƯƠNG TRÌNH PASCAL

*

Hình 6.1:Sơ vật dụng cấu trúc lịch trình Pascal

Ví dụ 6.3:

PROGRAM Hello; Dòng title

USESCrt; Lời gọi áp dụng những đơn vị chức năng công tác

VARNaacsantangelo1907.com : string; Khai báo đổi mới

PROCEDUREInput; cũng có thể có nhiều Procedure cùng Function

Begin

ClrScr; Lệnh xóa screen

Write(" ‘Hello ! What is your naacsantangelo1907.com ?... ‘");Readln(Naacsantangelo1907.com);

End;

BEGIN Thân công tác bao gồm

Input;

Writeln(" ‘Welcoacsantangelo1907.com to you,‘, Naacsantangelo1907.com") ;

Writeln(" ‘Today, we study PASCAL PROGRAMMING ... ‘");

Readln;

End.

Một công tác Pascal có những phần:

* Phần tiêu đề:

Phần này bước đầu bằng từ bỏ khóa Program rồi kế tiếp là tên gọi của chương trình cùng hoàn thành bởi vết chấm phẩy (;)

Tên công tác đề xuất được đặt theo như đúng qui cách của danh hiệu tự đặt. Phần tiêu đề bao gồm hay là không cũng được.

* Phần knhị báo dữ liệu:

Trước Khi thực hiện biến hóa làm sao buộc phải knhì báo biến kia, tức là khẳng định rõ xem biến hóa đó ở trong phong cách tài liệu nào. Một công tác Pascal hoàn toàn có thể gồm một số trong những hoặc toàn bộ những knhị báo dữ liệu sau:

CONST: knhị báo hằng

...

TYPE: định nghĩamẫu mã dữliệu mới

...

VAR: knhì báo những biến chuyển

...

* Phần khai báo lịch trình con:

Phần này biểu lộ một tổ lệnh được lấy tên tầm thường là một trong chương trình con để Khi thân lịch trình chủ yếu Điện thoại tư vấn mang đến thì cả team lệnh đó được thực hành.

Phần này rất có thể gồm hoặc ko tùy theo yêu cầu.

*Phần thân chương trình:

Phần thân lịch trình là phần quan trọng đặc biệt tuyệt nhất và bắt buộc phải tất cả, phần này luôn nằm trong lòng 2 keywords là BEGIN và END. Ở giữa là lệnh mà lại những công tác thiết yếu phải tiến hành. Sau trường đoản cú khóa END là lốt chnóng (.) để báo kết thúc lịch trình.

*Dấu chnóng phẩy (;):

Dấu ;dùng để làm phân làn các câu lệnh của Pascal và không thể không có được.

Xem thêm: Thành Ngữ Về Mùa Xuân - Câu Ca Dao Tục Ngữ Nói Về Mùa Xuân

*Lời chụ thích:

Lời chú thích dùng để làm chú thích cho những người thực hiện lịch trình nhớ nhằm thương lượng thông tin giữa tín đồ với fan, máy vi tính sẽ không xem xét mang lại lời chú giải này. Lời ghi chú nằm giữa ký hiệu: hoặc (**)

IV. CÁC KIỂU DỮ LIỆU CƠ SỞ: INTEGER, REAL, BOOLEAN, CHAR

1. Khái niệm

Dữ liệu (data) là tất cả mọi gì mà lại laptop phải xử trí.

Theo Niklaus Wirth:

CHƯƠNG TRÌNH = THUẬT TOÁN + CẤU TRÚC DỮ LIỆU

Một giao diện tài liệu (data type) là một nguyên lý về làm nên, kết cấu cùng quý giá của dữ liệu tương tự như biện pháp biểu diễn với giải pháp giải pháp xử lý dữ liệu.

Trong Pascal các mẫu mã dữ liệu bao gồm các loại sau:

- Kiểu đơn giản và dễ dàng (Simple type): bao gồm hình dạng số nguyên ổn (Integer), hình dạng số thực (Real), phong cách lô ghích (Boolean), hình dạng cam kết từ bỏ (Char).

- Kiểu gồm kết cấu (Structure type): bao hàm mảng (Array), chuỗi (String), phiên bản ghi (Record), tập thích hợp (Set), tập tin (File).

- Kiểu chỉ điểm (pointer):

Trong cmùi hương này, bọn họ chỉ xét các dạng hình tài liệu đơn giản.

2. Kiểu số nguim (Integer type)

a. Kiểu số nguyên nằm trong Z cất trong Turbo Pascal

Ðược có mang với các tự khóa sau:

TỪ KHÓA

SỐ BYTE

PHẠM VI

BYTE

1

0 .. 255

SHORTINT

1

- 128 .. 127

INTEGER

2

- 32768 .. + 32767

WORD

2

0 .. 65535

LONGINT

4

- 2147483648 .. 2147483647

b. Các phnghiền toán số học tập so với số nguyên

KÝ HIỆU

Ý NGHĨA

+

Cộng

-

Trừ

*

Nhân

/

Chia cho hiệu quả là số thực

DIV

Chia mang phần nguyên

MOD

Chia đem phần dư

SUCC (n)

n + 1

PRED (n)

n - 1

ODD (n)

TRUE trường hợp n lẻ

và FALSE nếu như n chẵn

3. Kiểu số thực (Real type)

Tại Turbo Pascal, đẳng cấp số thực thuộc tập thích hợp R chứa vào 6 bytes, được định nghĩa cùng với trường đoản cú khóa REAL:R =(<2.9 x 10-39 , 1.7 x 1038 >

Hay viết theo dạng số khoa học: R = ( <2.9E-39, 1.7E38>

Số thực có thể viết theo kiểu gồm vết chnóng thập phân thông thường hoặc viết theo kiểu thập phân tất cả phần nón cùng phần định trị.

Các phép toán số học tập cơ phiên bản +, -, * , /tất nhiên được sử dụng trong kiểu dáng real.

Bảng dưới đấy là những hàm số học tập mang đến đẳng cấp số thực:

KÝ HIỆU

Ý NGHĨA

ABS (x)

|x| : rước quý hiếm tuyệt đối của số x

SQR (x)

x2 : mang bình pmùi hương trị số x

SQRT(x)

*
: láúy càn báûc 2 cuía trë säú x

SIN(x)

sin (x) : đem sin của x

COS (x)

cos (x) : đem cos của x

ARCTAN (x)

arctang (x)

LN (x)

ln x : đem logarit nepe của trị x (e ( 2.71828)

EXPhường (x)

ex

TRUNC (x)

mang phần ngulặng lớn nhất không vượt thừa trị số x

ROUND (x)

làm cho tròn giá trị của x, lấy số nguim ngay gần x độc nhất vô nhị

4. Kiểu logic (Boolean)

Một tài liệu thuộc mẫu mã BOOLEAN là 1 trong những đại lượng được đựng trong 1 byte ở Turbo Pascal và chỉ còn rất có thể cảm nhận một trong những nhì gía trị xúc tích là TRUE (đúng) cùng FALSE (sai).

Qui ước:TRUE > FALSE

Các phnghiền tân oán trên phong cách Boolean:

A

B

NOT A

A AND B

A OR B

A XOR B

TRUE

TRUE

FALSE

TRUE

TRUE

FALSE

TRUE

FALSE

FALSE

FALSE

TRUE

TRUE

FALSE

TRUE

TRUE

FALSE

TRUE

TRUE

FALSE

FALSE

TRUE

FALSE

FALSE

FALSE

Nhận xét:

·Phxay AND (và) chỉ mang lại công dụng là TRUE Khi cả hai tân oán hạng là TRUE

·Phép OR (hoặc) chỉ đến tác dụng là FALSE Lúc cả hai tân oán hạng là FALSE

·Phxay XOR (hoặc triệt tiêu) luôn luôn cho hiệu quả là TRUE khi cả hai toán hạng là khác nhau cùng ngược trở lại.

Các phnghiền tân oán quan hệ tình dục cho tác dụng mẫu mã Boolean:

KÝ HIỆU

Ý NGHĨA

khác nhau

=

đều bằng nhau

>

to hơn

bé dại hơn

> =

to hơn hoặc bằng

bé dại rộng hoặc bởi

5. Kiểu ký từ (Char type)

Tất cả các dữ liệu viết sinh sống dạng văn bản ký kết tự được knhì báo bởi tự khóa CHAR.

Một ký từ được viết vào nhì lốt nháy solo ( ). Ðể tiện thể hiệp thương công bố rất cần phải bố trí, viết số các ký kết từ, từng cách sắp xếp điều đó Gọi là bảng mã. Bảng mã thịnh hành bây chừ là bảng mã ASCII (xem xét lại chương 3).

Ðể thực hiện các phxay toán thù số học cùng đối chiếu, ta nhờ vào quý hiếm số lắp thêm tự mã ASCII của từng ký từ, chẳng hạn: "A"

Trong Turbo Pascal mỗi ký trường đoản cú được chứa trong một byte.

Các hàm chuẩn tương quan đến phong cách cam kết tự:

KÝ HIỆU

Ý NGHĨA

ORD(x)

Cho số thiết bị từ bỏ của ký kết từ x vào bảng mã

CHR(n) hay #n

Cho cam kết tự tất cả số sản phẩm công nghệ từ là n

PRED(x)

Cho ký kết từ bỏ đứng trước x

SUCC(x)

Cho cam kết trường đoản cú đứng sau x

V. CÁC KHAI BÁO HẰNG, BIẾN, KIỂU, BIỂU THỨC, ...

1. Hằng (constant)

a. Ðịnh nghĩa

Hằng là một đại lượng có giá trị không đổi trong quy trình chạy công tác. Ta dùng tên hằng nhằm chương trình được rõ ràng cùng dễ sửa đổi.

b. Cách knhì báo

CONST

= ;

lấy ví dụ như 6.4:CONST

Siso = 100;

X = ‘xxx ‘;

2. Biến (variable)

a. Ðịnh nghĩa

Biến là một trong cấu tạo ghi ghi nhớ có tên (kia là tên gọi trở nên hay danh hiệu của biến).

Biến ghi lưu giữ một dữ liệu nào kia gọi là quý hiếm (value) của đổi thay. Giá trị của trở thành rất có thể được thay đổi trong thời gian áp dụng thay đổi.

Sự tầm nã xuất của phát triển thành nghĩa là phát âm giá trị xuất xắc biến hóa quý hiếm của biến chuyển được thực hiện thông qua tên phát triển thành.

lấy một ví dụ 6.5: Readln (x) ;

Writeln (x) ;

x := 9 ;

Biến là 1 cấu tạo ghi ghi nhớ dữ liệu bởi vì vậy nó đề nghị tuân thủ theo đúng chính sách của kiểu dữ liệu : một vươn lên là buộc phải nằm trong một mẫu mã dữ liệu khăng khăng.

b. Cách knhì báo

VAR

: ;

ví dụ như 6.6:VAR

a : Real ;

b, c : Integer ;

TEN : String <20>

X : Boolean ;

Chon : Char ;

Cần khai báo những biến trước lúc sử dụng bọn chúng vào lịch trình. Knhì báo một thay đổi là knhì báo sự trường thọ của đổi mới kia và cho thấy thêm nó trực thuộc hình dáng gì.

3. Kiểu (Type)

a. Ðịnh nghĩa

Ngoài những hình dáng đã định sẵn, Pascal còn có thể chấp nhận được ta định nghĩa các kiểu dáng dữ liệu khác tự những hình dáng căn phiên bản theo qui tắc kiến thiết của Pascal.

b. Cách knhị báo

TYPE

= ;

Ví dụ 6.7:

TYPE

SoNguyen = Integer ;

Diem = Real;

Tuoi = 1 .. 100 ;

Màu sắc = (Red, Blue, Green) ;

Thu = (Sun, Mon, Tue, Wed, Thu, Fri, Sat) ;

cùng Lúc vẫn khai báo mẫu mã gì thì ta có quyền thực hiện nhằm knhị báo trở nên nlỗi sinh sống ví dụ sau:

lấy một ví dụ 6.8:VAR

i, j : SoNguyen ;

Dtb : Diem ;

T : tuoi ;

Mau : màu sắc ;

Ngay_hoc : Thu;

4. Biểu thức (Expression)

a. Ðịnh nghĩa

Một biểu thức là 1 trong những phương pháp tính tân oán bao gồm các phxay tân oán, hằng, biến đổi, hàm cùng những vết ngoặc.

lấy một ví dụ 6.9: 5 + A * SQRT(B) / SIN(X)

(A AND B) OR C

b. Thứ trường đoản cú ưu tiên

Khi tính cực hiếm của một biểu thức, ngữ điệu Pascal qui ước máy trường đoản cú ưu tiên của các phép tân oán từ cao mang đến phải chăng nlỗi sau:

Mức ưu tiên:Các phxay toán:

1. Biểu thức vào ngoặc đối kháng ()

2.Phép Điện thoại tư vấn hàm

3. Not,-

4. *, /, DIV, MOD, AND

5. +, -, OR, XOR

6. =, , =, , IN

lấy một ví dụ 6.10:(4+5)/3 + 6 - (sin((/2)+3)*2= (9)/3 + 6 - (1+3)*2 = 3 + 6 - 8 = 1

c. Qui dự tính lắp thêm từ bỏ ưu tiên

lúc tính một biểu thức gồm 3 qui tắc về lắp thêm từ bỏ ưu tiên như sau:

Qui tắc 1 : Các phnghiền toán thù làm sao có ưu tiên cao hơn nữa sẽ được tính trước.

Qui tắc 2 : Trong những phxay toán gồm thuộc trang bị từ ưu tiên thì sự tính toán sẽ được tiến hành từ trái thanh lịch phải.

Qui tắc 3 :Phần vào ngoặc tự trong ra ngoài được xem tân oán nhằm trsống thành một cực hiếm đối kháng.

d. Kiểu của biểu thức

Là hình dáng của công dụng sau khi tính biểu thức.

ví dụ như 6.11:Biểu thức sau được điện thoại tư vấn là biểu thức Boolean:

not (("a">"c") và ("c">"C")) or ("B"="b") có mức giá trị TRUE

VI. CÁC THỦ TỤC XUẤT/NHẬP

1. Câu lệnh (stateacsantangelo1907.comnt)

a. Trong một công tác Pascal, sau phần biểu lộ dữ liệu là phần tế bào tả các câu lệnh. Các câu lệnh gồm trách nhiệm khẳng định các công việc mà laptop cần triển khai để giải pháp xử lý các tài liệu đã có mô tả cùng knhì báo.

b. Câu lệnh được chia thành câu lệnh đơn giản cùng câu lệnh gồm kết cấu.

(coi phần bài bác hiểu thêm)

- Câu lệnh đối chọi giản

+ Vào dữ liệu :Read, Readln

+ Ra dữ liệu:Write, Writeln

+ Lệnh gán ::=

+ Lời hotline chương trình con(gọi trực tiếp thương hiệu của chương trình con)

+ Xử lý tập tin :RESET, REWRITE, ASSIGN ...

- Câu lệnh tất cả kết cấu

+ Lệnh ghép :BEGIN .. END

+ Lệnh chọn:IF .. THEN .. ELSE

CASE .. OF .

+ Lệnh lặp:FOR .. TO .. DO

REPEAT .. UNTIL

WHILE .. DO

c. Các câu lệnh đề xuất được phân cách với nhau vì vết chấm phẩy ( ; ) và Các câu lệnh có thể viết bên trên một cái giỏi nhiều mẫu.

2. Cấu trúc tuần tự

a. Lệnh gán (Assignacsantangelo1907.comnt stateacsantangelo1907.comnt)

Một trong những lệnh dễ dàng và đơn giản với cơ phiên bản độc nhất vô nhị của Pascal là lệnh gán. Mục đích của lệnh này là gán cho 1 biến đổi đang khai báo một quý giá làm sao kia cùng dạng hình cùng với trở nên.

* Cách viết:

:=;

Ví dụ 6.12:Khi đã knhị báo

VAR

c : Char ;

i,j : Integer ;

x, y : Real ;

p, q : Boolean ;

thì ta rất có thể tất cả những phép gán sau :

c := ‘A’ ;

c := Chr(90) ;

i := (35+7)*2 hack 4 ;

i := i div 7 ;

x := 0.5 ;

x := i + 1 ;

q := i > 2*j +1 ;

q := not p ;

* Ý nghĩa:

Biến và những tuyên bố gán là những tư tưởng đặc biệt quan trọng của một chúng ta các ngữ điệu lập trình nhưng mà Pascal là 1 trong đại diện thay mặt tiêu biểu. Chúng phản chiếu phương thức hoạt động vui chơi của máy tính hiện thời, kia là:

- Lưu trữ những cực hiếm khác nhau vào trong 1 ô ghi nhớ trên đa số thời gian khác nhau.

- Một quá trình tính toán thù rất có thể coi như là một trong quá trình làm đổi khác quý giá của một (hay một số) ô lưu giữ nào kia, cho tới Lúc giành được cực hiếm buộc phải tìm.

b. Lệnh ghnghiền (Compound stateacsantangelo1907.comnt)

Một nhóm câu lệnh đối kháng được đặt thân 2 chữ BEGIN cùng END sẽ tạo nên thành một câu lệnh ghxay.

Trong Pascal ta rất có thể đặt các lệnh ghép bé trong các lệnh ghnghiền lớn hơn bao quanh đó của nó với có thể hiểu tương tự nlỗi cấu trúc ngoặc đơn ( ) trong số biểu thức tân oán học tập.

* Sơ đồ:

*

Hình 6.2: Sơ trang bị cấu tạo BEGIN .. END;

Tại hình minch họa bên trên ta dễ thấy các nhóm lệnh thành từng khối (block). Một khối hận lệnh bước đầu bằng BEGIN và xong nghỉ ngơi END; . Trong một kăn năn lệnh cũng có thể tất cả các khối lệnh con phía bên trong nó. Một kăn năn lịch trình hay được dùng làm nhóm từ 2 lệnh trsống lên nhằm tạo thành một của những lệnh tất cả kết cấu, ta có thể gặp tư tưởng này trong nhiều ví dụ ở các phần sau.

3. Cấu trúc rẽ nhánh

a. Lệnh IF .. THEN .. và Lệnh IF .. THEN .. ELSE..

*Lưu thiết bị miêu tả các lệnh và chân thành và ý nghĩa biện pháp viết:

*
*

Hình 6. 3: Lệnh IF THEN ;

*
*

Hình 6. 4:Lệnh IF .. THEN .. ELSE ..;

Chụ ý:

- Ðiều kiện là 1 biểu thức Boolean.

- Nếu sau THEN hoặc ELSE có nhiều rộng một lệnh thì tacần góilại vào BEGIN .. END;

- Toàn cỗ lệnh IF .. THEN .. ELSE xem như 1 lệnh đơn.

Ví dụ 6.13:Tính căn uống bậc 2 của một trong những

PROGRAM Tinh_can_bac_nhì ;

VAR

a : Real ;

BEGIN

Write ( Nhập số a =) ;

Readln(a) ;

IF a

Write (" a : 10 : 2 , là số âm đề xuất ko mang cnạp năng lượng được !!! ")

ELSE

Writeln (" Căn số bậc 2 của , a : 2 : 2 , la , SQRT(a) :10 : 3 ");

Writeln (" Nhấn ENTER để thoát ... ") ;

Readln; Dừng màn hình giúp xem kết quả

END.

Ghi chú:

Trong lịch trình trên, a ta thấy có dạng a :m :n cùng với ý nghĩa sâu sắc m là số định khoảng mà lại phần nguyên ổn của a đang chiếm vị trí cùng n là khoảng đến số trị phần thập phân của a.

b. Lệnh CASE .. OF

* Lưu đồ biểu diễn:

*

Hình 6.5:Lưu đồ vật lệnh CASE .. OF

* Cách viết, ý nghĩa:

Cách viếtÝ nghĩa

CASE OFXét cực hiếm của biểu thức chọn

GT1 : Công việc 1 ;Nếu có mức giá trị 1 (GT1) thì thực hành Công vấn đề 1

..........................................................

GTi: Công câu hỏi i ;Nếu có mức giá trị i(GT i) thì thi hành Công vấn đề i

...........................................................

ELSECông vấn đề 0 ;Nếu không có quý giá nào thỏa thì thực hiệnCông bài toán 0

END;

Ghi chú:

- Lệnh CASE .. OF hoàn toàn có thể không tồn tại ELSE

- Biểu thức lựa chọn là kiểu tránh rốc nlỗi Integer, Char, ko lựa chọn đẳng cấp Real

- Nếu mong muốn ứng với khá nhiều quý giá không giống nhau của biểu thức lựa chọn vẫn thi hành một lệnh thì quý hiếm kia hoàn toàn có thể viết trên và một sản phẩm phương pháp nhau bởi vì dấu phẩy (,) : Giá trị k1, k2, ..., kp: Lệnh k ;

lấy ví dụ như 6.14:PROGRAM Chon_mau ;

VARcolor : char ;

BEGIN

write (" Chọn color theo một trong những 3 ký kết trường đoản cú đầu là R / W / B ") ;

readln ( color) ;

CASEcolorOF

"R" ,"r":write (" RED = red color ") ;

"W", "w" :write (" WHITE = white color ") ;

"B" , "b":write (" BLUE = màu xanh dương ") ;

END ;

Readln;

END.

4. Cấu trúc lặp

a. Lệnh FOR

Cấu trúc FOR cho phép tái diễn nhiều lần một dãy lệnh. Số lần lặp lại hàng lệnh sẽ biết trước. Phát biểu FOR bao gồm 2 dạng:

FOR .. TO .. DOđếm lên

FOR .. DOWNTO ..DOđếm xuống

* Cú pháp tổng thể là:

FOR := TO/DOWNTO DO ;

* Lưu đồ:

*
*

Hình 6. 6:Lưu đồ vật phát biểu FOR .. TO .. DO

Chú ý:Trị đầu, trị cuối là các biến chuyển hoặc hằng cùng trở nên đếm yêu cầu là hình dáng rời rạc.

ví dụ như 6.15:Cmùi hương trình in một hàng số từ0 mang đến 9

Program Day_So ;

VAR

i : Integer ;

BEGIN

FORi := 0 TO 9DOWrite (i) ;

Readln ;

END.

b. Lệnh WHILE .. DO

* Lưu đồ của lệnh

*

Hình 6. 7:Lưu vật cấu tạo WHILE .. DO

* Ý nghĩa lưu lại đồ:

Trong Lúc nhưng ĐK còn đúng thì cứ thực hiện Công bài toán, rồi tảo trsinh hoạt về soát sổ ĐK lại. Vòng lặp được tiếp tục, cho đến khi điều kiện đề ra không thể đúng nữa thì tiếp cận triển khai lệnh tiếp theo

* Cú pháp

WHILE DO

*

Hình 6.8:Sơ đồ dùng cú pháplệnh WHILE .. DO

Ghi chú:

·Ðiều khiếu nại vào cấu trúc lặp WHILE .. DO là một trong biểu thức ngắn gọn xúc tích phong cách Boolean chỉ gồm 2 quý giá là Ðúng (True) hoặc Sai (False)

·Nếu ĐK Ðúng thì lịch trình sẽ chạy trong kết cấu WHILE .. DO.

·Sau các lần lặp, lịch trình quay lại đánh giá điều kiện. Tùy theo biểu thức logic của điều kiện là Ðúng tốt Sai thì lịch trình đã thực hiện Công việc khớp ứng.

·Nếu Sai thì đưa xuống dưới cấu trúc WHILE .. DO

Ví dụ 6.16:Chương trình tính trung bình n số:x1 + x2 + x3 + ... + xn

Program Trung_binh_Day_So ;

VAR

n, count : Integer ;

x, sum, average : real ;

BEGIN

count := 1 ;

sum:= 0 ;

Write (" Nhập n = ") ;

readln (n) ;

WHILEcount

BEGIN

Write (" Nhập quý hiếm thứ" , count," của x = " ) ;

readln (x) ;

sum:= sum + x ;

count := count + 1 ;

END ;

average:=sum/n ;

Writeln (" Trung bình là =", average : 10 : 3 ) ;

Writeln (" Nhấn Enter để né ..." ) ;

Readln ;

END.

c. Lệnh REPEAT .. UNTIL

Câu lệnh REPEAT .. UNTIL cần sử dụng trong số trường hòa hợp Lúc biến hóa tinh chỉnh không có vẻ bên ngoài tách rạc với quan trọng đặc biệt trong các trường hòa hợp tần số lặp lần khần trước.

*

Hình 6.9:Lưu đồ dùng kết cấu của REPEAT .. UNTIL

* Ý nghĩa câu lệnh:

Nếu điều kiện logic là Sai (False)thì lặp lại lệnh cho tới lúc ĐK Ðúngthì mới có thể bay thoát ra khỏi cấu tạo REPEAT .. UNTIL.

Nếu có rất nhiều câu lệnh thì mỗi lệnh phân làn nhau bằng lốt chnóng phẩy (;)Công câu hỏi của REPEAT với UNTIL không tuyệt nhất thiết phải cần sử dụng lệnh ghnghiền nhằm team tự 2 lệnh đối kháng trlàm việc lên thành các bước.

*

Hình 6.10:Sơ thiết bị cú pháp REPEAT .. UNTIL

lấy ví dụ như 6.17:Với bài bác toán thù trung bình cùng một dãy số ngơi nghỉ ví dụ trước rất có thể viết theo kết cấu REPEAT .. UNTIL nhưsau:

Program Trung_binh_Day_So ;

VARn, count : Integer ;

x, sum : real ;

BEGIN

count := 1 ;

sum:= 0 ;

Write := (" Nhập n = ") ;readln (n) ;

REPEAT

Write (" Nhập giá trị thứ" , count, "của x = ") ;

readln(x) ;

sum := sum + x ;

count := count + 1 ;

UNTIL count > n ;

Writeln (" Trung bình là =" , sum/n : 8 :2 ) ;

Readln ;

END.

Ghi chú:

So sánh 2 giải pháp viết WHILE .. DO cùng REPEAT .. UNTIL ta thấy tất cả sự khác biệt:

-Trong cấu trúc WHILE .. DO thì được kiểm soát trước, giả dụ thỏa thì mới có thể thực hiện .

- Ngược lại, trong cấu trúc REPEAT .. UNTIL thì sẽ được thực hiện trước kế tiếp mới bình chọn , nếu như không thỏa thì thường xuyên thi hành cho tới lúc là đúng.

Lệnh REPEAT .. UNTIL thường xuyên được thực hiện vào lập trình, tuyệt nhất là lúc người tiêu dùng mong mỏi liên tiếp bài toán sống ngôi trường vừa lòng thay đổi đổi thay mà chưa phải trsinh sống về công tác với nhận tổ hợp phím Ctrl + F9 lại.

ví dụ như 6.18:Nhân 2 số a với b

Program Tich;

VARa, b : integer ;

CK : char ;

BEGIN

REPEAT

Write (" Nhập số a = "); Readln (a) ;

Write (" Nhập số b = "); Readln (b) ;

Writeln (" Tích số của a x b là :" , a*b : 10 ) ;

Writeln (" Tiếp tục tính nữa không (CK) ? ");

Readln (CK) ;

UNTIL upcase(CK) = K; hàm chuyển đổi ký kết tự vào biếnCK thành cam kết từ in hoa

Hướng dẫn lập trình sẵn Pascal


Chuyên mục: Tổng hợp