0% found this document useful (0 votes)
35 views

Programming Methodology Lab 2: Conditional & Loop Structures / Program Debugging

This document discusses conditional and loop structures in programming methodology. It introduces the switch structure as an alternative to multiple if-else statements when there are many decision cases based on one condition. It also covers while, for, do-while loops and how to use break and continue statements to control loop flow. Examples are provided to illustrate each structure. Finally, exercises are proposed asking the reader to write programs applying these concepts.

Uploaded by

THIÊN NAM
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Programming Methodology Lab 2: Conditional & Loop Structures / Program Debugging

This document discusses conditional and loop structures in programming methodology. It introduces the switch structure as an alternative to multiple if-else statements when there are many decision cases based on one condition. It also covers while, for, do-while loops and how to use break and continue statements to control loop flow. Examples are provided to illustrate each structure. Finally, exercises are proposed asking the reader to write programs applying these concepts.

Uploaded by

THIÊN NAM
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

721'8&7+$1*81,9(56,7<

 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\


PROGRAMMING METHODOLOGY
Lab 2: Conditional & Loop Structures / Program Debugging

 ,QWURGXFWLRQ

,Q WKLV ODE WXWRULDO ZH ZLOO FRQWLQXH ZLWK FRQGLWLRQDO VWUXFWXUHV DQG VWXG\ ORRS VWUXFWXUH
%HVLGHVWKDWZHLQWURGXFHDWHFKQLTXHWR ILQGSURJUDPPLQJPLVWDNHV ZKLFKFDQFDXVHORJLFDO
HUURUZKHQUXQQLQJ\RXUSURJUDPFDOOHGSURJUDPGHEXJJLQJ

 &RQGLWLRQDO6WUXFWXUHV

