Các lệnh lựa chọn trong Pascal

Thứ hai - 27/07/2020 09:57
1. KHÁI NIỆM
- Một trong các đặc trưng của một chương trình máy tính là Dự ĐOÁN và ĐÁP ỨNG.
- Chương trình phải dự đoán được tất cả các khả năng có thể xảy ra và ứng với mỗi trường hợp trong phần dự đoán phải có đáp ứng thích hợp.
- Nếu dự đoán không đầy đủ các trường hợp ta sẽ mắc phải những lỗi lầm có thể rất lớn.
- Ngôn ngữ PASCAL có các lệnh lựa chọn cho phép người lập trình thể hiện khả năng dự đoán và đáp ứng của máy tính.
2. LỆNH IF - THEN
a) Lưu đồ biểu diễn lệnh :


b) Cách viết, ý nghĩa :
Cách viết Ý nghĩa
IF < Điều kiện > THEN

Lệnh 1 ;
Lệnh 2 ;
Nếu điều kiện đúng, máy thực hiện lệnh 1 rồi qua lệnh 2.
Nếu điều kiện sai thì bỏ qua lệnh 1.
Nếu điều kiện sai thì bỏ qua lệnh 1, xuống lệnh 2.

• Chú ý : Điều kiện là một biểu thức BOOLEAN
- Ví dụ : Tìm số lớn nhất trong 3 số
PROGRAM Số_lớn_nhất_trong_3_số ;
VAR a, b, c, max : integer ;
BEGIN
      Writeln ('Nhập a, b, c ;
      Readln (a, b, c) ;
      Max := a ;
      IF Max < b then max := b ;
      IF Max < c then max := c ;
      Writeln ('Số lớn nhất là Max) ; Readln ;
END.
3. LỆNH IF... THEN... ELSE
a) Lưu đồ biểu diễn lệnh :

b) Cách viết, ý nghĩa :
Cách viết Ý nghĩa
IF < Điều kiện > THEN
Lệnh 1 {không có}
ELSE
Lệnh 2 ;
Lệnh 3 ;
Nếu điều kiện đúng thì máy thực hiện lệnh 1 rồi đến lệnh 3.
Nếu điều kiện sai thì thực hiện lệnh 2 rồi đến lệnh 3.

• Chú ý :
- Nếu sau THEN hoặc ELSE có nhiều hơn một lệnh thì ta phải gói lại bằng BEGIN..END
- Toàn bộ lệnh IF..THEN..ELSE xem như một lệnh đơn.
- Ví dụ :
Tìm số lớn nhất trong 3 số.
PROGRAM Max ;
VAR
      a, b, c, Max : Integer ;
BEGIN
      Writeln ('nhập a, b, c') ;
      Readln (a, b, c) ;
IF a > b THEN
     Max := a ;
ELSE
     Max := b ;
IF Max < c THEN
     Max := c ;
Writeln (Số lớn nhất là Max) ;
Readln ;
END ;

• QUI ƯỚC :
- Phát biểu :
IF ĐK1 THEN IF ĐK2 THEN S1 ELSE S2
- Tương đương với phát biểu sau :
IF ĐK1 THEN
    BEGIN
         IF ĐK2 THEN SI
         ELSE S2
END ; 
- Nghĩa là ELSE thuộc về cái IF gần nó nhất theo lưu đồ sau:

04. LỆNH CASE..OF
a) Lưu đồ biểu diễn :
 

b) Cách viết, ý nghĩa :
Cách viết Ý nghĩa
CASE <biểu thức> OF
Giá trị 1 : Lệnh 1 ;
Giá trị 2 : Lệnh 2 ;
Giá trị n : Lệnh n ;
ELSE lệnh 0 ;
END
Xét giá trị của biểu thức chọn.
Nếu có giá trị k thì thực hiện lệnh thứ k...
Nếu không thì thực hiện lệnh thứ 0.
 

Chú ý :
Lệnh CASE..OF có thể không có ELSE.
- Biểu thức chọn phải thuộc kiểu rời rạc như Integer, Char, không được kiểu Real.
- Nếu muốn ứng với nhiều giá trị khác nhau của biểu thức chọn vẫn thi hành một lệnh thì các giá trị đó có thể viết trên cùng mót hàng cách nhau bởi dấu , :
Giá trị k1, k2, ..., kp : Lệnh k ;
- Ví dụ 1 : Chương trình nhận biết số chẵn hay số lẻ :
PROGRAM Chan­_le ;
VAR
      So, Du : Integer ;
