Lập trình pascal cơ bản

     
Giới thiệu và trả lời học Pascal

Pascal là tên gọi của một trong các ngôn ngữ lập trình v.i.p thông dụng. Ngôn từ lập trình Pascal được gs Niklaus Wirth sinh hoạt trường Ðại học Kỹ thuật Zurich (Thụy sĩ) xây đắp và chào làng vào năm 1970. Niklaus Wirth viết tên cho ngôn ngữ này là Pascal để tưởng niệm đến bên Toán học với Triết học tập Pháp ở nuốm kỷ 17 là Blaise Pascal, người đã phát minh sáng tạo ra một máy tính cơ khí solo giản trước tiên của con người.

Ngôn ngữ Pascal được dùng bây giờ có nhiều điểm khác hoàn toàn với chuẩn chỉnh Pascal nguyên thủy của giáo sư Wirth. Tùy theo giang sơn hoặc công ty đã vạc triển cho ra đời các lịch trình biên dịch ngôn ngữ Pascal như:

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

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

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

·IBM PASCAL của hãng Microsoft (Mỹ)

·v.v...

Ðến nay, ngôn từ Pascal đã cải tiến và phát triển đến phiên phiên bản Turbo Pascal Version 7. Những diễn giải cùng ví dụ trong giáo trình này hầu hết sử dụng lịch trình Turbo Pascal 5.5 - 7.0, hiện đang được sử dụng thoáng rộng ở Việt Nam.

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

1. Bộ ký từ bỏ

- bộ 26 chữ Latin:

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

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

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

- ký tự gạch ốp nối dưới:_

- những ký hiệu toán học:+, -, *, /, =, , (, ), <, }

2. Từkhóa

Là những từ riêng biệt của Pascal, bao gồm ngữ nghĩa đã có xác định, không được dùng nó vào các việc không giống hoặc đặt tên new trùng với các 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

- trường đoản cú 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 tử:

AND, OR, NOT, IN, DIV, MOD

3. Tên chuẩn chỉnh

Tên chuẩn là tên vẫn được quan niệm sẵn vào Pascal, nhưng bạn ta có thể định nghĩa lại ví như muốn. Trong Pascal ta có các tên chuẩn chỉnh 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

Reset, Rewrite

4. Thương hiệu tự đặt

Trong Pascal để tại vị tên cho các biến, hằng, kiểu, chương trình nhỏ ta dùng những danh hiệu (identifier). Thương hiệu của Pascal được ban đầu bằng một chữ cái, sau đó có thể là các chữ cái, chữ số xuất xắc là vết nối, ko được có tầm khoảng trắng và độ dài buổi tối đa được cho phép là 127.

Ví dụ 6.1:Sau đó là các danh hiệu: x;S1;Delta;PT_bac_2

Pascal không khác nhau chữ thường cùng chữ hoa trong một danh hiệu.

Bạn đang xem: Lập trình pascal cơ bản

Ví dụ 6.2:aa với AA là một;XyZ_aBcvàxyZ_AbC là 1 trong những

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

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

*

Hình 6.1:Sơ đồ cấu trúc chương trình Pascal

Ví dụ 6.3:

PROGRAM Hello; chiếc tiêu đề

USESCrt; Lời hotline sử dụng những đơn vị công tác

VARNakasynoonlinemy.com : string; Khai báo đổi thay

PROCEDUREInput; gồm thể có tương đối nhiều Procedure với Function

Begin

ClrScr; Lệnh xóa màn hình hiển thị

Write(" ‘Hello ! What is your nakasynoonlinemy.com ?... ‘");Readln(Nakasynoonlinemy.com);

End;

BEGIN Thân chương trình thiết yếu

Input;

Writeln(" ‘Welcokasynoonlinemy.com khổng lồ you,‘, Nakasynoonlinemy.com") ;

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

Readln;

End.

Một lịch trình Pascal có những phần:

* Phần tiêu đề:

Phần này bước đầu bằng trường đoản cú khóa Program rồi sau đó là thương hiệu của chương trình và kết thúc bằng dấu chấm phẩy (;)