,Q/DEZHSUHVHQWHGDEDVLFIRUPRIFRQGLWLRQDOVWUXFWXUHFDOOHGLIHOVH1RZZHVWXG\D
QHZDSSURDFKZKHQZHKDYHPDQ\FDVHVLQPDNLQJGHFLVLRQZLWKRQHFRQGLWLRQ PD\FRQWDLQ
PRUHWKDQRQH%RROHDQH[SUHVVLRQ ,QVWHDGRIGHILQLQJPDQ\LIHOVHVWDWHPHQWVZHFDQXVHVZLWFK
VWUXFWXUHDVIROORZV

switch(expression) {
case const-expr-1: statements
case const-expr-2: statements
case const-expr-3: statements
default: statements
}

(DFKFDVHLVODEHOHGE\RQHRUPRUHLQWHJHUYDOXHGFRQVWDQWVRUFRQVWDQWH[SUHVVLRQV,IDFDVH
PDWFKHVWKHH[SUHVVLRQYDOXHH[HFXWLRQVWDUWVDWWKDWFDVH$OOFDVHH[SUHVVLRQVPXVWEHGLIIHUHQW
7KHFDVHODEHOHGGHIDXOWLVH[HFXWHGLIQRQHRIWKHRWKHUFDVHVDUHVDWLVILHG$GHIDXOWLVRSWLRQDO
LILWLVQ
WWKHUHDQGLIQRQHRIWKHFDVHVPDWFKQRDFWLRQDWDOOWDNHVSODFH&DVHVDQGWKHGHIDXOW
FODXVHFDQRFFXULQDQ\RUGHU

 

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  



721'8&7+$1*81,9(56,7<
 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\

1 // switch.c
2 #include <stdio.h>
3
4 int main()
5 {
6 int choice = 0;
7
8 printf("Enter your choice: ");
9 scanf("%d", &choice);
10
11 switch(choice)
12 {
13 case 0: case 1:
14 printf("Coke\n");
15 break;
16
17 case 2:
18 printf("Coffee\n");
19 break;
20
21 case 3:
22 printf("Tea\n");
23 break;
24
25 default:
26 printf("Water\n");
27 break;
28 }
29 }
)LJXUH6DPSOHSURJUDPXVHVVZLWFK

7KHVDPSOHSURJUDPLQ)LJXUHLOOXVWUDWHVWKHVZLWFKVWUXFWXUH,WFRQWDLQVFDVHVDQGFDVHDQG
KDYHWKHVDPHUHVXOWWKHGHIDXOWFDVHKDQGOHVWKHFKRLFHVZKLFKDUHRXWRISUHGHILQHGFDVHV
7KHPRVWLPSRUWDQWWKLQJWKDW\RXVKRXOGQRWLFHLVHDFKFDVH LQFOGHIDXOW KDVWRKDYH EUHDN
XQOHVV\RXGHILQHEUHDNWKHSURJUDPZLOOFRQWLQXHSURFHVVRWKHUFDVHVXQWLOUHDFKLQJWKHODVWRQH
)RUH[DPSOHLIWKHSURJUDPLQ)LJXUHGRHVQ
WKDYHEUHDNVWDWHPHQWZKHQFKRLFHLVLWZLOO
SULQWRXWDOOFDVHV

 /RRS6WUXFWXUHV

2IWHQLQFRPSXWHUSURJUDPPLQJLWLVQHFHVVDU\WRSHUIRUPDFHUWDLQDFWLRQDFHUWDLQQXPEHU
RIWLPHVRUXQWLODFHUWDLQFRQGLWLRQLVPHW7KHFRQVWUXFWVWKDWHQDEOHFRPSXWHUVWRSHUIRUPFHUWDLQ
UHSHWLWLYHWDVNVDUHFDOOHGORRSV

 ZKLOHORRS

$ZKLOHORRSLVWKHPRVWEDVLFW\SHRIORRSVWUXFWXUH,WZLOOUXQXQWLOWKHFRQGLWLRQLVQRQ
]HUR WUXH  %HIRUH H[HFXWLQJ WKH VWDWHPHQWV LQVLGH ZKLOH ERG\ LW ZLOO FKHFN ZKHWKHU WKH

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  



721'8&7+$1*81,9(56,7<
 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\

FRQGLWLRQLVWUXHWKHQLWH[HFXWHVWKHVWDWHPHQWV<RXVKRXOGQRWHWKDWLQFDVHWKHFRQGLWLRQRI
ORRS QHYHU EHFRPHV IDOVH WKHQ ZH ZLOO IDOO LQWR LQILQLWH ORRS /HW
V WKH VDPSOH SURJUDP LQ
)LJXUH

1 // while.c
2 #include <stdio.h>
3
4 int main()
5 {
6 int i = 0;
7
8 while(i < 10)
9 {
10 printf("No. %d\n", i);
11
12 i = i + 1; // Update the condition
13 }
14 }
)LJXUH6DPSOHSURJUDPXVHVZKLOHORRS

7KH IORZ RI DOO ORRSV FDQ DOVR EH FRQWUROOHG E\ EUHDN DQG FRQWLQXH VWDWHPHQWV $ EUHDN
VWDWHPHQW ZLOO LPPHGLDWHO\ H[LW WKH HQFORVLQJ ORRS $ FRQWLQXH VWDWHPHQW ZLOO VNLS WKH
UHPDLQGHURIWKHEORFNDQGVWDUWDWWKHFRQWUROOLQJFRQGLWLRQDOVWDWHPHQWDJDLQ

 IRUORRS

7KHVWUXFWXUHRIIRUORRSLVDVLQ)LJXUHWKHLQLWLDOL]DWLRQVWDWHPHQWLVH[HFXWHGRQO\RQH
EHIRUHWKHILUVWHYDOXDWLRQRIWHVWFRQGLWLRQ7\SLFDOO\LWLVXVHGWRDVVLJQDQLQLWLDOYDOXHWR
VRPHYDULDEOH DOWKRXJK WKLVLV QRW VWULFWO\QHFHVVDU\ 7KHWHVW H[SUHVVLRQLV HYDOXDWHGHDFK
WLPHEHIRUHWKHFRGHLQWKHIRUORRSH[HFXWHV$IWHUHDFKLWHUDWLRQRIWKHORRSWKHLQFUHPHQW
VWDWHPHQWLVH[HFXWHG7KLVRIWHQLVXVHGWRLQFUHPHQWWKHORRSLQGH[IRUWKHORRSWKHYDULDEOH
LQLWLDOL]HGLQWKHLQLWLDOL]DWLRQH[SUHVVLRQDQGWHVWHGLQWKHWHVWH[SUHVVLRQ

1 // for.c
2 #include <stdio.h>
3
4 int main()
5 {
6 int i = 0;
7
8 for(i = 0; i < 10; i++)
9 {
10 printf("No. %d\n", i);
11 }
12 }
)LJXUH6DPSOHSURJUDPXVHVIRUORRS

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  



721'8&7+$1*81,9(56,7<
 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\

 GRZKLOHORRS

$GRZKLOHORRSLVDSRVWFKHFNZKLOHORRSZKLFKPHDQVWKDWLWFKHFNVWKHFRQGLWLRQDIWHU
HDFKUXQ$VDUHVXOWHYHQLIWKHFRQGLWLRQLV]HUR IDOVH LWZLOOUXQDWOHDVWRQFH

1 // dowhile.c
2 #include <stdio.h>
3
4 int main()
5 {
6 int i = 1;
7
8 do {
9 printf("No. %d\n", i);
10 } while(i < 1);
11 }

$ GRZKLOH ORRS VRPHWLPHV XVHV LQ YDOLGDWLQJ D XVHU


V LQSXW )RU H[DPSOH LI \RX ZDQW WR
YDOLGDWH ZKHWKHU DQ LQSXW LV FRUUHFW RU QRW \RX FDQ WDNH DGYDQWDJH RI GRZKLOH ORRS DV
IROORZLQJSURJUDP

1 #include <stdio.h>
2
3 int main()
4 {
5 int input, i = 0;
6
7 do {
8 printf("Input = ");
9 scanf("%d", &input);
10
11 // Control number of loops
12 i++;
13 } while(input < 0);
14
15 printf("Input is a positive integer number!");
16
17 }

 ([HUFLVHV

 :ULWHD&SURJUDPWRSULQWVXPRIDOOHYHQQXPEHUVEHWZHHQWRQE\XVLQJWKUHHORRS
VWUXFWXUHV9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

 :ULWHD&SURJUDPWRSULQWVXPRIDOOHYHQQXPEHUVEHWZHHQWRQE\XVLQJWKUHHORRS
VWUXFWXUHV9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

 :ULWHD&SURJUDPWRSULQWWDEOHRIDQ\QXPEHU

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  



721'8&7+$1*81,9(56,7<
 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\

 :ULWHD&SURJUDPWRHQWHUDQ\QXPEHUDQGFDOFXODWHVXPRIDOOQDWXUDOQXPEHUVEHWZHHQ
WRQE\XVLQJWKUHHORRSVWUXFWXUHV9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFW
SURPSWXVHUWRHQWHULWDJDLQ

 :ULWHD&SURJUDPWRILQGILUVWDQGODVWGLJLWVRIDQ\QXPEHU

 :ULWHD&SURJUDPWRFDOFXODWHVXPRIGLJLWVRIDQ\QXPEHU

 :ULWHD&SURJUDPWRFDOFXODWHSURGXFWRIGLJLWVRIDQ\QXPEHU

 :ULWHD&SURJUDPWRFRXQWQXPEHURIGLJLWVLQDQ\QXPEHU

 :ULWHD&SURJUDPWRVZDSILUVWDQGODVWGLJLWVRIDQ\QXPEHU

:ULWHD&SURJUDPWRHQWHUDQ\QXPEHUDQGSULQWLWVUHYHUVH

:ULWHD&SURJUDPWRHQWHUDQ\QXPEHUDQGFKHFNZKHWKHUWKHQXPEHULVSDOLQGURPHRU
QRW

:ULWHD&SURJUDPWRFKHFNZKHWKHUDQXPEHULV3ULPHQXPEHURUQRW9DOLGDWLQJWKHLQSXW
LQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

:ULWHD&SURJUDPWRFKHFNZKHWKHUDQXPEHULV$UPVWURQJQXPEHURUQRW

:ULWHD&SURJUDPWRFKHFNZKHWKHUDQXPEHULV3HUIHFWQXPEHURUQRW

:ULWHD&SURJUDPWRSULQWDOO3ULPHQXPEHUVEHWZHHQWRQE\XVLQJWKUHHORRSVWUXFWXUHV
9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

:ULWH D & SURJUDP WR SULQW DOO $UPVWURQJ QXPEHUV EHWZHHQ  WR Q E\ XVLQJ WKUHH ORRS
VWUXFWXUHV9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

:ULWH D & SURJUDP WR SULQW DOO 3HUIHFW QXPEHUV EHWZHHQ  WR Q E\ XVLQJ WKUHH ORRS
VWUXFWXUHV9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXWLVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

:ULWHD&SURJUDPWRFRQYHUW'HFLPDOWR%LQDU\QXPEHUV\VWHP

:ULWHD&SURJUDPWRFRPSXWHWKH)DFWRULDORIQ9DOLGDWLQJWKHLQSXWLQFDVHWKHLQSXW
LVQ
WFRUUHFWSURPSWXVHUWRHQWHULWDJDLQ

݊Ǩ ൌ ͳ ή ʹ ή ͵ ή ǥ ή ݊Ǥሺ݊ ൒ Ͳሻ

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  



721'8&7+$1*81,9(56,7<
 )DFXOW\RI,QIRUPDWLRQ7HFKQRORJ\

 5HIHUHQFH

>@ %ULDQ:.HUQLJKDQ 'HQQLV5LWFKLH  &3URJUDPPLQJ/DQJXDJHQG(GLWLRQ


3UHQWLFH+DOO
>@ 3DXO'HLWHO +DUYH\'HLWHO  &+RZWR3URJUDPWK(GLWLRQ3UHQWLFH+DOO
>@ &3URJUDPPLQJ7XWRULDO  7XWRULDOV3RLQW
>@ &3URJUDPPLQJ  :LNLERRNV

Phuc Duong – http://it.tdt.edu.vn/~dhphuc  




You might also like