BEGIN
      Write ('Xin cho biết một số nguyên :') ;
       Readln (‘số') ;
       Du := so mod 2 ;
       Case Du of
           0 : Writeln ('Số chẵn') ;
           1 : Writeln (Số lẻ') ;
       End ;
       Readln ;
END.
- Ví dụ : Một chương trình làm tính sô học đơn giản.
PROGRAM CALCULATOR;
VAR
Toantu : char ;
kq : Real ;
x, y : Integer ;
Lam_duoc : Boolean ;
BEGIN
    Write ('Nhập x, y :')
         Readin (x, y) ;
    Writeln ('Phép toán ?')
         Readln (Toantu);
         Lam_duoc := true ;
         Case Toantu of
            '+' : kq := x + y ;
             '-' : kq := x - y ;
             ' *' : kq := x * y ;
              '/' : If y = 0 then Lam_duoc := False
                   else kq := x/y
          else Lam_duoc := False ;
   end ;
   If Lam_duoc then writein (’Kết quả :’, kq)
   else writeln ('Không làm được’);
   Readln ;
END.
Bản quyền bài viết thuộc về Sachgiai.com. Ghi nguồn Sách giải.com khi đăng lại bài viết này.

  Ý kiến bạn đọc

THÀNH VIÊN

Hãy đăng nhập thành viên để trải nghiệm đầy đủ các tiện ích trên site
Kênh Bóng đá trực tiếp hôm nay miễn phí
Kênh
90Phut TV full HD ⇔ 888new
69VN ⇔ HM88 ⇔ F168 ⇔ 123b ⇔ 566

Vmax ⇔ 78Win ⇔ https://xn88.bio/
GK88 ⇔ SHBET ⇔ 78win ⇔ u888 ⇔ 66b
fo88vic88 ⇔ u888 ⇔ 888p ⇔ 69vn
BL555 ⇔ 99OK ⇔ f168 ⇔ Link MB66
mv66af88 ⇔ 8x bet ⇔ 88AA
789BET ⇔ LC88 ⇔ BL555 ⇔ 789f
999slot ⇔ 789F ⇔ MB66 ⇔ 8xbet
https://789betcom0.com/ ⇔ https://hi88.baby/
789BET ⇔ au88 ⇔ go8 ⇔ https://xx88.ink/
zo88 ⇔ ev99 ⇔ 888b ⇔ go88 ⇔ kèo nhà cái
cm88 ⇔ 88aa ⇔ Kkwin ⇔ tv88 ⇔ 89bet
mb66.racing ⇔ 88go ⇔ FO88 ⇔ 88xx
188v ⇔ f168 ⇔ QQ88 ⇔ bk8 ⇔ bk8
99ok ⇔ f168 ⇔ iwinclub ⇔ vn88 ⇔ 69vn
m88 ⇔ 56win ⇔ P3 ⇔ 8s ⇔ RWIN
vn23 ⇔ SHBET ⇔ kubet ⇔ 888new
BL555 ⇔ hi88 ⇔ https://fun88.social/
thabet ⇔ SV88 ⇔ https://vnalo789c.com/
https://qq88.fun/ ⇔  ⇔ 888New ⇔ QQ88
daga ⇔ SHBET ⇔ keo nha cai ⇔ bl-555.site
https://bshbet.com/ ⇔ https://uk88.rocks
kkwin ⇔ KUWIN ⇔ 8xbet ⇔ RR88 ⇔ 188v
mb6678win ⇔ https://hello8880.net/
tv88UU88 ⇔ HM88 ⇔ mb 66 ⇔ TV88
NOHU ⇔ 77ball ⇔ 32win ⇔ Kuwin
ek333 ⇔ xoso66 ⇔ nổ hũ ⇔ SUN WIN
X88 ⇔ 78win ⇔ Jun88 ⇔ uu88 ⇔ 6FF
88i ⇔ KINGFUN ⇔ https://789club24.com/
https://98winlive.com/ ⇔ Game bài đổi thưởng
https://bet88yk.com/ ⇔ https://alo789apk.app/
https://33win100.com/ ⇔ https://u888ny.com/
alo789 ⇔ OK8386 ⇔ x88 ⇔ SHBET
https://hi88.voyage/ ⇔ https://79kings.blue/
https://dom88.jp.net/ ⇔ https://hello880.net/
https://789club60.com/ ⇔ https://blc88.net/
23win ⇔ 6ff ⇔ uu88 ⇔ xoso66 ⇔ bomwin
nhatvip ⇔ https://789club24.com/ ⇔ 789 bet
dola789 ⇔ 8xbet ⇔ 78win ⇔ QQ88
XX88 ⇔ ev99 ⇔ 69vn ⇔ rr88 ⇔ rr88
Uu88 ⇔ win456 ⇔ Tài xỉu online ⇔ XN88
https://33win101.com/ ⇔ oxbet ⇔ Slot365
78wind.com ⇔ bet88 ⇔ XX88
VN88 ⇔ 789BET ⇔ OKFUN ⇔ ee88 ⇔ 12bet
hitclub ⇔ Kkwin ⇔ VankhanhTV ⇔ XN88
3WIN ⇔ WIN678 ⇔ KUWIN ⇔ 58WIN
68 game bàiEE88 ⇔ https://taixiu88.pro/
888new.lol ⇔ ok9 football ⇔ K8CC
https://hi88o.com/ ⇔ https://hi88.gives/
https://qq88.co.com/ ⇔ 68 game bài
8xbet ⇔ https://shbetk.net/ ⇔ RIKVIP ⇔ rikvip
https://mm88.us.com/ ⇔ 79king
ww88 ⇔ https://78win.bot/ ⇔ https://13win.vegas/
https://lc88o.com/ ⇔ https://hi88.uno/
https://58win1.info/ ⇔ j88 ⇔ j88 ⇔ 69vn
Slot365 ⇔ alo88 ⇔ UU88 ⇔ 32 win
888TO ⇔ wstar77 ⇔ 73bet ⇔ 888b
11uu ⇔ 123B ⇔ 78win ⇔ Slot365
789f ⇔ mv88 ⇔ 789f ⇔ Bsport
888New ⇔ EV99 ⇔ u88 ⇔ sunwin
tỷ lệ kèo nhà cái hôm nay ⇔ BIN88
https://f8bet0.world ⇔ https://qq88.studio/
https://nh8811.com/ ⇔ Leo88 ⇔ 78win
EV99 ⇔ 3win ⇔ https://cakhiatv88.net/
7m ⇔ i9 Bet ⇔ Tv88 ⇔ hi88 ⇔ 888To
789pu.comhi88 ⇔ au88 ⇔ VN168
EV99 ⇔ socolive ⇔ bet88 ⇔ 555WIN
https://au88.black/ ⇔ trực tiếp bóng đá
https://king88clb.com/ ⇔ https://f168hi.com/
sv66ax88 ⇔ 88clb ⇔ Nn88
https://32win.vc/ ⇔ 888new ⇔ PG88 ⇔ PG88
EE88 ⇔ SanClub ⇔ F168 ⇔ QQ88
hb88 ⇔ Vin777 ⇔ SV388 ⇔ MV66 ⇔ 23WIN
https://vankhanhtvv.com/ ⇔ Nhà Cái LC88
https://789fnew.com/ ⇔ https://u888lm.com/
https://sv66.coupons/ ⇔ https://f168.tech/
https://8kbetbh.com/ ⇔ https://ta88club.kim/
socolivemv88 ⇔ https://rr88.com.se/
https://bet168.com.co/ ⇔ https://8kbet.co/
https://888b-link.cc/ ⇔ https://sunwinn.deal/
88gokingfun ⇔ https://bong88vn.wiki/
SHBET ⇔ https://shbet.racing/
RR99 ⇔ U888 ⇔ OK8386 ⇔ Mv88
MM88 ⇔ 33win ⇔ BL555 ⇔ 69vn
hi88com ⇔ https://w88link1.com/
xocdia88 ⇔ 77ball ⇔ vuabet88 ⇔ betvisa
https://fun88link0.com/ ⇔ https://fun88link1.com/
https://188betlink0.com/ ⇔ https://188betlink1.com/
https://188betlink2.com/ ⇔ https://w88link0.com/
thabet ⇔ 888P ⇔ 11UU ⇔ EV88 ⇔ 789F
69vn77win ⇔ xx88 ⇔ 78win
https://okfun.bz/ ⇔ https://daga88.beer/
QQ88 ⇔ https://i9betz4.com/ ⇔ Kuwin
w88link2.com ⇔ w88link3.com ⇔ 32WIN
https://8dayvip.mobi/ ⇔ https://8dayvip.com/
86bet ⇔ t88 ⇔ af88 ⇔ U888 ⇔ 86bet
https://pg99yk.com/ ⇔ https://u888wl.com/
89bet ⇔ 888new ⇔ 88AA ⇔ GK88
78win01 ⇔ GO99 ⇔ BET88 ⇔ 99win ⇔ TT88
https://8kbettt.com/ ⇔ https://86bet.tech/
https://789betca.com/ ⇔ https://fly88.gifts/
lc88 ⇔ VN88 ⇔ 69vn ⇔ nh88 ⇔ vn88
Tv88 ⇔ 88vv ⇔ sv388 ⇔ KWIN
tỷ lệ kèo nhà cái 88 ⇔ PG66 ⇔ 68win
BL555 ⇔  ⇔ SV388 ⇔ SHBET ⇔ hitclub
MAX79 ⇔ UU88 ⇔ HM88 ⇔ TV88
https://bet88.ventures/ ⇔ bongdalu22.com
zx88 ⇔ ev99 ⇔ 8s ⇔ bet8s ⇔ QQ88
https://f168.name/ ⇔ https://13wincom.io/
Nhà cái vn88 ⇔ Nhà Cái QQ88
https://fb888.in.net/ ⇔ https://kjc.ac/
https://onbet.in.net/ ⇔ link vn88 ⇔ HZ88
http://58win.trading/ ⇔ https://qq88.gives/
bong88 ⇔ sky88 ⇔ Cổng game rikvip ⇔ ev99
79KING ⇔ Bet88 ⇔ XN88 ⇔ i9bet ⇔ VN23
https://kkwin.fan/ ⇔ https://555win.bike/
https://f8bet.courses/ ⇔ https://go8play.com/
https://lc88.bar/ ⇔ 789f ⇔ abc8 ⇔ good88
789win ⇔ Hitclub ⇔ https://f8bet80.one/
lương sơn tv ⇔ vwin ⇔ sut88 ⇔ vua88
hb88 ⇔ https://okfun.center/ ⇔ 68win
LC88 ⇔ 79king ⇔ https://hi88.tours/
https://ok9.charity/ ⇔ https://kkwin68.info/
https://ee88com.me/ ⇔ https://new88blog.org
nổ hũ ⇔ https://uu88vn.com ⇔ nhà cái LC88
nohu ⇔ lc88 com ⇔ 69VN ⇔ Ok365 ⇔ 6FF
Nohu90 ⇔ go8 ⇔ 22vip ⇔ af88 ⇔ 86bet
five88 ⇔ 68win ⇔ 11uu ⇔ https://go8.beer/
đánh bài tiến lên ⇔ sin88 ⇔ 9win ⇔ 88i
https://u888.ac/ ⇔ https://king88com.uk.net/
https://shbet.gg/ ⇔ LC88 ⇔ OKKING
13win ⇔ https://88fc0.com/ ⇔ abc8 ⇔ U888
https://s666.garden ⇔ https://fly88.select/
https://bk8co.net/ ⇔ bet88 ⇔ F168
https://qq8876.net/ ⇔ hi88s com ⇔ f168
https://88xx.mobi/ ⇔ bet88 ⇔ 88clb
GO8 ⇔ https://qq88.social/ ⇔ LC88
https://j88vm.com/ ⇔ https://78winvina.com/
https://luongson161.tv/ ⇔ https://savinovineyards.com/
https://okfun.cfd/ ⇔ https://keonhacai.deals/
https://j88com.today/ ⇔ 28bet ⇔ MB66
https://mk8th.net/ ⇔ https://58win.faith/
Jun88 ⇔ 188v ⇔ https://s8.surf/
https://jun88.school/ ⇔ https://qq887p.com/
https://hi88.biz/ ⇔
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây