Make your own free website on Tripod.com

º··Õè 6
¤ÓÊÑè§ IF, CASE, GO áÅÐ WHILE loop


¤ÓÊÑè§ IF
     à»ç¹¤ÓÊÑè§·Õèà»ç¹¡ÒÃàÅ×Í¡¡ÃзÓÍÂèÒ§ã´ÍÂèҧ˹Öè§ã¹ 2 ·Ò§

ÃٻẺ·Õè 1

IF à§×èÍ¹ä¢ THEN ¤ÓÊÑè§·Õè 1 ELSE ¤ÓÊÑè§·Õè 2;

     ¤ÇÒÁËÁÒ ¶éÒà§×è͹ä¢à»ç¹¨ÃÔ§ãËé·Ó¤ÓÊÑè§·Õè 1 ËÅѧ THEN ¶éÒà§×è͹ä¢à»ç¹à·ç¨ãËé·Ó¤ÓÊÑè§·Õè 2 ËÅѧ ELSE

ÃٻẺ·Õè 2

IF à§×èÍ¹ä¢ THEN ¤ÓÊÑè§;

     ¤ÇÒÁËÁÒ ¶éÒà§×è͹ä¢à»ç¹¨ÃÔ§à¤Ã×èͧ¨Ð·Ó¤ÓÊÑè§ËÅѧ THEN

µÑÇÍÂèÒ§

PROGRAM EXAM12;
VAR CODE,NAME:STRING;
SCORE:INTEGER;
GRADE:STRING;
BEGIN
WRITELN(‘ENTER SCORE:’);
READLN(SCORE);
IF SCORE>=80 THEN WRITELN(‘GRADE=A’) ELSE
IF SCORE>=70 THEN WRITELN(‘GRADE=B’) ELSE
IF SCORE>=60 THEN WRITELN(‘GRADE=C’) ELSE
IF SCORE>=50 THEN WRITELN(‘GRADE=D’) ELSE
WRITELN(‘GRADE=F’);
END.

¤ÓÊÑè§ CASE
     à»ç¹¤ÓÊÑè§·Õèãªéá·¹¡ÒÃà¢Õ¹ IF Statements ·Õè«Ñº«é͹ ·ÓãËéäÁèµéͧà¢Õ¹ IF «éÓ æ ¡Ñ¹ºèͤÃÑé§

ÃٻẺ

CASE ª×è͵ÑÇá»Ãà§×èÍ¹ä¢ OF
¤èÒµÑÇá»Ã 1 : ¤ÓÊÑè§ 1;
¤èÒµÑÇá»Ã 2 : ¤ÓÊÑè§ 2;
.
.
.
.
¤èÒµÑÇá»Ã n : ¤ÓÊÑè§ n;
ELSE
¤ÓÊÑè§;
END;

µÑÇÍÂèÒ§


PROGRAM EXAM13;
VAR A,B,X:INTEGER;
Y:REAL;
BEGIN
WRITELN(‘ENTER NUMBER’);
READLN(A,B);
WRITELN(‘CHOOSE NUMBER (1,2,3,4) :’);
READLN(X);
CASE X OF
1 : Y := A+B;
2 : Y := A-B;
3 : Y := A*B;
4 : Y := A/B;
ELSE
WRITELN(‘Y=0’);
END;
WRITELN(‘Y=’,Y);
END.

¤ÓÊÑè§ GOTO
     à»ç¹¤ÓÊÑè§·ÕèãËé¢éÒÁä»·Õèã´·Õè˹Öè§ã¹â»Ãá¡ÃÁâ´ÂÁÕà§×èÍ¹ä¢ áÅШÐãËéà»ç¹¡ÒâéÒÁ仢éҧ˹éÒËÃ×Í¢éÒ§ËÅѧ¡çä´é áµè¡ÒÃà¢Õ¹â»Ãá¡ÃÁàÃÒ¨ÐãËéÁѹ¡ÃÐâ´´¢éÒÁä»â´ÂäÁèÁÕ¤ÇÒÁËÁÒÂäÁèä´éà¾ÃÒШзÓãËéÃٻẺ¢Í§â»Ãá¡ÃÁ·Õèà»ç¹â¤Ã§ÊÃéÒ§àÊÕÂä»

µÑÇÍÂèÒ§

PROGRAM EXAM14;
USES CRT;
VAR M:INTEGER;
LABEL X,Y;
BEGIN
CLRSCR;
X:WRITELN(‘ENTER MARK’);
READLN(M);
IF M=99 THEN GOTO Y;
WRITE(‘RESULT= ‘);
CASE M OF
90..100 : WRITELN(‘GRADE=A’);
80-89 : WRITELN(‘GRADE=B’);
70-79 : WRITELN(‘GRADE=C’);
60-69 : WRITELN(‘GRADE=D’);
END;
GOTO X;
Y : WRITELN(‘END PROGRAM’);
READLN;
END.

¼Å·Õèä´é¨Ò¡¡Òà RUN

ENTER MARK

- ãËéãÊè¤Ðá¹¹ áÅéÇ¡´ ENTER
ãËéãÊè¤Ðá¹¹ä»àÃ×èÍÂ æ ¶éÒµéͧ¡ÒÃËÂØ´â»Ãá¡ÃÁ ãËéãÊè¤Ðá¹¹ 99 ¡´ ENTER áÅéÇà¤Ã×èͧ¨Ð¢Öé¹ ENDPROGRAM

¤ÓÊÑè§ While loop
     à»ç¹¤ÓÊÑè§·´Êͺà§×è͹䢷Õèµé¹ loop áÅШзӵÒÁ¤ÓÊÑè§µèÒ§ æ ã¹ loop àÁ×èÍà§×è͹䢷Õè¡Ó˹´äÇéµÍ¹ááÂѧà»ç¹¨ÃÔ§ÍÂÙè

ÃٻẺ

WHILE à§×èÍ¹ä¢ DO ¤ÓÊÑè§;

µÑÇÍÂèÒ§

PROGRAM EXAM15;
VAR COUNT:INTEGER;
BEGIN
COUNT:=1;
WHILE COUNT <= 5 DO
BEGIN
WRITELN(‘HELLO’);
COUNT:=COUNT+1;
END;
WRITELN(‘GOODBYE’);
END.

¼Å·Õèä´é¨Ò¡¡Òà RUN

HELLO
HELLO
HELLO
HELLO
HELLO
GOODBYE


Ẻ½Ö¡ËÑ´
àÃ×èͧ
¤ÓÊÑè§ IF, CASE, GO áÅÐ WHILE loop


1. ¨§à¢Õ¹â»Ãá¡ÃÁ¤Ô´¤èÒ¹éÓ»ÃлҢͧÅÙ¡¤éҨӹǹ 15 ¤¹ â´ÂÁÕà§×è͹䢴ѧ¹Õé
¶éÒãªé¹éÓµèÓ¡ÇèÒ 20 unit äÁèàÊÕÂà§Ô¹
¶éÒãªé¹éÓÃÐËÇèÒ§ 20-40 unit ¤Ô´ unit ÅÐ 3.00 ºÒ·
¶éÒãªé¹éÓÃÐËÇèÒ§ 41-60 unit ¤Ô´ unit ÅÐ 4.00 ºÒ·
¶éÒãªé¹éÓÁÒ¡¡ÇèÒ 60 unit ¤Ô´ unit ÅÐ 6.00 ºÒ·

µÑÇÍÂèÒ§ output
---------------------------------------------------------------------------------------------------------
SUPAB SANGKEAW
71/6 DUSIT
BANGKOK 10300

BEFORE NUMBER 12360 UNIT
AFTER NUMBER 12430 UNIT
TOTAL 70 UNIT
PAYMENT 420 UNIT
---------------------------------------------------------------------------------------------------------