&RPSXWHU3URJUDPPLQJ ^ SULQWI³?Q(QWHUDQ\\QXPEHU´ VFDQI³G´ QXP SXWZQXPIS SULQWI³?Q'R\\RXZDQWWRDQRWKHUQXPEHU´ FK JHWFKH `ZKLOHFK µ\\¶__FK µ<¶ SULQWI³?Q'DWDZULWWHQVXFFHVVIXOO\\´ IFORVHIS ` 2XWSXW (QWHUDQ\\QXPEHU 'R\\RXZDQWWRDQRWKHUQXPEHU\\ (QWHUDQ\\QXPEHU 'R\\RXZDQWWRDQRWKHUQXPEHU\\ (QWHUDQ\\QXPEHU 'R\\RXZDQWWRDQRWKHUQXPEHUQ 'DWDZULWWHQVXFFHVVIXOO\\ ,QWKHDERYHH[DPSOHVWDWHPHQWZLOOFUHDWHDILOHQDPHGILOHW[WLQZULWHPRGH6WDWHPHQW LVDORRSZKLFKWDNHLQWHJHUYDOXHVIURPXVHUDQGZULWHWKHYDOXHVWRWKHILOH IUHDGDQGIZULWH 7KHIXQFWLRQVIUHDGIZULWHDUHXVHGIRUUHDGLQJZULWLQJGDWDIURPWRWKHILOHRSHQHGE\\IRSHQ IXQFWLRQ7KHVHIXQFWLRQVDFFHSWWKUHHDUJXPHQWV7KHILUVWDUJXPHQWLVDSRLQWHUWREXIIHUXVHGIRU UHDGLQJZULWLQJWKHGDWD7KHGDWDUHDGZULWWHQLVLQWKHIRUPRIµQPHPE¶HOHPHQWVHDFKµVL]H¶E\\WHV ORQJ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
)LOH 0DQDJHPHQW ,QFDVHRIVXFFHVVIUHDGIZULWHUHWXUQWKHQXPEHURIE\\WHVDFWXDOO\\UHDGZULWWHQIURPWRWKH VWUHDPRSHQHGE\\IRSHQIXQFWLRQ,QFDVHRIIDLOXUHDOHVVHUQXPEHURIE\\HVWKHQUHTXHVWHGWRUHDG ZULWHLVUHWXUQHG 2SHQ5HDGDQGFORVHDILOHUHDGLQJVWULQJE\\VWULQJ LQFOXGHVWGLRK! LQWPDLQ ^ ),/( IS FKDUGDWD>@ SULQWI³2SHQLQJWKHILOHNLUDQFLQUHDGPRGH´ IS IRSHQ³NLUDQF´³U´ LIIS 18// ^ SULQWI³&RXOGQRWRSHQILOHNLUDQF´ ` SULQWI³5HDGLQJWKHILOHNLUDQF´ ZKLOHIJHWVGDWDIS 18// SULQWI³V´GDWD SULQWI³&ORVLQJWKHILOHNLUDQF´ IFORVHIS ` 2XWSXW 2SHQLQJWKHILOHNLUDQFLQUHDGPRGH 5HDGLQJWKHILOHNLUDQF +DL+RZDUH\\RX\" &ORVLQJWKHILOHNLUDQF &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 2SHQZULWHDQGFORVHDILOH LQFOXGHVWGLRK! LQFOXGHVWULQJK! LQWPDLQ ^ ),/( IS FKDUGDWD>@ RSHQLQJDQH[LVWLQJILOH SULQWI³2SHQLQJWKHILOHNLUDQFLQZULWHPRGH´ IS IRSHQ³NLUDQF´³Z´ LIIS 18// ^ SULQWI³&RXOGQRWRSHQILOHNLUDQF´ ` SULQWI³?Q(QWHUVRPHWH[WIURPNH\\ERDUG´? ³WRZULWHLQWKHILOHNLUDQF´ JHWWLQJLQSXWIURPXVHU ZKLOHVWUOHQJHWVGDWD! ^ ZULWLQJLQWKHILOH ISXWVGDWDIS ISXWV³?Q´IS ` FORVLQJWKHILOH SULQWI³&ORVLQJWKHILOHNLUDQF´ IFORVHIS ` &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
)LOH 0DQDJHPHQW 2XWSXW 2SHQ,QJ7KH)LOH.LUDQF,Q:ULWH0RGH (QWHU6RPH7H[W)URP.H\\ERDUG7R:ULWH,Q7KH)LOH.LUDQF +DL+RZDUH\\RX\" &ORVLQJWKHILOHNLUDQF IVHHN 7KHIVHHNIXQFWLRQLVXVHGWRVHWWKHILOHSRVLWLRQLQGLFDWRUIRUWKHVWUHDPWRDQHZSRVLWLRQ 7KLVIXQFWLRQDFFHSWVWKUHHDUJXPHQWV7KHILUVWDUJXPHQWLVWKH),/(VWUHDPSRLQWHUUHWXUQHGE\\ WKHIRSHQIXQFWLRQ7KHVHFRQGDUJXPHQWµRIIVHW¶WHOOV WKHDPRXQWRIE\\WHVWRVHHN7KHWKLUG DUJXPHQWµZKHQFH¶WHOOVIURPZKHUHWKHVHHNRIµRIIVHW¶QXPEHURIE\\WHVLVWREHGRQH7KHDYDLODEOH YDOXHV IRU ZKHQFH DUH 6((.B6(7 6((.B&85 RU 6((.B(1' 7KHVH WKUHH YDOXHV LQ RUGHU GHSLFWWKHVWDUWRIWKHILOHWKHFXUUHQWSRVLWLRQDQGWKHHQGRIWKHILOH 8SRQVXFFHVVWKLVIXQFWLRQUHWXUQVRWKHUZLVHLWUHWXUQV LQWIVHHN),/( VWUHDPORQJRIIVHWLQWZKHQFH 7RSHUIRUP,QSXW2XWSXW2SHUDWLRQRQILOHVZHQHHGEHORZIXQFWLRQV 7DEOH,QSXW2XWSXW)XQFWLRQV 61R )XQFWLRQ 2SHUDWLRQ 6\\QWD[ JHWF 5HDGDFKDUDFWHUIURPDILOH JHWFIS SXWF :ULWHDFKDUDFWHULQILOH SXWFFIS ISULQWI 7RZULWHVHWRIGDWDLQILOH ISULQWIIS³FRQWUROVWULQJ´OLVW IVFDQI 7RUHDGVHWRIGDWDIURPILOH IVFDQIIS³FRQWUROVWULQJ´OLVW JHWZ 7RUHDGDQLQWHJHUIURPDILOH JHWZIS SXWZ 7RZULWHDQLQWHJHULQILOH SXWZLQWHJHUIS LQFOXGHVWGLRK! LQFOXGHVWULQJK! GHILQH6,=( GHILQH180(/(0 &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ YRLGPDLQYRLG ^ ),/( IG 18// FKDUEXII>@ PHPVHWEXIIVL]HRIEXII IG IRSHQ³NLUDQW[W´³UZ´ LI18// IG ^ SULQWI³?QIRSHQ(UURU?Q´ UHWXUQ ` SULQWI³?Q)LOHRSHQHGVXFFHVVIXOO\\WKURXJKIRSHQ?Q´ LI6,=( 180(/(0 IUHDGEXII6,=(180(/(0IG ^ SULQWI³?QIUHDGIDLOHG?Q´ UHWXUQ ` SULQWI³?Q6RPHE\\WHVVXFFHVVIXOO\\UHDGWKURXJKIUHDG?Q´ SULQWI³?Q7KHE\\WHVUHDGDUH>V@?Q´EXII LI IVHHNIG6((.B&85 ^ SULQWI³?QIVHHNIDLOHG?Q´ UHWXUQ ` SULQWI³?QIVHHNVXFFHVVIXO?Q´ LI6,=( 180(/(0 IZULWHEXII6,=(VWUOHQEXIIIG &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
)LOH 0DQDJHPHQW ^ SULQWI³?QIZULWHIDLOHG?Q´ UHWXUQ ` SULQWI³?QIZULWHVXFFHVVIXOGDWDZULWWHQWRWH[WILOH?Q´ IFORVHIG SULQWI³?Q)LOHVWUHDPFORVHGWKURXJKIFORVH?Q´ JHWFK ` 7KHFRGHDERYHDVVXPHVWKDW\\RXKDYHDWHVWILOH³NLUDQW[W´SODFHGLQWKHVDPHORFDWLRQIURP ZKHUHWKLVH[HFXWDEOHZLOOEHUXQ ,QLWLDOO\\WKHFRQWHQWLQILOHLV FDWNLUDQW[W KHOORHYHU\\ERG\\ 1RZUXQWKHFRGH ILOH+DQGOLQJ )LOHRSHQHGVXFFHVVIXOO\\WKURXJKIRSHQ 6RPHE\\WHVVXFFHVVIXOO\\UHDGWKURXJKIUHDG 7KHE\\WHVUHDGDUH>KHOOR@ IVHHNVXFFHVVIXO IZULWHVXFFHVVIXOGDWDZULWWHQWRWH[WILOH )LOHVWUHDPFORVHGWKURXJKIFORVH $JDLQFKHFNWKHFRQWHQWVRIWKHILOHNLUDQW[W$V\\RXVHHEHORZWKHFRQWHQWRIWKHILOHZDV PRGLILHG FDWNLUDQW[W KHOORHYHU\\ERG\\ KHOOR &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ ,QEXLOW)LOH+DQGOLQJ)XQFWLRQVLQ&/DQJXDJH &SURJUDPPLQJODQJXDJHRIIHUVPDQ\\LQEXLOWIXQFWLRQVIRUKDQGOLQJILOHV7KH\\DUHJLYHQEHORZ 7DEOH)LOH+DQGLQJ)XQFWLRQV )LOHKDQGOLQJIXQFWLRQV 'HVFULSWLRQ IRSHQ IRSHQIXQFWLRQFUHDWHVDQHZILOHRURSHQVDQH[LVWLQJILOH IFORVH IFORVHIXQFWLRQFORVHVDQRSHQHGILOH JHWZ JHWZIXQFWLRQUHDGVDQLQWHJHUIURPILOH SXWZ SXWZIXQFWLRQVZULWHVDQLQWHJHUWRILOH JHWFIJHWF JHWFDQGIJHWFIXQFWLRQVUHDGDFKDUDFWHUIURPILOH SXWFISXWF SXWFDQGISXWFIXQFWLRQVZULWHDFKDUDFWHUWRILOH IJHWV IJHWVIXQFWLRQUHDGVVWULQJIURPDILOHRQHOLQHDWDWLPH ISXWV ISXWVIXQFWLRQZULWHVVWULQJWRDILOH IHRI IHRIIXQFWLRQILQGVHQGRIILOH IJHWFKDU IJHWFKDUIXQFWLRQUHDGVDFKDUDFWHUIURPNH\\ERDUG IJHWF IJHWFIXQFWLRQUHDGVDFKDUDFWHUIURPILOH ISULQWI ISULQWIIXQFWLRQZULWHVIRUPDWWHGGDWDWRDILOH IVFDQI IVFDQIIXQFWLRQUHDGVIRUPDWWHGGDWDIURPDILOH IJHWFKDU IJHWFKDUIXQFWLRQUHDGVDFKDUDFWHUIURPNH\\ERDUG ISXWFKDU ISXWFKDUIXQFWLRQZULWHVDFKDUDFWHUIURPNH\\ERDUG IVHHN IVHHNIXQFWLRQPRYHVILOHSRLQWHUSRVLWLRQWRJLYHQORFDWLRQ 6((.B6(7 6((.B6(7PRYHVILOHSRLQWHUSRVLWLRQWRWKHEHJLQQLQJRIWKHILOH 6((.B&85 6((.B&85PRYHVILOHSRLQWHUSRVLWLRQWRJLYHQORFDWLRQ 6((.B(1' 6((.B(1'PRYHVILOHSRLQWHUSRVLWLRQWRWKHHQGRIILOH IWHOO IWHOOIXQFWLRQJLYHVFXUUHQWSRVLWLRQRIILOHSRLQWHU UHZLQG UHZLQGIXQFWLRQPRYHVILOHSRLQWHUSRVLWLRQWRWKHEHJLQQLQJRIWKHILOH VFDQI VFDQIIXQFWLRQUHDGVIRUPDWWHGGDWDIURPNH\\ERDUG VVFDQI VVFDQIIXQFWLRQ5HDGVIRUPDWWHGLQSXWIURPDVWULQJ UHPRYH UHPRYHIXQFWLRQGHOHWHVDILOH IIOXVK IIOXVKIXQFWLRQIOXVKHVDILOH &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
)LOH 0DQDJHPHQW 6XPPDU\\ 6RIDUWKHRSHUDWLRQVXVLQJ&SURJUDPDUHGRQHRQDSURPSWWHUPLQDOZKLFKLVQRWVWRUHG DQ\\ZKHUH%XWLQWKHVRIWZDUHLQGXVWU\\PRVWRIWKHSURJUDPVDUHZULWWHQWRVWRUHWKHLQIRUPDWLRQ IHWFKHG IURP WKH SURJUDP 2QH VXFK ZD\\ LV WR VWRUH WKH IHWFKHG LQIRUPDWLRQ LQ D ILOH 'LIIHUHQW RSHUDWLRQVWKDWFDQEHSHUIRUPHGRQDILOHDUH &UHDWLRQRIDQHZILOHIRSHQZLWKDWWULEXWHVDV³D´RU³D´RU³Z´RU³Z´ 2SHQLQJDQH[LVWLQJILOHIRSHQ 5HDGLQJIURPILOHIVFDQIRUIJHWF :ULWLQJWRDILOHISULQWIRUISXWV 0RYLQJWRDVSHFLILFORFDWLRQLQDILOHIVHHNUHZLQG &ORVLQJDILOHIFORVH 7KHWH[WLQWKHEUDFNHWVGHQRWHVWKHIXQFWLRQVXVHGIRUSHUIRUPLQJWKRVHRSHUDWLRQV .H\\:RUGV$EEUHYLDWLRQV z )LOH:KLOHGRLQJILOHKDQGOLQJZHRIWHQXVH),/(IRUGHFODULQJWKHSRLQWHULQRUGHUWR SRLQWWRWKHILOHZHZDQWWRUHDGIURPRUWRZULWHRQ z $SSHQG$SSHQGPRGHLVXVHGWRDSSHQGRUDGGGDWD WRWKHH[LVWLQJGDWDRIILOHLI DQ\\+HQFHZKHQ\\RXRSHQDILOHLQ$SSHQGDPRGHWKHFXUVRULVSRVLWLRQHGDWWKH HQGRIWKHSUHVHQWGDWDLQWKHILOH z $6&,,$EEUHYLDWHGIURP$PHULFDQ6WDQGDUG&RGHIRU,QIRUPDWLRQ,QWHUFKDQJH /HDUQLQJ$FWLYLW\\ :ULWHDSURJUDPLQ&WRFRS\\FRQWHQWVRIRQHILOHLQWRRWKHUILOH BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB :ULWHDSURJUDPLQ&WRZULWHDVWULQJLQWRILOHWLPHV BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ :ULWHDSURJUDPLQ&WRFRPELQHFRQWHQWVRIWZRILOHVLQWKLUGILOH BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 8QLW(QG4XHVWLRQV0&4DQG'HVFULSWLYH $'HVFULSWLYH7\\SH6KRUW$QVZHU7\\SH4XHVWLRQV :ULWHDVKRUWQRWHRQILOHKDQGOLQJLQ& :KDWDUHWKHWZRW\\SHVRIILOHKDQGOLQJLQ&\" ([SODLQGLIIHUHQWLQSXWRXWSXWIXQFWLRQVIRU& ([SODLQGLIIHUHQWILOHRSHUDWLRQVLQ&ODQJXDJH ([SODLQGLIIHUHQWILOH0RGHVLQ&/DQJXDJH ([SODLQGLIIHUHQFHEHWZHHQWH[WILOHDQGELQDU\\ILOHKDQGOLQJLQ&SURJUDPPLQJODQJXDJH 'LVWLQJXLVKEHWZHHQISULQWILLIVFDQI ([SODLQZKDWDUHGLIIHUHQWPHWKRGVWRUHDGWH[WILOHZLWKV\\QWD[DQGVXLWDEOHH[DPSOH ([SODLQKRZWRUHDGDQGZULWHELQDU\\ILOHVZLWKVXLWDEOHH[DPSOH ([SODLQZKDWDUHGLIIHUHQWPHWKRGVWRZULWHLQWRDILOHZLWKV\\QWD[DQGVXLWDEOHH[DPSOH ([SODLQIRSHQIFORVHIXQFWLRQVZLWKVXLWDEOHH[DPSOH ([SODLQIJHWFDQGIJHWVIXQFWLRQVZLWKVXLWDEOHH[DPSOHV ([SODLQJHWZDQGSXWZIXQFWLRQVZLWKVXLWDEOHH[DPSOH ([SODLQIUHDGDQGIZULWHDQGIVHHNIXQFWLRQVZLWKVXLWDEOHH[DPSOH %0XOWLSOH&KRLFH2EMHFWLYH7\\SH4XHVWLRQV :KDWLVWKHIXQFWLRQRIWKHPRGHµZ¶\" D FUHDWHWH[WILOHIRUZULWLQJGLVFDUGSUHYLRXVFRQWHQWVLIDQ\\ E FUHDWHWH[WILOHIRUXSGDWHGLVFDUGSUHYLRXVFRQWHQWVLIDQ\\ F FUHDWHWH[WILOHIRUZULWLQJGRQRWGLVFDUGSUHYLRXVFRQWHQWVLIDQ\\ G FUHDWHWH[WILOHIRUXSGDWHGRQRWGLVFDUGSUHYLRXVFRQWHQWVLIDQ\\ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
)LOH 0DQDJHPHQW (2)LVDQLQWHJHUW\\SHGHILQHGLQVWGLRKDQGKDVDYDOXHBBBBBBBBBBBB D E F 18// G ± IZULWHFDQEHXVHGRQO\\ZLWKILOHVWKDWDUHRSHQHGLQELQDU\\PRGH D WUXH E IDOVH :KLFKRIWKHIROORZLQJWUXHDERXW),/( IS\" D ),/(LVDNH\\ZRUGLQ&IRUUHSUHVHQWLQJILOHVDQGISLVDYDULDEOHRI),/(W\\SH E ),/(LVDVWUHDP F ),/(LVDEXIIHUHGVWUHDP G ),/(LVDVWUXFWXUHDQGISLVDSRLQWHUWRWKHVWUXFWXUHRI),/(W\\S 7KHILUVWDQGVHFRQGDUJXPHQWVRIIRSHQDUH D $FKDUDFWHUVWULQJFRQWDLQLQJWKHQDPHRIWKHILOH WKHVHFRQGDUJXPHQWLVWKH PRGH E $FKDUDFWHUVWULQJFRQWDLQLQJWKHQDPHRIWKHXVHU WKHVHFRQGDUJXPHQWLVWKH PRGH F $FKDUDFWHUVWULQJFRQWDLQLQJILOHSRLQWHU WKHVHFRQGDUJXPHQWLVWKHPRGH G 1RQHRIWKHPHQWLRQHG $QVZHUV EGDGD 5HIHUHQFHV KWWSVZZZJHHNVIRUJHHNVRUJEDVLFVILOHKDQGOLQJF KWWSOHWVILQGFRXUVHFRPWHFKQLFDOTXHVWLRQVFILOHKDQGOLQJ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 35$&7,&$/ &%$6,&6$1'&21752/ 81,7 6758&785( 352*5$067281'(567$1'7+(%$6,&'$7$7<3($1',2 :ULWHDSURJUDPWKDW UHDGVWZRQRVIURPNH\\ERDUGDQGJLYHVWKHLUDGGLWLRQ VXEWUDFWLRQPXOWLSOLFDWLRQGLYLVLRQDQGPRGXOR SURJUDPWRSULQWVXPVXEPXOGLYRIWZRQXPEHUV LQFOXGHVWGLRK! LQFOXGHFRQLRK! YRLGPDLQ ^ LQWDEVXPPXOGLYVXE FOUVFU SULQWI(QWHU)LUVWQXPEHU VFDQIG D SULQWIHQWHU6HFRQGQXPEHU VFDQIG E VXP DE SULQWI?Q$GGLWLRQRIWZRQXPEHUVLVGVXP VXE DE SULQWI?QVXEVWUDFWLRQRIWZRQXPEHUVLVGVXE PXO D E SULQWI?QPXOWLSOLFDWLRQRIWZRQXPEHUVLVGPXO GLY DE SULQWI?QGLYLVLRQRIWZRQXPEHUVLVGGLY PRG DE &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
& %DVLFVDQG &RQWURO 6WUXFWXUH SULQWI?Q0RGXOXVRIWZRQXPEHUVLVGPRG JHWFK ` 2XWSXW 7KH GLVWDQFH EHWZHHQ WZR FLWLHV ,Q .0LV LQSXW WKURXJK NH\\ERDUG:ULWH D SURJUDPWRFRQYHUWDQGSULQWWKLVGLVWDQFHLQPHWUHVIHHWLQFKHVDQGFHQWLPHWUHV LQFOXGHVWGLRK! LQFOXGHFRQLRK! YRLGPDLQ ^ IORDWNPPFPILQ FOUVFU SULQWI(QWHUGLVWDQFHLQNLORPHWUHV VFDQII NP P NP FP NP I NP LQ NP SULQWI7KHGLVWDQFHLQIHHWI?QI SULQWI7KHGLVWDQFHLQLQFKHVI?QLQ SULQWI7KHGLVWDQFHLQPHWUHVI?QP SULQWI7KHGLVWDQFHLQ&HQWLIHHWI?QFP JHWFK ` &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 2XWSXW :ULWHD&SURJUDPWRSHUIRUPSRVWDQGSUHLQFUHPHQWSRVWDQGSUHGHFUHPHQW RSHUDWLRQV ,QFUHPHQWDQG'HFUHPHQW2SHUDWRUVLQ&([DPSOH LQFOXGHVWGLRK! LQWPDLQ ^ LQW[ \\ SULQWI,1&5(0(1723(5$725(;$03/(?Q SULQWI9DOXHRI[G?Q[2ULJLQDO9DOXH SULQWI9DOXHRI[G?Q[8VLQJLQFUHPHQW2SHUDWRU SULQWI9DOXHRI[G?Q[,QFUHPHQWHGYDOXH SULQWI'(&5(0(1723(5$725(;$03/(?Q SULQWI9DOXHRI\\G?Q\\2ULJLQDO9DOXH SULQWI9DOXHRI\\G?Q\\XVLQJGHFUHPHQW2SHUDWRU SULQWI9DOXHRI\\G?Q\\GHFUHPHQWHGYDOXH UHWXUQ ` 2XWSXW &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
& %DVLFVDQG &RQWURO 6WUXFWXUH :ULWHDSURJUDPZKLFKLPSOHPHQWVWKHZRUNLQJRIDOO%LWZLVHRSHUDWRUV LQFOXGHVWGLRK! LQWPDLQ ^ LQWP Q $1'BRSU25BRSU;25BRSU127BRSU $1'BRSU P Q 25BRSU P_Q 127BRSU aP ;25BRSU PAQ SULQWI$1'BRSUYDOXH G?Q$1'BRSU SULQWI25BRSUYDOXH G?Q25BRSU SULQWI127BRSUYDOXH G?Q127BRSU SULQWI;25BRSUYDOXH G?Q;25BRSU SULQWIOHIWBVKLIWYDOXH G?QP SULQWIULJKWBVKLIWYDOXH G?QP!! ` 2XWSXW $1'BRSUYDOXH 25BRSUYDOXH 127BRSUYDOXH ;25BRSUYDOXH OHIWBVKLIWYDOXH ULJKWBVKLIWYDOXH :ULWHDSURJUDPWRVHOHFWDQGSULQWWKHODUJHVWRIWKHWKUHHQRVXVLQJ1HVWHG,I (OVHVWDWHPHQW LQFOXGHVWGLRK! LQWPDLQ^ GRXEOHQQQ SULQWI(QWHUWKUHHQXPEHUV VFDQIOIOIOI Q Q Q &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ LIQ! Q^ LIQ! Q SULQWIOILVWKHODUJHVWQXPEHUQ HOVH SULQWIOILVWKHODUJHVWQXPEHUQ `HOVH^ LIQ! Q SULQWIOILVWKHODUJHVWQXPEHUQ HOVH SULQWIOILVWKHODUJHVWQXPEHUQ ` UHWXUQ ` 2XWSXW (QWHUWKUHHQXPEHUV LVWKHODUJHVWQXPEHU :ULWHDSURJUDPWRSHUIRUPDULWKPHWLFRSHUDWLRQVXVLQJVZLWFKFDVH LQFOXGHVWGLRK! LQWPDLQ^ FKDURSHUDWRU GRXEOHILUVWVHFRQG SULQWI(QWHUDQRSHUDWRU VFDQIF RSHUDWRU SULQWI(QWHUWZRRSHUDQGV VFDQIOIOI ILUVW VHFRQG &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
& %DVLFVDQG &RQWURO 6WUXFWXUH VZLWFKRSHUDWRU^ FDVH SULQWIOIOI OIILUVWVHFRQGILUVWVHFRQG EUHDN FDVH SULQWIOIOI OIILUVWVHFRQGILUVWVHFRQG EUHDN FDVH SULQWIOI OI OIILUVWVHFRQGILUVW VHFRQG EUHDN FDVH SULQWIOIOI OIILUVWVHFRQGILUVWVHFRQG EUHDN RSHUDWRUGRHVQ WPDWFKDQ\\FDVHFRQVWDQW GHIDXOW SULQWI(UURURSHUDWRULVQRWFRUUHFW ` UHWXUQ ` 2XWSXW (QWHUDQRSHUDWRU (QWHUWZRRSHUDQGV :ULWHDSURJUDPWRILQGVXPRIDOOLQWHJHUVJUHDWHUWKDQDQGOHVVWKDQ DQGDUHGLYLVLEOHE\\ LQFOXGHVWGLRK! LQFOXGHFRQLRK! YRLGPDLQ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ ^ LQWLVXP FOUVFU SULQWI?Q1XPEHUVEHWZHHQDQGZKLFKLVGLYLVLEOHE\\ IRUL LL ^ LIL ^ SULQWI?QGL VXP VXPL ` ` SULQWI?QVXP GVXP JHWFK ` 2XWSXW 1XPEHUVEHWZHHQDQGZKLFKLVGLYLVLEOHE\\ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
& %DVLFVDQG &RQWURO 6WUXFWXUH VXP :ULWHD&SURJUDPWRLPSOHPHQW H[ [ [ [ ó 3URJUDPIRU([SRQHQWLDO6HULHV LQFOXGHVWGLRK! LQFOXGHFRQLRK! YRLGPDLQ ^ LQWLQ IORDW[VXP W FOUVFU SULQWI³(QWHUWKHYDOXHIRU[³ VFDQI³I´ [ SULQWI³?Q(QWHUWKHYDOXHIRUQ³ VFDQI³G´ Q /RRSWRFDOFXODWHWKHYDOXHRI([SRQHQWLDO IRUL L QL ^ W W [L VXP VXPW ` SULQWI³?Q7KH([SRQHQWLDO9DOXHRII I´[VXP JHWFK ` 2XWSXW &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 35$&7,&$/ $55$<6675,1*6 81,7 )81&7,216$1'6758&785( 352*5$067281'(567$1'7+(%$6,&'$7$7<3($1',2 :ULWHDSURJUDPWRSHUIRUPYDULRXVPDWUL[RSHUDWLRQV$GGLWLRQ6XEWUDFWLRQ 0XOWLSOLFDWLRQ7UDQVSRVHXVLQJVZLWFKFDVHVWDWHPHQW LQFOXGHVWGLRK! GHILQH0$; YRLGPDLQ ^ LQW$>0$;@>0$;@%>0$;@>0$;@&>0$;@>0$;@,-.0156&+ FOUVFU SULQWI(17(57+(6,=(2)$0$75,;0;1?Q SULQWI(17(59$/8()250/(667+$1 VFDQIG 0 SULQWI(17(59$/8()251/(667+$1 VFDQIG 1 SULQWI?Q(17(57+(6,=(2)%0$75,;5;6?Q SULQWI(17(59$/8()255/(667+$1 VFDQIG 5 SULQWI(17(59$/8()256/(667+$1 VFDQIG 6 SULQWI?Q6(/(&785&+2,&($''68%08/7 VFDQIG &+ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH VZLWFK&+ ^ FDVH ^ LI0 5 1 6 ^ SULQWI(17(5G;G0$75,;$9$/8(6?Q01 IRU, ,0, ^ IRU- -1- ^ VFDQIG $>,@>-@ ` ` SULQWI(17(5G;G0$75,;%9$/8(6?Q56 IRU, ,5, ^ IRU- -6- ^ VFDQIG %>,@>-@ ` ` IRU, ,0, ^ IRU- -1- ^ &>,@>-@ $>,@>-@%>,@>-@ ` ` SULQWI?Q5(68/7G;G0$75,;&9$/8(6$5(?Q01 IRU, ,0, &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ ^ IRU- -1- ^ SULQWIG?W&>,@>-@ ` SULQWI?Q ` ` HOVH ^ SULQWI?Q(5525&21',7,21)25$'',7,21 SULQWI0$75,&(6,61276$7,6),(' ` EUHDN ` FDVH ^ LI0 5 1 6 ^ SULQWI(17(5G;G0$75,;$9$/8(6?Q01 IRU, ,0, ^ IRU- -1- ^ VFDQIG $>,@>-@ ` ` SULQWI(17(5G;G0$75,;%9$/8(6?Q56 IRU, ,5, ^ IRU- -6- &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH ^ VFDQIG %>,@>-@ ` ` IRU, ,0, ^ IRU- -1- ^ &>,@>-@ $>,@>-@%>,@>-@ ` ` SULQWI?Q5(68/7G;G0$75,;&9$/8(6$5(?Q01 IRU, ,0, ^ IRU- -1- ^ SULQWIG?W&>,@>-@ ` SULQWI?Q ` ` HOVH ^ SULQWI?Q(5525&21',7,21)2568%75$&7,21 SULQWI0$75,&(6,61276$7,6),(' ` EUHDN ` FDVH ^ LI1 5 &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ ^ SULQWI(17(5G;G0$75,;$9$/8(6?Q01 IRU, ,0, ^ IRU- -1- ^ VFDQIG $>,@>-@ ` ` SULQWI(17(5G;G0$75,;%9$/8(6?Q56 IRU, ,5, ^ IRU- -6- ^ VFDQIG %>,@>-@ ` ` IRU, ,0, ^ IRU- -6- ^ &>,@>-@ IRU. .5. ^ &>,@>-@ &>,@>-@$>,@>.@ %>.@>-@ ` ` ` SULQWI?Q5(68/7G;G0$75,;&9$/8(6$5(?Q06 IRU, ,0, ^ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH IRU- -6- ^ SULQWIG?W&>,@>-@ ` SULQWI?Q ` ` HOVH ^ SULQWI?Q(5525&21',7,21)2508/7,3/,&$7,21 SULQWI0$75,&(6,61276$7,6),(' ` EUHDN ` GHIDXOW ^ SULQWI<28(17(5(':521*&+2,&( ` ` JHWFK ` 2XWSXW &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 3URJUDPVEDVHGRQ6WULQJ+DQGOLQJ D 3URJUDP WR DFFHSW QDPH RI WKH XVHU WKURXJK JHWV DQG SULQW VWULQJWKURXJK SXWV IXQFWLRQ LQFOXGHVWGLRK! LQWPDLQ ^ FKDUQDPH>@ SULQWI(QWHUQDPH JHWVQDPH)XQFWLRQWRUHDGVWULQJIURPXVHU SULQWI1DPH SXWVQDPH)XQFWLRQWRGLVSOD\\VWULQJ UHWXUQ ` E :ULWHDSURJUDPLQFWR&DOFXODWH/HQJWKRI6WULQJZLWKRXW8VLQJVWUOHQ)XQFWLRQ LQFOXGHVWGLRK! LQWPDLQ^ FKDUV>@ 3URJUDPPLQJLVIXQ LQWL IRUL V>L@ ? L SULQWI/HQJWKRIWKHVWULQJGL UHWXUQ ` 2XWSXW /HQJWKRIWKHVWULQJ F :ULWHDSURJUDPLQFWR&RS\\6WULQJ:LWKRXW8VLQJVWUFS\\ LQFOXGHVWGLRK! LQWPDLQ^ FKDUV>@V>@L SULQWI(QWHUVWULQJV IJHWVVVL]HRIVVWGLQ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH IRUL V>L@ ? L^ V>L@ V>L@ ` V>L@ ? SULQWI6WULQJVVV UHWXUQ ` 2XWSXW (QWHUVWULQJV+H\\IHOORZSURJUDPPHU 6WULQJV+H\\IHOORZSURJUDPPHU G :ULWHDSURJUDPLQFWR5HPRYH&KDUDFWHUVLQ6WULQJ([FHSW$OSKDEHWV LQFOXGHVWGLRK! LQWPDLQ^ FKDUOLQH>@ SULQWI(QWHUDVWULQJ JHWVOLQH IRULQWL OLQH>L@ ? L^ ZKLOHOLQH>L@! D OLQH>L@ ] __OLQH>L@! $ OLQH>L@ = __ OLQH>L@ ? ^ IRULQWM LOLQH>M@ ? M^ OLQH>M@ OLQH>M@ ` OLQH>M@ ? ` ` SULQWI2XWSXW6WULQJ SXWVOLQH UHWXUQ ` &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 2XWSXW (QWHUDVWULQJS UR#JUDPL] 2XWSXW6WULQJSURJUDPL] :ULWHDSURJUDPXVLQJIXQFWLRQWRLPSOHPHQW3DVFDO7ULDQJOH LQFOXGHVWGLRK! LQWPDLQ^ LQWURZVFRHI VSDFHLM SULQWI(QWHUQXPEHURIURZV VFDQIG URZV IRUL LURZVL^ IRUVSDFH VSDFH URZVLVSDFH SULQWI IRUM M LM^ LIM __L FRHI HOVH FRHI FRHI LMM SULQWIGFRHI ` SULQWI?Q ` UHWXUQ ` &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH :ULWHDSURJUDPWKDWXVHGXVHU'HILQHG)XQFWLRQ 6ZDSDQGLQWHUFKDQJHWKHYDOXHRIWZRYDULDEOH LQFOXGHVWGLRK! 7KLVIXQFWLRQVZDSVYDOXHVSRLQWHGE\\[SDQG\\S YRLGVZDSLQW [SLQW \\S ^ LQWWHPS [S [S \\S \\S WHPS ` LQWPDLQ ^ LQW[\\ SULQWI(QWHU9DOXHRI[ VFDQIG [ SULQWI?Q(QWHU9DOXHRI\\ VFDQIG \\ VZDS [ \\ SULQWI?Q$IWHU6ZDSSLQJ[ G\\ G[\\ UHWXUQ ` 2XWSXW (QWHU9DOXHRI[ (QWHU9DOXHRI\\ $IWHU6ZDSSLQJ[ \\ :ULWH D IXQFWLRQ SULPH WKDW UHWXUQ LI LW µV DUJXPHQW LVSULPH DQG UHWXUQ RWKHUZLVH LQFOXGH LQFOXGH LQWSULPHLQW LQWPDLQ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ ^ LQWQS FOUVFU SULQWI³(QWHUDQXPEHU³ VFDQI³G´ Q S SULPHQ LIS SULQWI³GLVSULPH?Q´Q HOVH SULQWI³GLVQRWSULPH?Q´Q JHWFK UHWXUQ ` LQWSULPHLQWQ ^ LQWL IRUL LQL ^ LIQL UHWXUQ ` UHWXUQ ` 2XWSXW (QWHUDQXPEHU LVQRWSULPH (QWHUDQXPEHU LVSULPH &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH 'HILQHDVWUXFWXUHW\\SHSHUVRQDOWKDWZRXOGFRQWDLQSHUVRQQDPHGDWHRIMRLQLQJ DQGVDODU\\8VLQJWKLVVWUXFWXUHZULWHDSURJUDPWRUHDGWKLVLQIRUPDWLRQIRURQH SHUVRQIURPWKHNH\\ERDUGDQGSULQWWKHVDPHRQWKHVFUHHQ LQFOXGHVWGLRK! VWUXFWSHUVRQDO ^ FKDUSHUVRQBQDPH>@ FKDUMRLQBGDWH>@ IORDWVDODU\\ ` VWUXFWSHUVRQDOS LQWPDLQ ^ SULQWI(QWHU1DPHRIWKHSHUVRQ VFDQIVSSHUVRQBQDPH SULQWI(QWHU-RLQLQJ'DWHRIWKHSHUVRQ VFDQIVSMRLQBGDWH SULQWI(QWHU6DODU\\RIWKHSHUVRQ VFDQII SVDODU\\ SULQWI?Q1DPHRIWKHSHUVRQV?QSSHUVRQBQDPH SULQWI-RLQLQJ'DWHRIWKHSHUVRQV?QSMRLQBGDWH SULQWI6DODU\\RIWKHSHUVRQI?QSVDODU\\ ` 2XWSXW (QWHU1DPHRIWKHSHUVRQ.LUDQ (QWHU-RLQLQJ'DWHRIWKHSHUVRQWK'HF (QWHU6DODU\\RIWKHSHUVRQ 1DPHRIWKHSHUVRQ.LUDQ -RLQLQJ'DWHRIWKHSHUVRQWK'HF 6DODU\\RIWKHSHUVRQ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
&RPSXWHU3URJUDPPLQJ 'HILQH D VWUXFWXUH FDOOHG FULFNHW WKDW ZLOO GHVFULEH WKH IROORZLQJ LQIRUPDWLRQSOD\\HU QDPHWHDP QDPHEDWWLQJ DYHUDJH8VLQJ FULFNHWGHFODUH DQ DUUD\\SOD\\HUZLWKHOHPHQWVDQGZULWHDSURJUDPWRUHDGWKHLQIRUPDWLRQDERXW DOOWKHSOD\\HUVDQGSULQWDWHDPZLVHOLVWFRQWDLQLQJQDPHVRISOD\\HUZLWKWKHLU EDWWLQJDYHUDJH LQFOXGHVWGLRK! LQFOXGHFRQLRK! LQFOXGHVWULQJK! VWUXFWFULFNHW ^ FKDUQP>@WHDP>@ LQWDYJ ` GHILQHWRWDO LQWPDLQ ^ VWUXFWFULFNHWSOD\\HU>WRWDO@WHPS LQWLM FOUVFU IRUL LWRWDOL ^ SULQWI³)RUSOD\\HUG?Q´L SULQWI³(QWHUWKHQDPHRISOD\\HU³ IIOXVKVWGLQ JHWVSOD\\HU>L@QP SULQWI³(QWHUWKHWHDP³ IIOXVKVWGLQ JHWVSOD\\HU>L@WHDP SULQWI³(QWHUWKHEDWWLQJDYHUDJH³ IIOXVKVWGLQ VFDQI³G´ SOD\\HU>L@DYJ ` SULQWI³?Q7HDP1DPH$YHUDJH?Q´ &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
$UUD\\V 6WULQJV )XQFWLRQV DQG 6WUXFWXUH SULQWI´?Q´ IRUL LWRWDOL ^ SULQWI³VVG?Q´SOD\\HU>L@WHDPSOD\\HU>L@QPSOD\\HU>L@DYJ ` JHWFK UHWXUQ ` 2XWSXW )RUSOD\\HU (QWHUWKHQDPHRISOD\\HU5DGKH (QWHUWKHWHDP,QGLD (QWHUWKHEDWWLQJDYHUDJH )RUSOD\\HU (QWHUWKHQDPHRISOD\\HU7LZDUL (QWHUWKHWHDP3DNLVWDQ (QWHUWKHEDWWLQJDYHUDJH )RUSOD\\HU (QWHUWKHQDPHRISOD\\HU7HQGXONDU (QWHUWKHWHDP,QGLD (QWHUWKHEDWWLQJDYHUDJH )RUSOD\\HU (QWHUWKHQDPHRISOD\\HU'KRQL (QWHUWKHWHDP,QGLD (QWHUWKHEDWWLQJDYHUDJH )RUSOD\\HU (QWHUWKHQDPHRISOD\\HU<XYL (QWHUWKHWHDP,QGLD (QWHUWKHEDWWLQJDYHUDJH 7HDP1DPH$YHUDJH ,QGLD5DGKH 3DNLVWDQ7LZDUL ,QGLD7HQGXONDU ,QGLD'KRQL ,QGLD<XYL &8 ,'2/ 6(/) /($51,1* 0$7(5,$/ 6/0
324 Computer Programming PRACTICAL POINTERS AND DMA UNIT 3 PROGRAMS ON POINTERS 1. Write a program using pointer and function to determine the length of string. #include <stdio.h> #include <string.h> int main() { char a[100]; int length; printf(\"Enter a string to calculate its length\\n\"); gets(a); length = strlen(a); printf(\"Length of the string = %d\\n\", length); return 0; } Output: CU IDOL SELF LEARNING MATERIAL (SLM)
Pointers and DMA 325 2. Write a program using pointer to compare two strings #include <stdio.h> //Macro for maximum number of characters in a string #define MAX 100 int main() { //declare string variables char str1[MAX]={0}; char str2[MAX]={0}; int loop; //loop counter int flag=1; //declare & initialize pointer variables char *pStr1=str1; char *pStr2=str2; //read strings printf(\"Enter string 1: \"); scanf(\"%[^\\n]s\",pStr1); printf(\"Enter string 2: \"); getchar(); //read & ignore extra character scanf(\"%[^\\n]s\",pStr2); //print strings printf(\"string1: %s\\nstring2: %s\\n\",pStr1,pStr2); //comparing strings for(loop=0; (*(pStr1+loop))!='\\0'; loop++) { if(*(pStr1+loop) != *(pStr2+loop)) { flag=0; CU IDOL SELF LEARNING MATERIAL (SLM)
326 Computer Programming break; } } if(flag) printf(\"Strings are same.\\n\"); else printf(\"Strings are not same.\\n\"); return 0; } Output: 3. Write a program using pointer to concatenate two strings. #include <stdio.h> #include <string.h> int main() { char a[1000], b[1000]; printf(\"Enter the first string\\n\"); gets(a); printf(\"Enter the second string\\n\"); gets(b); strcat(a, b); printf(\"String obtained on concatenation: %s\\n\", a); return 0; } CU IDOL SELF LEARNING MATERIAL (SLM)
Pointers and DMA 327 Output: 4. Write a program using pointer to copy one string to another string #include <stdio.h> #include <string.h> int main() { char source[1000], destination[1000]; printf(\"Input a string\\n\"); gets(source); strcpy(destination, source); printf(\"Source string: %s\\n\", source); printf(\"Destination string: %s\\n\", destination); return 0; } Output: CU IDOL SELF LEARNING MATERIAL (SLM)
328 Computer Programming 5. Write a program using pointer to read an array if integer and print element in reverse order. #include <stdio.h> int main() { int n, c, d, a[100], b[100]; printf(\"Enter the number of elements in array\\n\"); scanf(\"%d\", &n); printf(\"Enter array elements\\n\"); for (c = 0; c < n ; c++) scanf(\"%d\", &a[c]); // Copying elements into array b starting from the end of array a for (c = n - 1, d = 0; c >= 0; c--, d++) b[d] = a[c]; // Copying reversed array into the original, we are modifying the original array. for (c = 0; c < n; c++) a[c] = b[c]; printf(\"The array after reversal:\\n\"); for (c = 0; c < n; c++) printf(\"%d\\n\", a[c]); return 0; } Output: CU IDOL SELF LEARNING MATERIAL (SLM)
Pointers and DMA 329 6. Write a program that uses a table of integers whose size will be specified interactively at run time. #include <stdio.h> #include <stdlib.h> void main() { int *p, *table; int size; printf(\"\\nWhat is the size of table?\"); scanf(\"%d\",&size); printf(\"\\n\"); if((table = (int*)malloc(size *sizeof(int))) == 0) { printf(\"No space available \\n\"); exit(1); } printf(\"\\n Address of the first byte is %u \\n\", table); /* Reading table values*/ printf(\"\\nInput table values\\n\"); for (p=table; p<table + size; p++) scanf(\"%d\",p); /* Printing table values <span id=\"IL_AD3\" class=\"IL_AD\">in reverse</span> order*/ for (p = table + size -1; p >= table; p --) printf(\"%d is stored at address %u \\n\",*p,p); getch(); } CU IDOL SELF LEARNING MATERIAL (SLM)
330 Computer Programming Output: What is the size of the table? 5 Address of the first byte is 2262 Input table values 11 12 13 14 15 15 is stored at address 2270 14 is stored at address 2268 13 is stored at address 2266 12 is stored at address 2264 11 is stored at address 2262 7. Write a program to store a character string in block of memory space created by malloc and then modify the same to store a large string. /*C program to input and print text using Dynamic Memory Allocation.*/ #include <stdio.h> #include <stdlib.h> # define NULL 0 int main() { char *buffer; /* Allocating Memory */ if(( buffer = (char *) malloc(10)) ==NULL) { printf(”malloc failed .\\n”); exit(); } printf(“Buffer of size is created \\n”,_msize(buffer)); strcpy(buffer, ”Hyderabad”); prinf(“\\n Buffer contains : %s \\n”, buffer); /* Reallocation */ CU IDOL SELF LEARNING MATERIAL (SLM)
Pointers and DMA 331 If(( buffer = (char * )realloc(buffer,15) == NULL) { printf(“Reallocation failed. \\n”); exit(1); } printf(“\\n Buffer size Modified. \\n”); printf(“\\n Buffer Still contains : %s \\n”,buffer); strcpy(buffer, ”Secunderabad”); printf(” Buffer Now contains : %s \\n”, buffer); /* freeing memory */ free(buffer); } Output: Buffer of size 10 created Buffer contains : Hyderabad Buffer size Modified. Buffer still contains : Hyderabad Buffer Now contains: Secunderabad CU IDOL SELF LEARNING MATERIAL (SLM)
332 Computer Programming PRACTICAL C PREPROCESSOR AND UNIT 4 FILE MANAGEMENT PROGRAMS ON BASIC FILE HANDLING OPERATIONS 1. Write a program which reads diameter and height of a cone and calculate its volume using macros. #define volume(r,h) (22*r*r*h)/(3*7); int main() { loat r,h,v; printf(“enter radius: “); scanf(“%f”,&r); printf(“enter height:”); scanf(“%f”,&h); v=volume(r,h); printf(“VOC: %f\\n”,v); return 0; } Output: enter radius: 28 enter height:3 VOC: 2464.000000 CU IDOL SELF LEARNING MATERIAL (SLM)
C Preprocessor and File Management 333 2. Write a C program to read file kiran.txt and all data character wise. #include<stdio.h> void main() { FILE *fp; char ch; clrscr(); fp=fopen(\"kiran.txt\",\"r\"); if(fp==NULL) { printf(\"file does not exists\"); } else { while(ch!=EOF) { ch=getc(fp); putch(ch); } } fclose(fp); getch(); } 3a. Write a program in C program to illustate fgetc() function #include <stdio.h> int main () { // open the file FILE *fp = fopen(\"test.txt\",\"r\"); // Return if could not open file CU IDOL SELF LEARNING MATERIAL (SLM)
334 Computer Programming if (fp == NULL) return 0; do { // Taking input single character at a time char c = fgetc(fp); // Checking for end of file if (feof(fp)) break ; printf(\"%c\", c); } while(1); fclose(fp); return(0); } 3b. Write a program in C program to illustate fgets() function /* Open, Read and close a file: reading string by string */ # include <stdio.h> int main( ) { FILE *fp ; char data[50] ; printf( \"Opening the file test.c in read mode\" ) ; fp = fopen( \"test.c\", \"r\" ) ; if ( fp == NULL ) { printf( \"Could not open file test.c\" ) ; return 1; } printf( \"Reading the file test.c\" ) ; while( fgets ( data, 50, fp ) != NULL ) CU IDOL SELF LEARNING MATERIAL (SLM)
C Preprocessor and File Management 335 printf( \"%s\" , data ) ; printf(\"Closing the file test.c\") ; fclose(fp) ; return 0; } Output: Opening the file test.c in read mode Reading the file test.c Hi, How are you? Closing the file test.c 4a. Write a C program to illustate fputc() function #include<stdio.h> int main() { int i = 0; FILE *fp = fopen(\"output.txt\",\"w\"); // Return if could not open file if (fp == NULL) return 0; char string[] = \"good bye\", received_string[20]; for (i = 0; string[i]!='\\0'; i++) // Input string into the file // single character at a time fputc(string[i], fp); fclose(fp); fp = fopen(\"output.txt\",\"r\"); // Reading the string from file fgets(received_string,20,fp); CU IDOL SELF LEARNING MATERIAL (SLM)
336 Computer Programming printf(\"%s\", received_string); fclose(fp); return 0; } Output: good bye 4b. Write a program in C program to illustate fputs() function / * Open, write and close a file : */ # include <stdio.h> # include <string.h> int main( ) { FILE *fp ; char data[50]; // opening an existing file printf( \"Opening the file test.c in write mode\" ) ; fp = fopen(\"test.c\", \"w\") ; if ( fp == NULL ) { printf( \"Could not open file test.c\" ) ; return 1; } printf( \"\\n Enter some text from keyboard” \\ “ to write in the file test.c\" ) ; // getting input from user while ( strlen ( gets( data ) ) > 0 ) { // writing in the file fputs(data, fp) ; CU IDOL SELF LEARNING MATERIAL (SLM)
C Preprocessor and File Management 337 fputs(\"\\n\", fp) ; } // closing the file printf(\"Closing the file test.c\") ; fclose(fp) ; return 0; } Output: Opening the file test.c in write mode Enter some text from keyboard to write in the file test.c Hai, How are you? Closing the file test.c CU IDOL SELF LEARNING MATERIAL (SLM)
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347