Tên chương trình bắt buộc được đặt theo như đúng qui cách của danh hiệu tự đặt. Phần tiêu đề có hay không cũng được.

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

Trước khi sử dụng biến nào đề nghị khai báo biến đó, nghĩa là khẳng định rõ xem đổi thay đó trực thuộc kiểu dữ liệu nào. Một chương trình Pascal rất có thể có một số hoặc tất cả các khai báo dữ liệu sau:

CONST: khai báo hằng

...

TYPE: định nghĩakiểu dữliệu bắt đầu

...

VAR: khai báo những biến

...

* Phần khai báo công tác con:

Phần này mô tả một đội nhóm lệnh được lấy tên chung là một chương trình con để khi thân chương trình chính gọi mang đến thì cả đội lệnh này được thi hành.

Phần này có thể có hoặc không phụ thuộc vào nhu cầu.

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

Phần thân chương trình là phần quan trọng đặc biệt nhất và bắt buộc phải có, phần này luôn nằm giữa 2 từ khoá là BEGIN cùng END. Ở thân là lệnh mà các chương trình chính cần thực hiện. Sau trường đoản cú khóa kết thúc là lốt chấm (.) nhằm báo xong xuôi chương trình.

*Dấu chấm phẩy (;):

Dấu ;dùng để chống cách các câu lệnh của Pascal và không thể thiếu được.

Xem thêm: Các Thẻ Bài Ma Sói - Cách Chơi Bài Ma Sói, Luật Chơi Cơ Bản

*Lời chú thích:

Lời chú thích dùng làm chú giải cho người sử dụng công tác nhớ nhằm mục đích trao đổi thông tin giữa tín đồ và người, máy tính sẽ không cân nhắc lời ghi chú này. Lời chú thích nằm trong lòng 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à toàn bộ những gì mà laptop phải xử lý.

Theo Niklaus Wirth:

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

Một kiểu tài liệu (data type) là một trong qui định về hình dạng, cấu tạo và cực hiếm của dữ liệu cũng như cách màn trình diễn và phương pháp xử lý dữ liệu.

Trong Pascal các kiểu tài liệu gồm những loại sau:

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

- phong cách có cấu trúc (Structure type): bao hàm mảng (Array), chuỗi (String), phiên bản ghi (Record), tập hòa hợp (Set), tập tin (File).

- giao diện chỉ điểm (pointer):

Trong chương này, họ chỉ xét những kiểu dữ liệu đơn giản.

2. Hình dáng số nguyên (Integer type)

a. Hình dạng số nguyên trực thuộc Z cất trong Turbo Pascal

Ðược có mang với những 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 phép toán số học so với số nguyên

KÝ HIỆU

Ý NGHĨA

+

Cộng

-

Trừ

*

Nhân

/

Chia cho tác dụng là số thực

DIV

Chia mang phần nguyên

MOD

Chia mang phần dư

SUCC (n)

n + 1

PRED (n)

n - 1

ODD (n)

TRUE trường hợp n lẻ

và FALSE ví như n chẵn

3. Dạng hình số thực (Real type)

Ở Turbo Pascal, giao diện số thực nằm trong tập phù hợp R cất trong 6 bytes, được quan niệm với tự 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 rất có thể viết theo phong cách có vết chấm thập phân thông thường hoặc viết theo phong cách thập phân tất cả phần mũ và phần định trị.

Các phép toán số học cơ phiên bản +, -, * , /dĩ nhiên được áp dụng trong mẫu mã real.

Bảng dưới đấy là các hàm số học cho kiểu số thực:

KÝ HIỆU

Ý NGHĨA

ABS (x)

|x| : lấy giá trị tuyệt đối của số x

SQR (x)

x2 : mang bình phương trị số x

SQRT(x)

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

SIN(x)

sin (x) : rước sin của x

COS (x)

cos (x) : lấy cos của x

ARCTAN (x)

arctang (x)

LN (x)

