Thí dụ về các kiểu cấu trúc lặp trong Pascal

Thứ tư - 29/07/2020 10:11
Thí dụ về các kiểu cấu trúc lặp trong Pascal với các câu lệnh lặp: For, Repeat ... Until, While ... do trong một bài tập cho sẵn.
Thí dụ: Viết chương trình tính tổng bình phương của n số nguyên đầu tiên.
Sn = 12 + 22 + 32 + ... + n2.

• Dùng cấu trúc FOR
PROGRAM Tong_binh_phuong_1 ;
VAR
      S, n, i : Integer ;
BEGIN
      WRITELN ('CHƯƠNG TRÌNH TÍNH TỔNG BÌNH PHƯƠNG*');
      WRITE (‘Bạn muốn tính bao nhiêu số :') ;
      READLN (n) ;
      S := 0 ;
      FOR 1 := 1 TO n DO
           S := S + (i*i) ;
     WRITELN (* Tổng bình phương của :, . 'số là :’ S) ;
     READLN ;
END.

• Dùng cấu trúc WHILE
PROGRAM Tong_binh_phuong_2 ;
VAR
     S, n, i : Integer ;
BEGIN
      WRITELN (*CHƯƠNG TRÌNH TÍNH TỔNG BÌNH PHƯƠNG*');
      WRITE ('Bạn muốn tính bao nhiêu số :') ;
      READLN (n) ;
      S := 0 ;
      i := 1 ;
     WHILE i <= n DO
          BEGIN
               S := s + (i*i) ;
               i := i + 1 ;
          END ;
     WRITELN (’Tổng bình phương của :’, n, 'số là', S) ;
     READLN ;
END.

• Dùng cấu trúc REPEAT ... UNTIL
PROGRAM Tong_Binh_Phuong_3 ;
VAR
      S, n, i : Integer ;
BEGIN
     WRITELN ( CHƯƠNG TRÌNH TÍNH TỔNG BÌNH PHƯƠNG*’);
     WRITE ('Bạn muốn tính bao nhiêu số :');
     READLN (n) ;
     S := 0 ;
     i := 1 ;
     REPEAT
          S:=S + (i*i);
          i := i + 1 ;
    UNTIL i > n ;
    WRITELN (•* Tổng bình phương của', n, 'số là', S) ;
     READLN ;
END.
Trong trường hợp này, ta nên sử dụng cấu trúc nào ? Rõ ràng là cấu trúc FOR gọn hơn.
Còn trường hợp sau đây thì sao ?
Giả sử trong một đoạn chương trình nào đó, ta cần nhập vào một số nguyên dương. Nếu chẳng may gõ vào một sô' âm thì máy yêu cầu nhập lại.
• Nếu viết bằng REPEAT.. UNTIL thì:
...
REPEAT
WRITE ('- Nhập vào 1 số =') ;
READLN (so);
UNTIL so >= 0 ;

Nếu viết bằng WHILE.. DO thì :

WRITE (’- Nhập vào 1 số =') ;
READLN (so) ;
WHILE so <= 0 DO
BEGIN
     WRITE ('- Nhập vào 1 số =') ;
     READLN (so) ;
END ;

Có phải viết bằng cấu trúc REPEAT.. UNTIL rõ ràng và tự nhiên hơn ? Vì vậy trong một chương trình, ta nên lựa chọn chỗ nào thì dùng cấu trúc lặp này, chỗ nào thì dùng cấu trúc khác. Để có được “nghệ thuật” này, chúng ta cần viết nhiều chương trình và tự rút ra kinh nghiệm.

  Ý 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 ⇔ 32win
RR88 ⇔ YO88 ⇔ bk8 ⇔ 123b

Vmax ⇔ SV388 ⇔ cakhiatv ⇔ bet88
789f ⇔ Cakhia TV ⇔ rikvip ⇔ 8x bet
https://qq887p.com/ ⇔ v9bet ⇔ okvip
b52club ⇔ Kkwin ⇔  ⇔ Link MB66
https://88betcom.pro/ ⇔ 8x bet ⇔ 33win
789BET ⇔ shbet ⇔ 32 win ⇔ RR88
MB66 ⇔ Nổ Hũ ⇔ BL555 ⇔ b52 club
https://789betcom0.com/ ⇔ https://hi88.baby/
HZ88 ⇔ đá gà ⇔ luongsontv ⇔ SHBET
hi88.biz ⇔ qq88 ⇔ i9 Bet ⇔ go88
f168 ⇔ 789F ⇔ j88 ⇔ 789win ⇔ 98win
88clb ⇔ 789win ⇔ HUBET ⇔ GK88
F168 ⇔ bet88 ⇔ QQ88 ⇔ bk8 ⇔ bk8
ee88 ⇔ iwinclub ⇔ MBET ⇔ net88
KING88 ⇔ soc88 ⇔ https://j88t3.com/
https://hi88.gives/ ⇔ 23win ⇔ 8kbet
789F ⇔ hi88 ⇔ https://fun88.social/
https://qq88z.net/ ⇔ I9BET ⇔ 7Club
https://qq88.fun/ ⇔ f168 ⇔ HUBET
daga ⇔ SHBET ⇔ keo nha cai ⇔ bl-555.site
https://bshbet.com/ ⇔ https://uk88.rocks
MM88 ⇔ Au88 ⇔ 88AA ⇔ 8kbet
https://luongson117.tv/ ⇔ https://hello8880.net/
xin 88 ⇔ https://78win01.locker/ ⇔ uu88
NOHU ⇔ bj88 live ⇔ 32win ⇔ Kuwin
Bay789 ⇔ w388 ⇔ sv388 ⇔ 23win
WW88 ⇔ https://f168.com.co/
7m ⇔ kuwin ⇔ https://789club24.com/
https://33win103.com/ ⇔ https://f168.group/
https://33win102.com/ ⇔ https://789p.co.com/
https://33win100.com/ ⇔ https://hi88.tours/
https://myeat.net/ ⇔ https://hi88.report/
https://58win1.info/ ⇔ https://f168.giving/
https://new88c.co/ ⇔ https://hello880.net/
https://789club60.com/ ⇔ 789WIN
F168 ⇔ E2BET ⇔ f168 ⇔ f168
88Vv ⇔ https://789club24.com/ ⇔ hi88com
King 88 ⇔ 8xbet ⇔ Kubet ⇔ j88 ⇔ EV88
XX88 ⇔ KUBET ⇔ 99OK ⇔ RR88
88i ⇔ 33win ⇔ http://hi88.uno/
https://33win101.com/ ⇔ SHBET ⇔ Min88
hi88 ⇔ https://shbet.gg/ ⇔ SHBET
https://33winpro.me/ ⇔ https://23win.build
alo789 ⇔ hubet ⇔ UU88 ⇔ TG88
https://shbet.solar/ ⇔ https://daga.help/
https://pg88.ca/ ⇔ https://789win.voyage/
https://u888.prof/ ⇔ https://ww88i.club/
https://hi88.voyage/ ⇔ https://bk8co.net/
cakhiatv ⇔ https://23wincom.info
https://hi88o.com/ ⇔ https://f168.law/
https://88bett.vip/ ⇔ https://j88.ventures/
https://rcc.eu.com/ ⇔ https://j88com.limited/
New88 ⇔ https://j88.now/ ⇔ hi88
kubet ⇔ Okking ⇔ https://33win.software/
https://ww88star.com/ ⇔ vankhanhtv ⇔ ww88
https://88vvcom.net/ ⇔ https://okwin.technology/
bong88 ⇔ j88 ⇔ j88 ⇔ sunwin ⇔ sunwin
No hu ⇔ 888b ⇔ MM88 ⇔ go 88
kuwin ⇔ nhà cái uy tín ⇔ rwin ⇔ dt68
MM88 ⇔ Nh88 ⇔ RR88 ⇔ game sunwin
789win ⇔ https://ok365.fitness/
https://xx88.ink/ ⇔ https://79king.is/
S666 ⇔ xocdia88 ⇔ Sun Win ⇔ Vmax
tỷ lệ kèo nhà cái hôm nay ⇔ Vivu88
https://j88ss.com ⇔ https://qq88.studio/
https://mm88.blue/ ⇔ Link vào Kingfun
Hay 88 ⇔ https://rr882.net/ ⇔ King88
https://789winlem.com/ ⇔ https://cakhiatv88.net/
https://shbet.is/ ⇔ https://13win.london/
https://789win.fund/ ⇔ https://nhacaiuytinso1.net/
nohu ⇔ https://abcvip.ru.com/ ⇔ RR88
https://king88.international/ ⇔ 33win ⇔ 98WIN
https://qq88.racing/ ⇔ https://j88uk.com
https://hubest.co/ ⇔ https://ww88.engineer/
https://muranoglass-shop.cn.com/ ⇔ J88
soi kèo nhà cái ⇔ https://king88.giving/
https://bet88.ventures/ ⇔ trực tiếp bóng đá
https://king88clb.com ⇔ E2bet ⇔ KUBET
https://sh-bet.com/ ⇔ 8xbet app ⇔ King 88
https://32win.vc/ ⇔ 88bet ⇔ PG88 ⇔ PG88
EE88 ⇔ B52Club ⇔ B52 Club ⇔ HB88
HB88 ⇔ Vin777 ⇔ SV388 ⇔ QQ88 ⇔ 32win
https://vankhanhtvv.com/ ⇔ https://luck8.world/
23WIN ⇔ bubet ⇔ https://u888lm.com/
tỷ lệ kèo nhà cái ⇔ 78win ⇔ https://789win01.club/
https://32win.domains/ ⇔ https://sv388.engineering/
https://8kbetbh.com/ ⇔
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