ln x : rước logarit nepe của trị x (e ( 2.71828)

EXP (x)

ex

TRUNC (x)

lấy phần nguyên lớn nhất không vượt quá trị số x

ROUND (x)

làm tròn quý giá của x, đem số nguyên ngay sát x nhất

4. Kiểu logic (Boolean)

Một tài liệu thuộc thứ hạng BOOLEAN là 1 đại lượng được chứa trong 1 byte sống Turbo Pascal và chỉ có thể nhận được 1 trong những hai gía trị ngắn gọn xúc tích là TRUE (đúng) và FALSE (sai).

Qui ước:TRUE > FALSE

Các phép toán trên kiểu dáng Boolean:

A

B

NOT A

A và 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:

·Phép và (và) chỉ cho kết quả là TRUE khi cả hai toán hạng là TRUE

·Phép OR (hoặc) chỉ cho tác dụng là FALSE khi cả 2 toán hạng là FALSE

·Phép XOR (hoặc triệt tiêu) luôn cho công dụng là TRUE khi cả hai toán hạng là khác biệt và ngược lại.

Các phép toán dục tình cho công dụng kiểu Boolean:

KÝ HIỆU

Ý NGHĨA

khác nhau

=

bằng nhau

>

lớn hơn

nhỏ rộng

> =

lớn rộng hoặc bằng

nhỏ rộng hoặc bằng

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

Tất cả các dữ liệu viết làm việc dạng chữ cam kết tự được khai báo vị từ khóa CHAR.

Một ký tự được viết trong hai lốt nháy 1-1 ( ). Ðể tiện điều đình thông tin cần phải sắp xếp, tiến công số những ký tự, mỗi cách thu xếp như vậy điện thoại tư vấn là bảng mã. Bảng mã thông dụng hiện thời là bảng mã ASCII (xem lại chương 3).

Ðể tiến hành các phép toán số học và so sánh, ta dựa vào giá trị số sản phẩm tự mã ASCII của từng cam kết tự, chẳng hạn: "A"

Trong Turbo Pascal mỗi ký kết tự được chứa trong một byte.

Các hàm chuẩn liên quan cho kiểu ký kết tự:

KÝ HIỆU

Ý NGHĨA

ORD(x)

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

CHR(n) hay #n

Cho ký kết tự bao gồm số trang bị tự là n

PRED(x)

Cho ký kết tự đứng trước x

SUCC(x)

Cho ký kết tự đứ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 trong những đại lượng có mức giá trị không đổi trong quy trình chạy chương trình. Ta cần sử dụng tên hằng để lịch trình được ví dụ và dễ sửa đổi.

b. Cách khai báo

CONST

= ;

Ví dụ 6.4:CONST

Siso = 100;

X = ‘xxx ‘;

2. Trở thành (variable)

a. Ðịnh nghĩa

Biến là một kết cấu ghi nhớ có tên (đó là tên gọi biến hay thương hiệu của biến).

Biến ghi nhớ một dữ liệu nào đó hotline là quý giá (value) của biến. Cực hiếm của biến rất có thể được chuyển đổi trong thời gian sử dụng biến.

Sự truy hỏi xuất của đổi mới nghĩa là đọc giá trị hay đổi khác giá trị của đổi thay được tiến hành thông qua tên biến.

Ví dụ 6.5: Readln (x) ;

Writeln (x) ;

x := 9 ;

Biến là một cấu tạo ghi nhớ tài liệu vì vậy nó bắt buộc tuân theo phép tắc của kiểu dữ liệu : một biến yêu cầu thuộc một kiểu tài liệu nhất định.

b. Bí quyết khai báo

VAR

: ;

Ví dụ 6.6:VAR

a : Real ;

b, c : Integer ;

TEN : String <20>

X : Boolean ;

Chon : Char ;

Cần khai báo các biến trước lúc sử dụng chúng trong chương trình. Khai báo một phát triển thành là khai báo sự mãi mãi của biến chuyển đó và cho biết thêm nó thuộc hình dáng gì.

3. Vẻ bên ngoài (Type)

a. Ðịnh nghĩa

Ngoài những kiểu vẫn định sẵn, Pascal còn cho phép ta định nghĩa các kiểu tài liệu khác từ những kiểu căn bản theo qui tắc tạo ra của Pascal.

b. Phương pháp khai báo

TYPE

= ;

Ví dụ 6.7:

TYPE

SoNguyen = Integer ;

Diem = Real;

Tuoi = 1 .. 100 ;

Color = (Red, Blue, Green) ;

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

và khi sẽ khai báo kiểu gì thì ta bao gồm quyền áp dụng để khai báo trở thành như ở ví dụ sau:

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 công thức tính toán bao gồm các phép toán, hằng, biến, hàm và các dấu ngoặc.

Ví dụ 6.9: 5 + A * SQRT(B) / SIN(X)

(A và B) OR C

b. Vật dụng tự ưu tiên

Khi tính quý hiếm của một biểu thức, ngôn ngữ Pascal qui mong thứ tự ưu tiên của các phép toán từ bỏ cao mang đến thấp như sau:

Mức ưu tiên:Các phép toán:

1. Biểu thức trong ngoặc đơn ()

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

3. Not,-

4. *, /, DIV, MOD, and

5. +, -, OR, XOR

6. =, , =, , IN

Ví dụ 6.10:(4+5)/3 + 6 - (sin((/2)+3)*2= (9)/3 + 6 - (1+3)*2 = 3 + 6 - 8 = 1

c. Qui mong tính sản phẩm tự ưu tiên

Khi tính một biểu thức có 3 qui tắc về lắp thêm tự ưu tiên như sau:

Qui tắc 1 : các phép toán nào có ưu tiên cao hơn sẽ tiến hành tính trước.

Qui tắc 2 : trong những phép toán tất cả cùng thứ tự ưu tiên thì sự đo lường và tính toán sẽ được triển khai từ trái sang trọng phải.

Qui tắc 3 :Phần trong ngoặc tự trong ra phía bên ngoài được đo lường và tính toán để trở thành một cực hiếm đơn.

d. Giao diện của biểu thức

Là hình trạng của hiệu quả sau lúc tính biểu thức.

Ví dụ 6.11:Biểu thức sau được call là biểu thức Boolean:

not (("a">"c") & ("c">"C")) or ("B"="b") có giá trị TRUE

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

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

a. Trong một công tác Pascal, sau phần tế bào tả tài liệu là phần tế bào tả các câu lệnh. Những câu lệnh bao gồm nhiệm vụ khẳng định các các bước mà laptop phải thực hiện để xử lý những dữ liệu đang được bộc lộ và khai báo.

b. Câu lệnh được phân thành câu lệnh đơn giản dễ dàng và câu lệnh có cấu trúc.

(xem phần bài xích đọc thêm)

- Câu lệnh solo 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)

+ cách xử lý tập tin :RESET, REWRITE, ASSIGN ...

- Câu lệnh có cấu trúc

+ Lệnh ghép :BEGIN .. Kết thúc

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

CASE .. OF .

+ Lệnh lặp:FOR .. To lớn .. Vày

REPEAT .. UNTIL

WHILE .. Bởi vì

c. Những câu lệnh đề nghị được chia cách với nhau do dấu chấm phẩy ( ; ) và những câu lệnh hoàn toàn có thể viết bên trên một cái hay nhiều dòng.

2. Kết cấu tuần tự

a. Lệnh gán (Assignkasynoonlinemy.comnt statekasynoonlinemy.comnt)

Một trong số lệnh đơn giản dễ dàng và cơ bản nhất của Pascal là lệnh gán. Mục đích của lệnh này là gán cho một đổi thay đã khai báo một quý hiếm nào đó thuộc kiểu với biến.

* biện pháp viết:

:=;

Ví dụ 6.12:Khi đang khai báo

VAR

c : Char ;

i,j : Integer ;

x, y : Real ;

p, q : Boolean ;

thì ta hoàn toàn có thể có các 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 phát biểu gán là những khái niệm đặc biệt quan trọng của một họ các ngôn ngữ lập trình mà Pascal là một thay mặt tiêu biểu. Bọn chúng phản ánh cách thức buổi giao lưu của máy tính hiện tại nay, kia là:

- lưu lại trữ các giá trị khác biệt vào một ô nhớ tại những thời điểm khác nhau.

- Một quá trình tính toán có thể coi như là một quá trình làm thay đổi giá trị của một (hay một số) ô nhớ như thế nào đó, cho tới khi đạt được giá trị yêu cầu tìm.

b. Lệnh ghép (Compound statekasynoonlinemy.comnt)

Một team câu lệnh 1-1 được để giữa 2 chữ BEGIN cùng END sẽ tạo thành một câu lệnh ghép.

Trong Pascal ta rất có thể đặt những lệnh ghép con trong các lệnh ghép to hơn bao bên cạnh của nó và rất có thể hiểu tương tự như kết cấu ngoặc solo ( ) trong những biểu thức toán học.

* Sơ đồ:

*

Hình 6.2: Sơ đồ cấu tạo BEGIN .. END;

Ở hình minh họa trên ta dễ thấy các nhóm lệnh thành từng khối (block). Một khối lệnh ban đầu bằng BEGIN và xong ở END; . Trong một khối lệnh cũng rất có thể có các khối lệnh bé nằm vào nó. Một khối chương trình thường được dùng làm nhóm từ 2 lệnh trở lên để sản xuất thành một của các lệnh gồm cấu trúc, ta gồm thể chạm chán khái niệm này trong không ít ví dụ ở những phần sau.

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

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

*Lưu đồ biểu đạt các lệnh và chân thành và ý nghĩa cách 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à một biểu thức Boolean.

- nếu như sau THEN hoặc ELSE có nhiều hơn một lệnh thì taphải góilại vào BEGIN .. END;

- toàn thể lệnh IF .. THEN .. ELSE xem như 1 lệnh đơn.

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

PROGRAM Tinh_can_bac_hai ;

VAR

a : Real ;

BEGIN

Write ( Nhập số a =) ;

Readln(a) ;

IF a

Write (" a : 10 : 2 , là số âm nên không đem căn được !!! ")

ELSE

Writeln (" số mệnh bậc 2 của , a : 2 : 2 , la , SQRT(a) :10 : 3 ");

Writeln (" dìm ENTER để tránh ... ") ;

Readln; Dừng màn hình để coi kết quả

END.

Ghi chú:

Trong lịch trình trên, a ta thấy gồm dạng a :m :n với chân thành và ý nghĩa m là số định khoảng tầm mà phần nguyên của a sẽ chỉ chiếm chỗ và n là khoảng chừng cho số trị phần thập phân của a.

b. Lệnh CASE .. OF

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

*

Hình 6.5:Lưu đồ gia dụng lệnh CASE .. OF

* bí quyết viết, ý nghĩa:

Cách viếtÝ nghĩa

CASE OFXét giá trị của biểu thức lựa chọn

GT1 : công việc 1 ;Nếu có giá trị 1 (GT1) thì thi hành các bước 1

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

GTi: các bước i ;Nếu có mức giá trị i(GT i) thì thi hành công việc i

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

ELSECông vấn đề 0 ;Nếu không tồn tại giá trị như thế nào thỏa thì thực hiệnCông vấn đề 0

END;

Ghi chú:

- Lệnh CASE .. OF rất có thể không có ELSE

- Biểu thức chọn là vẻ bên ngoài rời rốc như Integer, Char, không lựa chọn kiểu Real

- nếu muốn ứng với nhiều giá trị không giống nhau của biểu thức lựa chọn vẫn thực hiện một lệnh thì quý hiếm đó có thể viết trên cùng một hàng cách nhau vày dấu phẩy (,) : quý hiếm k1, k2, ..., kp: Lệnh k ;

Ví dụ 6.14:PROGRAM Chon_mau ;

VARcolor : char ;

BEGIN

write (" chọn màu theo một trong 3 ký kết tự đầu là R / W / B ") ;

readln ( color) ;

CASEcolorOF

"R" ,"r":write (" RED = màu đỏ ") ;

"W", "w" :write (" white = màu trắng ") ;

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

END ;

Readln;

END.

4. Kết cấu lặp

a. Lệnh FOR

Cấu trúc FOR chất nhận được lặp lại các lần một hàng lệnh. Số lần lặp lại dãy lệnh đang biết trước. Phát biểu FOR tất cả 2 dạng:

FOR .. Khổng lồ .. DOđếm lên

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

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

FOR := TO/DOWNTO do ;

* lưu lại đồ:

*
*

Hình 6. 6:Lưu đồ phát biểu FOR .. Lớn .. Bởi

Chú ý:Trị đầu, trị cuối là những biến hoặc hằng và vươn lên là đếm cần là đẳng cấp rời rạc.

Ví dụ 6.15:Chương trình in một dãy số từ0 mang lại 9

Program Day_So ;

VAR

i : Integer ;

BEGIN

FORi := 0 to 9DOWrite (i) ;

Readln ;

END.

b. Lệnh WHILE .. Vì chưng

* Lưu thiết bị của lệnh

*

Hình 6. 7:Lưu đồ cấu tạo WHILE .. Do

* Ý nghĩa giữ đồ:

Trong lúc mà điều kiện còn đúng thì cứ thực hiện Công việc, rồi tảo trở về kiểm tra điều kiện lại. Vòng lặp được tiếp tục, đến lúc điều kiện đưa ra không còn đúng nữa thì đi tới tiến hành lệnh tiếp theo

* Cú pháp

WHILE vì chưng

*

Hình 6.8:Sơ thứ cú pháplệnh WHILE .. Vày

Ghi chú:

·Ðiều khiếu nại trong cấu tạo lặp WHILE .. DO là một trong biểu thức súc tích kiểu Boolean chỉ bao gồm 2 quý hiếm là Ðúng (True) hoặc sai (False)

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

·Sau mỗi lần lặp, chương trình trở về kiểm tra điều kiện. Tùy thuộc vào biểu thức ngắn gọn xúc tích của điều kiện là Ðúng hay Sai thì lịch trình sẽ thực hiện công việc tương ứng.

·Nếu không đúng thì gửi xuống dưới cấu trúc WHILE .. Vị

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 giá trị thứ" , count," của x = " ) ;

readln (x) ;

sum:= sum + x ;

count := count + 1 ;

END ;

average:=sum/n ;

Writeln (" vừa đủ là =", average : 10 : 3 ) ;

Writeln (" dìm Enter để tránh ..." ) ;

Readln ;

END.

c. Lệnh REPEAT .. UNTIL

Câu lệnh REPEAT .. UNTIL dùng trong số trường hợp khi phát triển thành điều khiển không tồn tại kiểu rời rộc và đặc biệt trong các trường hợp chu kỳ lặp lần chần trước.

*

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

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

Nếu điều kiện lô ghích là không đúng (False)thì tái diễn lệnh cho đến khi điều kiện Ðúngthì bắt đầu thoát ra khỏi cấu tạo REPEAT .. UNTIL.

Nếu có khá nhiều câu lệnh thì mỗi lệnh phân cách nhau bằng dấu chấm phẩy (;)Công bài toán của REPEAT và UNTIL không nhất thiết đề nghị dùng lệnh ghép để nhóm từ bỏ 2 lệnh đối chọi trở lên thành công xuất sắc việc.

*

Hình 6.10:Sơ đồ dùng cú pháp REPEAT .. UNTIL

Ví dụ 6.17:Với vấn đề trung bình cùng một dãy số làm việc ví dụ trước hoàn toàn có thể viết theo cấu tạo 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 (" vừa phải là =" , sum/n : 8 :2 ) ;

Readln ;

END.

Ghi chú:

So sánh 2 giải pháp viết WHILE .. Vì chưng và REPEAT .. UNTIL ta thấy bao gồm sự không giống biệt:

-Trong kết cấu WHILE .. Vì thì được đánh giá trước, giả dụ thỏa thì mới triển khai .

- Ngược lại, trong cấu trúc REPEAT .. UNTIL thì sẽ được thực thi trước sau đó mới khám nghiệm , còn nếu không thỏa thì tiếp tục thi hành cho đến khi là đúng.

Lệnh REPEAT .. UNTIL hay được sử dụng trong lập trình, nhất là lúc người tiêu dùng muốn thường xuyên bài toán làm việc trường hợp chuyển đổi biến mà chưa hẳn trở về công tác và nhấn tổ hợp phím Ctrl + F9 lại.

Ví dụ 6.18:Nhân 2 số a cùng 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 (" liên tiếp tính nữa ko (CK) ? ");

Readln (CK) ;

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

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