ilout firtye ,.tfrrfi - wordpress.com · 2015. 2. 20. · ,clo tt9v,r) c lou: jnf'lyd rd))jt...
TRANSCRIPT
'tr;ND'I)ir)'t'orM:p)]oD-rtn)'Dt :il:ltttir ),tD
' 2011 ,N,,yoI frlN :i|)rDtit l!.tn\t Zt400t ,p)xun )no
Firr,.fitil'rti)
n9t,) e ntui ntrlyr! ntrrl, ,orxut: ))v|nr ]t)Nu,r, ,r)rNv, tav ry n:,:/!) Tfy.nfxv; a:rnu Dilf) W
i .P]e )::'nlrr]:nn ro-)Y, j
.irmp: loo - rDil-TuatrrNvr))h ))ul
....
10 fJevt c ilout firtyE ,.tfrrfi .
)xlytr Jrrr't,a1t))nil 11VD
.tltyU, yllN :iq}tlrTlt lVE. I
tilDlgnn frter,lf,}{un ntiD J
a
.rry rnfi )t *tnxlt) iriln .rt, lffn J
,!
.Drrtry ll at plxur
t.,(
l
,t:r 1tu): n)not)D nr 1r)xu: rtrn)nn.rnxj oln::)r lun::) n)DDn -lN
., , tfin>:n) ,
;lo rl9v^ c Jtevrr mlryD II]DI7l+ool)Dg,N,,yurt ])lN
",
nrrxvn
(nntVt So) c nlul ntyrrn tflrn :,x xutl
// lron ou)
// lanDnEju)
// ('ttqvlnv orpniyn ))r:,orizl'lln ):) ayrso: trrpntyn'tsDD
zz ;r)X Xrytn) ,nr)l5uf tr)Nsn]U,' tr)pDyn pt) )rNutn N)u' O)pflryn .toOD
// (lr$v\''tv
(ntryt eo) truxr aro.ilrm n)xu - L i$r$u )y nty
Ln $u
.on)xv;nt o)tooil trlrr)il r)geDn lunD rrlfr ttDn? ;nv)s n>t)D )v.r n>tcp:
BiblioBooks:dat O{/l Ot15O \tr]P
BiblioStudentsdat trUt tr)U)'flpg ll]pBiblioBorrows.dat DUI njrsv/I \lP
tto )v lrr19 rlN )Jr)D 'n (it,6tvr1) n::n ):r ,(lttD'tv.,l) o:atn)v \ttp Ntit !1190 \tt?:fivr)
. :\l]Pl lloil (x,!lul) astn )v c rsul n'rnn 1)n)
{
long ISBN;
ehar titfe [15] ;
char authorl20l;
intcopiesr:_.
int avaifable;
) bookRecord, *bookPtr;
3 TDyalvtDn
,clo tt9v,r) c lou: Jnf'lyD rD))Jt
7t+oo7 )DD ,x,;!ui frlN
-3-
r.books - ,tix:rt g1))16 J'1yDt o)lggil )t'!rt rN lgnp o)iloit 1:tp lxrl: rnx)
. )v r)r2:l! rN )!))D lf fiD1v1) n::n ):r ,(x'tnlv/i) ottn 5v ll)p N)it Ergrrfu! \tt7;nv)s D)lrug
: :\]Jplt)l'I'lt,9it (nDru'l) nnn)v c x9v/l nrln 1)a)
typedef struct studentType // p):tllroD)9)1,
{
long ID,' / / v)1lpo )ur nrata roon
char firstName[1'01 ; tt rlr'r9trv.,
char fastName [20]; tt finevrytru)
char address [30] ; // na$i)
long t91No; tt 1'ls)v
int numOfBooks; // v)1tvt:n )Nv)u ot'rooit'r9on
i studentRecord, *studentPtr;
. students - )DN))',I trDlE J']y'ol tr)1,)'1tD0n ))]JD IN l9nN) ,tr)9)'Iilr9it \ltp nN)'lp .InN)
r]l,]r)DD il)Nv/n i:,n n (il)ctu'r) illfD )r],(nrnrur) o'Dal}>v.\t]p N)n nlrr{un Tltp'{rlPr il?Nu'I (rlDlu''l) n)1D>v C n 'l nTDil1ff
tlpedef struct borrowType
{
long ISBN ; //'rl9ir T'rp
long studentf D; rr (>x'rvil rr)'IrrDil )u rrtnrn tcpn
int day; // n1\n;rfl ?iNn ru, u1nl o))i'l
int month ; / / ir'rtnnil J)tNr ,u u,'I)nil 19DD
int stud1ndex; // )fu 6)12)'nuoi:'t 'l'tynf.Nn )u opr:rxzz tr n)xun yr)lu p)"IIrD )u Duts o)lDntND
struct bprrowType tlext;
) borrowRecord, *borrowPtr ,'
+ TDIA lVDn
,10 n!{/] crtlu,f tt.DlyDbt)fjl7l4OOl )ED,N"trui trtN
int n:0;
int m=0;
,-4
nr)Nunn ))lI) )) ,]N lDnNl ,It)Nu,iln \f,tp xN)lp tnN,.. list.lrllD nWNl>V, borrowRecoid gto)p,a
,l>n v !,ril:trli] Er$ttufi, o).lTlb r))tnfrt trtsivin orrdn rgon .
/ / o,Dltun D)D)-I)pDn lgDrl
/ / Orlrg )U, rDN)r-, fiy,O
/ / Olil1}Or )U rDN)rT J.tyn
t t nl)xvi'tn nnrui uxt) yrtsD
,trDtD )V n'w1>n nrtytla
bookRecord bookbuff ; // otlroil\ftpD 19D )vnntv-trrxr.rp) buffer
g tu)'vDru)1nN)1p) buffer
botrowRecord borrowbuf f ; rt nbxvnn \Xpb irN{/n nD)u..t,tN)1p, buffer
bookPtr bookin : &bookbuff;
studentPt.r studin : &studbuff; L.
borrowPtr borrowin : &borrowbuff;
bookPt r books:NULL,.
studentPtr students:NULL;
borrowPtr list:NULL;
lVDn511r.y)
< i-1)JP)191t19,D)JIPi-l xvrl)u'D tr))lrl)il I.lN xN']]P lUrN
' populateStructure E:\l/l
)Dlg nN , books tDN)Xil JlyDl O)^'l!9il )915 'lN
n)gnNDil 'tr)))n)i-l tr))''lN}ln
rnr nlrt-tllf0i'l)9-19 rrN t uuu\r '' nN't
' students )DN))li-l JlyDl o)\))11\)oi1
fl))'l'l))-ln nlV11PD ilD)v/lf x't)NY')iln )919 ']N] '
stuoents """' ".'rrr, y)llD nv/N'.,)v,,
tr)vrl .tr))t)y tr))-.r)]g }f tr)-l9gDf tr))D]gDn ,tr))l\')f tuy:Inil tr)'lgn il''JP)l9l
,, ,r", ,',nr, ,il)ly 1'191 'lf'f (11) - ( 1) tr).gn,, tt;]fffiT::3l'J,ltil;
void PoPulateStructure (vo id)
t
FILE *fP;
borrowPtr br;
/*** OPen Books fiLe ***/
if ( (fp : fopen("BiblioBooks'dat""'rb") )::NULL)
{
' puts("\n Error oPennig F\\FiIe");
,lg Il r) c n!u'l 'll)lyD
Jl])fr
7t+ooL )Dg ,N"!ur )fN
exit (1) ;
/*** lnsert data into
while 1 I feof (fP) )
{
books
booksIn] 'ISBN =
-5-
books dYnamic arraY *x* /
J{
(1)
Q);
bookin->ISBN;
(3)
(4)
6 TfiyaluDn
\
,,Jp mu1 c rlgYrl flD]yE ltl)fI.|
7l+001 )bD ,N"!ur frlN
\ books!hl rcbpi-es:bJokin->copies;
iiooks I n ] . available;bookin->ava j-labIe ;. .'n = n+l''r; ' '....
(1)
)rIfcloselfp);
.tl
-/**.open Sturiertts file ***/.,! !
if ( (fp = fopen (^'Bib].j-oStudenLs -daLo,'rbol )'::NULL-)l
r '\puLs ( " \n Error :oPenn,1g Filai" f
exit (1) ;
/*** .,Insert data into studentJ dy4amic array
-6-
(s)
i
*** /.. I
' whil,e ( !feof (fp),)
{.students : (6)
stud6nts [m] .rD : itudir,->to; '
(71 )-, i
(8)
(9)
students [m] .telNo : studin->telNo;
students [m] ,. numOfBpoks = -s,,tudin->nurnof,Books l
i
lI
1'.tr'y11VDA
i
A
-7,'19 rl /l c 1]9v/l Jl]flyD rll)J]
7I4OOL )D9 ,N"yutr frlN
m:m*1;(5)
)
fclose (fP) ;
/*** Insert
if ((fp:
Borrows ***/
fopen ("BibIioBorrows ' dat" ' "rb" ) ):=NULL)
.)
br
puts ("\n Error oPennlg FiIe" )';
exit (1) ;
- (10) ;
(1L)
-;
while ( ! feof (fP) )
{
br-)next.: Iist;
Iist : br;
hr = (10)_=_._-
( 11)
1g1qss (fp) ;
8'I]DYI Ju'Dil
n9u,1c n!v/l nl2'lytl JD))r]
7L+00lril,fg,N(yur f)fN
r)y Drpnl)rit lloDv, ]!9il )t ']9 'lN
ngto'lDil rhostAvailableBooks trtl'f n'vi'11! ?9)
nN D..t)lyl nO)!'1D n)sPjlli-l ,nt) TnX ''l9gp 1Il't) 6r:p EIN "ln'nl
)t'Dil Nln n)?']50f
'trn)919 )l
nl nnl Dlur1 .D)rlty o))'t)lo'l)l D)1!gDl o))DlDDn 'D))1D)l
tlg D)19n n"O]':].159D)f.p)]]rl)],i]hy..119]1),)(2)-(l)tr).]9nnD)).|9)]i1)19DDflNil))n]n
.x),n xtitv.l'l9nn ))l,)ln ,lN
id' moEtAvailableBooks ( )
int i;
/ * 1>u) 6rpmli1 15gD . 0 9P^I)')Nf books 'f1!Dl oPIDD 1!0ily/ tr)n))D itnrilf
nN hPD rriaxt55) 'l!!N].0 9P'I))Nn rN 'lPD
max l)) "trl)f
)t.I}a xta
.^tn!)t))1)n Nln nrTgf, 1)v1 grizfi]lil floDt' 19:l
-8-
printf ("\n ISBN: %Id \n Title:%\d\n",lcooks Ii] .ISBN,books Ii]books Iil.coPies) ;
%s\n Author: %s\n coPies
.titli:,books til .. author,
.)
0P'I])Nn
I TDyalvDn
int max:O;
for(i:1;i < n,'i++)
!
. max : (books[i] -copies > books['rnax]''copies)?-(1)-;
),. 1
tprintf, ("Book wiLh most copies\n") ;
lfor (i:max;i<n;i++1.,
if (
-(2\ -)
,lo ngu] c loua r))1yD lll)fn
7L+OO! )D0 ,N"!ur }lN-9-
nnlrl]fv, il2:PX9 ?9) J
void lazyReaders (borrowPtr list' int currentDay' int currentMonth)
J),]NIi:tnN]'I])Nv,i..|ilID)v,..|uN.])y)fJD]listnNo)..I\,D,]!)n,a?Dil)JP]]!il,Dv,, rN ilg)9.ID i-.r)rp).t!n . currentDay, currentMonth - (vJ'Ilnl tr}) )n)lrl
'tDrf ,reg l)Inn N)v'' ellleo )v ov')v 1) ','lDtl D)l!o "lllrY"tJil::l
trrvr.r .D)r))y tr)),.r)'rg'trf tr)]qgEf tr))D)gDn ,D))]l,)f i.lu'u o)lgn il)sP))9]
)> lt) flrl)l ,n)ly 11oa J):Ja( 6) - ( 1) D:ngni-l tr)))P)li:l )']!oD nN il))nfil JlllnDl
.)J))D N]ilv/]gnil )]\,)lil rlN'190D
voidlazyReaders(borrowPtrlist,intcurrentDay,intcurrentMonth)
{
int curdate;
int retdate;
borrowPLr temp; / / 1DED)'|!9 'l'l)tni..| x)u oru)1)p9 nl)Nv/il )u nrvll:n ilD)ul u'N']) )nlJD
borrowPtr Prgtri
P: Li-st;
femP:NULL ;
curdate : currentMonth*100+currentDay;
while (p)
{
retdate : (P->month) *100 + P->daY ;
if (--_ ( 1)
-_) P : P*>next;
I'{
II
tI
1
1i
{
i
I1
I
10'I]Dyl Ju'Dil
\ ) ,.t )
./
,t!v/l'c flevE nl)'lyD fh}fr7t+00L )no }{l'yurn:r:x
, -_ -li
- 10:
_\
t\I -if .{temp =: nur'r') .-/
{ '\'.r,
tgmp = malloc (s'izeof (borrowRecord) )';
I, temp:>ISBN = p->,ISBN; ..,
), /a._-/temp->day = P->daY;
temp-)month :' P->4otrthi
f=erqpl>studlndex = p->studlndqx; .' . ,
I
\
else.t
{
' q :-temP; r
while (q)
: 't-l '
1,r:q;
' if (d->stuaSntlD '::
,q : q->next;
i'
i
')
'1,.
p->5t"ir'denLTD)
\
break;
.-- )
tt
,')D ltcUt C nov.r: I)ftyh;1)jlr) - lt -7l+0}l )Dg ,N,,yyn 1;a1q
if (q := NULI)
{
9 = mafloc (sizeof (borrowRecord) ) ;g->fSBN : p_>rSBN;
g->studentlD = p_>studentID,.
9->day : p->day;
q->month = p_>month,.
g->studfndex : p->studfndex,. .
g-)next = NUII;
-
(3)=-: g;
)
...-....-.-.---.- (4)
i
/* print Resu]ts x /whi 1e (remp)
{
/ / i1D),v1n vN1, )Dtt) remp fi,lv}nlp rl)ylENf ip : Lemp,. itDvln rN D)pllD
Prinl1- 1 ,, \n ?s gs,,, students [ (- (5)________ )J.firstName,
students[( (5) )J.lastName);
' -------(6) ;free (p) ,.
l
)
12ltnya 1u)Dn
lIIili
:ilI..ttt.t)v, n)tP)t! J))9) .1
void borrowBocik(borrowPtr *list, long studfD, long bookISBN,/,i
l int retDay,. 'int retMonth)
:D)1eD"t9 ilUrlln n aPD n)lP)'t!irl5O )lNU', ?tl)yDn t2l'11t,9 )ur ntAtn lggD - srr]dlD ,It)Nu,irit nrl,v1, y)tyD - lisr
']U9N trN . retDay - D])t] rerMonrh - U'Itn: )IllN )tni-lr) , bookISBN 1rV l:!.-r/nt[
.nlrNv/itit rD)vll uNi, itx)N ilo)DtD it)sp).toir ,i-r)Nuitir rN ysl,
D'|V.,''t .O))l)y tr))l)]D ])f O)]gODf trFD,O]pDil ,O))]U)f ity:U b).19n il)sp)llf)l tti rrlrfr ,nrry 'rrol ,Tl>l (7) - ( l) D)'rDnil tr))'ru)lir )''roDD ,lN nl)nril rlrnDl
, , .)s')D N.tnu .19nil )]t2)fil rlN -t!oD
ttSv/] c IgUl Jl]f,tyD n'Dlr714001 )DD ,N"lufi l)tN
t2-
book is avaifable ***/
< n ,k++))
. ISBN := bookISBN) &&
id borrowBook (borrowPtr *Iist, long studlD, long bookISBN,retDay, int. retMonth) ' .'nt
{
int' i, k;,1 ,
bomowPtr
/*** check- for(k = 0
It
br;at
;k
if ( (bocikslkl
i
if ( (2) ) .,
{,pri-ntf ('-'Book Not available" ) ;,
return;
)
(1) break;
,clD rl9ul C JlSUf J])tly,o nt)fr]zl+ool )DD ,N,,!v.lr :llN
br->studlndex =
br-)next :
_ 13 _
in student table *,/,/* Find students indexfor(j:0;i<m;1+ry
{
_(s)--(6)--;
(6) : br;/*** Update Avaifable Copies *x*/
book=[ (7) ].availabfe__;)
)
if (studentsIi].ID :: studlD) break;]
ar (
{
Printf ("Student Not Eound.L);
ret urn,.
)
sludents t-(4)--l .numofBooks+ r-;
br : malfoc (sizeof (borrowRecord) ) ;br->ISBN : bookTSBN;
br->studentfD : studTD;
br->day : retDay;
br->month : retMonth;
(3)
74 TDya lvan
,:t5v/t c JtlvJf'Jt)f]),D r]l)fx7L+00t )Ea ,N,!ur frtN
t4-
:iltl.trl.tl .il)).19D) .1!D
'lltnnlid feturnBook{borrowptr. *1ist, l-ong bookfSeN,
list:
n>r1f.Dn il)lP)te J))5,
long studlD,
.n
nt curDay, int curMonth)
,)nfl)n tr)il,- curDay ,190n np _ bookISBN rgt.I)lroil )v.r ntnta .t!9rc _ studlD) rrn)Dn'll9ir ru, D)pnryirlgDn rN r)fryD i'r)!pl)9ir .)nf)lir u-Irn;-.r - curMonr.h
lin]it 199il trN :ilNrir iryl)nil nN i-19)9'ID] 9).I.rt 9il ,ll-ry D)>Nv/lr!n D)199ir ..r5Dtl
J]N ilo)lTD N)il - n'lnN , "Book returned on time" :itlT.lilit rN nD)9.1,0 N)n )tN ,16ll.ntrNuirit nD)v/lE 'fiil it)Nuilil nN npn]D N)ir ,1t-]hl . ..Book rerurned tut",, ,nyrtnn
tr)Ul .O)h)y D))'l)]D1)l D)1g9r1l D)),!.tg6;.t ,O))1u)l ituru D)lgn il)sp))g1?) r'rrr] ,n v 11oa ,1a>a ( O = ( 1) D)ienil
":l:.,:l^:]:"1-l nr)nril rrTnbl)Jr)E N]ilgr lonn )tu))lil ,tN ..t!oD
d returnBook (borrowptr *,l ist, long bookTSBN, long studlD,int curDay, int curMonth)
int curdate,:
int retdate;
int, i;borrowPtr p, q;
p : list;
curdate
if(
: curMonth* 1-00+curDay;
(1)_)
p->next;
l
1$ya lvDn
15,clo rl l c lcv/: Jl])lyn Jl])lr]
7L+OO7 )nO ,X'!Vln :'':x
else
while (p)
{
q:p:if
{
(p &&(
p,
p->next;
(2)
(1)-_----..---)
;
break;
)
\// end' while
for (i:0; i<n; i++)
{
)
retdateif(
else
printf ("\n
students t (5)
(6) ;
j-f (books Ii]
{
ISBN =: bookISBN)
break;
]
= (p->month) *
(4) )
100 + 1p->day);
prlntf ("\nBook returned on time") ;
(3)
Book returned 1ate");
l.numOfBooks--;
15 ]]DYl'lutnn
' 2 nrx\r,
:IXtn nl^Dnil il)lm .xxpl2l[3]={ l"zyx", "wvu", "rs" }, {"rqponm",,'lkjihgfe,',,,dcba,,} };
ncui C ,tbu,l,tll'l!,Jo Ilt)fn7L+OO| ?no,x"yun.rr:x
.(DnW, Lo
))'pxvrN)n
print.f ("%c \nr',
printf ("%c \n"i
print.f ( "%c \n",
printf ( 'r'%c :-
\nr,
pqinLf ("%c \n",
printf("%e ' \n",
/,*pt2lt3]={"question"., "n1lrflber'! , '!4" ,
t6-
- it xv,rr)) q-2
(nttVt 20) )rtu ?1,nlrilUil lrft! ortrru )Y ntY
)Pln'N) rlsrr1;1)1113 1it6 InN .'trf )r 11t)t);1 )I)t np!'In rrftps tUV T)r>n>'DD N)i-'tu )'tl,)ti-l DN ill)nlil ntlnDl D]v/'] il9lTit nTtpg ): -tt:l: .1u
.1)v pl11y1n u)o.n rN trlvr''t tN ,)iln ,lu)fi't oN .)ptn N) ,tN
a***p) i
(* (* (p+1) +1) ) t6l ) ;
**(p[1] +2)l;* (* (p+1)+1) t6l);**p Ii] ) ;
i{ pt11 l2)+Z));
:rlNn'l il']I)ilil it))lt)I
"good", "luck", "! !!"|;
.:
.)Ptn N) r19r1;)r1p'liln rtfix .ltt tt ntrt>rt ,D)Nv, itpi-Iit xt-Ii1)s tttb\r 1tss)x .N) tN )p]n N)n ilrDq N)nU )'tu)fn trN il])ntil lrtnDf tr'tvrl ilollil nllpr r)
: .t v prfiDn t:rgn IN tr,tvr..t tN ,)ptn )tu)lil
printf ("%s\n" , *p [0] +5) ;
printf ("%c\n" , * (p 17) l2l+2) ) ;
Printf ("?,c\n" ,- **pt1l);
\Dya lvDn
ffi.)ytr91!oD19D19]n,)PDnn)f)0..l.lP,]i-.l)JP)]5p!).n'lnN - 0-l il,ly il']"Ip J]llnD ]loDn
:n)'ty i-1']19 J'l'lli-lD tril)J]l-llo Dillv' tr)l9gD) xlND)]'I l)n)
9751 ,5400 ,97"11 '8632
o.tvr..r .or)r)y tr))..r).to .r)l tr)1rgpf tr))DroDn ,tr))]t:)J iltu./rtu D)'lgn il)sP)l9f
)l lt):tn:t ,nh! l,sot ,sltl ( 3) - ( 1) tr)1onn tr')]9)fn )1!gD rN i-l))nlil r]lnDl
.)l))D Nli]Y/ ]onil )'t\))lil IIN 190D
,19 iSvr) C ngul r))'lYn Jll)fn
7L+ooL )D0 ,N"!vJr f;fN
int ole (int num)
-t7 -
zu)J]']9D-'ID]!ODn DN
.l
i
if(
else
{ int- d
num
if(
(1)
return
: num%10;
= num/10;
1-
Q)
-)return 0;
else
(3)
18 I]DYI Ju'Dn
I ll
n5u) C }l9v/t ntf'tyE fit))r7l4ool rrca ,N,l,Ur f)tN
\1
ncf ude .<bt.dio. h>.\ f- r
ncl-ude. <strinlj- h>
finb n r 40
:1)n)ut nr)lnil tlylit
,.(
t,
]D(r rtPIrV izrtlnn eroil rlN,Dtu,l. .t
-18-
tl
/
t, -fune (char .st11,[ ] , char
r'
char a l21,bl2l ;/if (str1[0]::'\0')
It
st.rcat !str3, str2 ) ;
n-relurn .,tT
.!
,.if (str2[0]:='10',
:,'.) strcat (st.r3, strl-) ;
, retrirn 0;
l
, eJse.', . )
'{l
Istr2 | J, chei str3 t .l )
rIll-l\nt.'uL+r \v , bt1]:t\0t;,I
a [0]:s1.1 10, - b [0]:ss.2 19, ,
. strcaL fistr.3ya) ; :: .'
-
stqcat (s,tr3rb); .,. 1
.) _ - )
I-)
turn 0; -
T'lDyf, Jv'tlit
i. \.' i
,10 l5!rl c rgutf Illf"]yD JI]DI
7,4aci- )DD ,4"!vJr ],lN
main O )
{
char strl tn,/2-t}. 'str2ln/2-!1, str3 [n'];
' sri:[0]='\0';
strcplz(str2r"eI o r o !!");
f qnc ( ?a..,
, s)r2, str3 ) ; '
'' printf ("str1=%s str2:%s\n\n", st'r1, sLt2) ;
print,f ( "str3:%s", itr3) ;
i '' 'nx',t
.o)'lljN 5v n'p)lyn r))]])l-ln rl']u')PD fllD)V','.] tiu rll]r) 'x
:'f) 1T))D ilf lltN ): ;oD!:u D)']!EID n))1, n!rut{1i nD)v1n
typedef struct numTYPe
rt
int num,'
struct numTYPe *next;
)numRecord, *numPtr;
:'f) 11))D ;tl ]lN )l ;Ilrl1nD n>>D n"rtuil ilD)ulil
typedef struct stringTYPe
{
char string[80];
sLruct stringTYPe *next;.. '
) stringRecord, * stringPtr ;
z0 lrDyf JuDil
,]4..
I
-j
-lIItl
_t"1-. I
t
qr
,lD ngu/] C neul 'n)tyD
tt.DlxzL4ooL )Du ,N,,)Ari trlN
- 20.
p'lfD n>fPBn sffingPtr deleteStrings (numPtr nlist;srringptr *slist)) nrlr]fvl il)Ji2))o J))s>,v fi))v fir)yD ilr,V1> slist lrtsDt tr))yt9 D)),.t!pD )v.r n:luxt n,D)yD i-or.rr'^-r",)D)?)Dv 1)tt't'tnEn )f nx (nu)vil nuv)1n) I)r)1n,ril nD.,v1D IiTntD it)tp)tln .Jltl.tnD. 'i1D)v1r't uNl) y)ltn it1)tnDl ,(it).tv/N..t;-t nrovln) D))yft2;..t D)i9DDi1 116)ulf .t),pD
.JD)1:.yD.] n)\vi1fi>)y$n',15n)v l.l'tD)trt,''f )rtv/ ttl)ll) - n;,),)I
:D)r!,19 D)..|!gro r.t,0)u1
nlist
3 n $ur rx .rtrx: rl]t]lllD,ltl)U,']l
Lue rrr survrvlng" "stnng" "ByE"
3 n xv> r: TrxtlDrUla llrt'nD )V O'tittyl ]))tD O)U igor! )) it)tnJn tr))ytpn O)..tognn nD)V1a _
,Dn,tn,oilIiltn,oil )v nmp:,t1; I N)i-l..abc" rlil.thDn>v nDlp,,Dilllrnit n)t.t.tDltit J.t,o)u,..tl
nNril llt 2 Ntir ..hello,,
ltDvla '\PBn 1D)i>;v1v1ftltlinnil xN Jrpnrrc ir)sp)1!;1 rt)rrJir rl,)u.ril )Jru t,pyl. 1,2,4,7 :Nlit ft)t],lltDit
:'l) (nt;v1v tr>)yr,n nr|,luln) rl))'I)yDit nllt'tn,oit n1)v1itNl)li Jr.ti7)nD tnN)
slist
"surviving" "string"
, ntwtr,t llrx
27T1Dya ly)Dn
"surviving" "string',
"the"
//'
,t9rlsvn c nsu: n]t'rrE flt)f.nr
7L+OOL )DD.N"yUi lr:N
.rDf'IryDit i1D)v1il{r&i, yr}!D 't)tnr ilrji7)]5il :!, otry
nilFtDl trlul .o)rulr qr,r111p :t)? D)loopf DDD)DDiI ,Dr)tp)a flU)pn trtlon n)SPnol
.)J))D N]i'lU lf,,nil ,'llr)lil
stiingPt; deleteptrings (numPtr
lnt done =1,' \.
int temp,'. '
numPtr prq;
stringPtr r, s;
int i, m:0. nr:O;' t-, /
'
s : *slist;
/*** sort numeric ]1s1 ***7
do'
{
p = nlist.->pex!;i
done = 1;,
whil-e ( ( 1)
It'rli' q :r p->next;
, i, if (p->num }',q->num)
It '' - 'ir. . :i'. , \
. --',' temp : p->numi
p->num : q->numi
; ' g->num :. teinp; ',-':
done : 0;
-21 -
I
r '\ /
// do.. . whife rN)r, trrlg./
n1ist, stii-ngPtr' *sIist)
.:
.t
i
T.,I1r+
p->next;I \'
),
Pi :
);
22 TDYaliuDn
\
:
aa./
,3t n5t,] c reul nll'lyD 'lDfrl
7L+ou )ED ,N"!un frlN
/*** Defete words ***/
lf (nlist) ,,
1 sfist;
It{-,,S=
doi.
{
:j,r -. lp.:\ p->next;
n'= p->num;
tor(} = m; 1
r =''s-)next;
(3)
'''#defi4e N' 6',
,typedef strucL eiVar
It
int. num;.-' :
I ' strucl eivar *next; ,
) element;
2l.1]nrt'luDit
:, .' .
.fin)v rD)rit nJln 1n4) )4>hrv pt's1bn u)on nN 8)u1 .t
a'
,cl9 ltlu,l c IgV/t '.l.tftyE
J.t))lJt
7t+ool )Eg,N,,!Ur fn12?
void main o
i
efement
element
int i, k;
for ( i:0 ;
{
, list [N] ,.
*ptr, *ptr1;
i < N; i++)
lisLlil .num:4 * (i+1);
if ( I < N - 1) fistlil.next: (1isteIse f ist t il .next. = NULL,.
)
ptr : li st,.
print.f ( " \n The original I ist is \n\n,,) ;
while (ptr)
{
printf (,'?d" rptr-)num) ,.
ptr : ptr->next;
)
ptr : list;
for (i:0; j < N/2; i++)
{
ptrl : ptr,.
for (k=N-1 -2* i; k>0,. k--)if(ptrl != ptr-)next)
else ptrl->next : NULL;
pLrl = ptrl->next;
ptrl->nex1 : ptr->next;
+ i + 1),.
2+ 1)Di$a lVDn
,lu nlut] c rcu: rl)fyn lr)fn7!+OOL rDg ,N"yu''l ])fN
-24 -
. Ptr->nex1 :Ptr1;
ptr :Ptr1->next;
)
ptr: Iist;
prinLf("\n The new list is:
whil-e (PLr)
{
. printf ("%d" ,Ptr-)num) ;
Ptr : Ptr->next;
)
return 0;
,11n\'ml1)nilfil)lrl]Nx'M)'itno"y:ptr'llg!)v'rnsrlrnl:tn:
;i-l!r19D}.t.to))N ]Il.tx].tN i.lTlDy.njr]N] )x n]]v, nn.tNf NJE)il J.lD9 .lf)N NlI l,u .L
"'' 'r-*iir'r;r.,r.rr, rru,.r) 6rp x) rux ,g!ND )rr rlx Nrn httluE: iittt ,,itx
'2
.irs)-l9Dl^'lnpl JID)n Nln lflyv/ lil'ltil ']]rNn N)n il9'.tgD: t'l' '7
\n\nr') i
p) . 8 t:ry.ur At3ltal-l ,7 ])1yu', ,At2l[0]
. ' :i1D)11
. oil tr)lnlrn on}Nil .il1v''Jj :1,T#:I:
z5 rny:]v,rnn
3 4 5 1 2
5 6 2 3 4
7 J 4 5 6
4 5 6 7' 8
,lD M/] c Isu: J]lfly,o Jll)l1l
7l+00, )DO,N,,!Ur trlN
-25 -
.nl)rr) ix)1r2n )y rt)tiu)N l!!t! yl:nil trnrrlrt{ )u ttxrn Jr:c)
,it)Ni ott)vn nr:'D{ tr)yltrlD ilrs'tprN )l:.ilJ)'tunl tr)lnltit D)''t}N;l ,tN)!D :t* filt
.(ortl]f tgDD 't)llt))) i-x)19D1 tt]f ltN)sD 5 7*t
,tDJy rfrln ln ))r:) i:rlunn lfr) J'rN r)Dn) .rinr llrN ,)Dy) 1)i-r!).rt:Dir t1)rv ,r 7yrt
.(09]N) ]f']yu
.\ )rv rnx) n):7nDvl itJ)1e,6it x09'1it 5 Tvlt
.nJ)1rnl o)..lil1 o)1f)N D)D))i, l:ty r).f{/tt) iltil ottrtt:)xn
:Jf A i-tJ)']\,,Oil ilN't)rl il)tvrN']il i-l)s''t9)Nil 'tnN>
:11A irs)']l,Dn ilN't)I J]])I'.]t,)N n:Uvr tnx)
.o)lfu, lgpD )rt'rN rN-v/) t:rx ):) N, A irs)'turla i, E v
J 4 5 I 2
5 6 2 J 4
0 1 4 5 6
4 5 6 7 1
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
26 1]Dya ]|uDn
flg M}c rguf ,nllyD rl)frTlqoot )DD,N,'!url ])tN
,.
- 26.
' ' ' ' : ':'l'!'l'il01nn1fin?'!,7.
' ,(N + 2) x (M +z)'it>1:Dv matrix nt 'In ilJ)']t2D ''p^Dl ,N x M n>1lDv ,A ils)'ll,Dil ']'llyl
. , , .,,rfn.l,tD itsrlt,D,' N1pr3 19rn
i :tr))PiD matrix Xlnl)Dil il!)1\2D
r o)o!N )))f) M + 1-l 0 tll'I]Dyil) N + _1-'l
0'mlruil
. j=0...M-l-'t i=O...N-'l>), AIil Ul nN )r)n matrix ti + llLi+ ll'il!)]12D) Er)r)v,i'r otl}Nir lllyl n59yD nllnD M + 1-'t 0 J:llT]Dyil) N + 1-'10 tl'l:'t'luil
.rrllh9): 1r?,, N1?'tn )tf r| yD . A
. :7, ArV
matrix illr19Df 'p]t roit A ilj)'tE)D )u t:rx 1fiv 1fi D''n) "]tnu)ln 1rP" matrii n!)1t)D1
.Dtlly l!9D ]rt'lN v/)
:'[) "I1h11l0il ilj)']l,Dil" i'lNl)rl A n:rlrnt tny:
0 0 0 0 0_ q 0
0 3 4 .5 I ) 0
0 5 .6 2 3 4 o
0 7 3 4 5 6 0
0 4 5 6 7 8 0
0 0 0 0 0 o 0
27 11Dy)1VDn
,clg fllv/l C lou: Jt])tyD rt))r7L+001 )Dg,N"!ur trlN
#define COLS 5
#define ROWS 5
in( matrix [ROWS+2] [COLS+2 ] ;
typedef struct. listTypQ
{
int row,'
int cof ,'
int member,'
struct listType *next;
) I istRecord, *listPt r;
-27 -
:J'l'DlPl'19) nl'l'I)n,'lll)il])l i1>DDn n))'199 n)lnl
:fl'|11)il
/ / ttltnv)a litn Ql nfnlt,l ir)'tt ,!
1/ 1i1'.t\ ln)N )rfDil fl'ol! ,U 0)9)l,
// 1i1\r ]lN )U matrix ilf)'IrDl it'Du'tgDD
// 1n1\ ])x rv, matrix.ilJrllrDt n'I)Dy ltDtl
// 'tn)I lf,rN ,v 11y
'it)xil r}lpl]lil rN r''tttrit Jra ,n DD flt)tpl1lil J1))'ls9
:),trV'f1ts 1111 ;tr)Nfit o)g)yoil )n lnt vDnvn> lX)) .ll)]]nJ Tt nrN rl])jiD]! )f n)ir .t
.'lnrN l]rll,.i, 1D1pv tr)!)ypl tuEtDu ntxpj)9] vr,nv)n> )N{J't J)il .l)),D ))t .z
J]rr, ilrlJ})ir irs)lt)Dil ,lf)N Ix JtD)rP ]l n)!p)19
. matrix Jl]n'llhil illr1lrDil
void createMatrix(void)
Dr1}N >V ilD)ul UN], )DlsD n>\)D .lr nr!p))9' trlrn ,'lN il''plnD] Ertiltl
int findStar (listPal)
ilnl)nil nsr':tl,Dit )11)N rlN ilDr!'ID'tt il)tp)t!
'"1lnurl 1'tPt't x)),void displayMatrix (void)
z81lDya1VDn
,lg'Jl9vJ't c rev/l nlf'lyD nl))n
Tlcoot )Dg ,N"!utr l;fN
-28 -
lisrPtr glowingMembe#0 ilnlnl)u n'x?:tl l'ls)
nfVtpn,nnr{,l'lf tr'l)N rl)gnND ' rnuq^ ilJ)19Dltr)']i]'ll tr)lf)N tlNl]D ll i'l)v?)'19 '
..tr ilD)utl Yxr) y)}n ill)tnDl
' ')D'tgDi'l 'tr)).,',)f
n,,fl'{'tr)'l'n il):p)'l!l.or)uY tr))1)l9'l)l D)llgDl tr
rrr)', ,ir)ry 11,oa Ja>at+l - t rr D).onil :H'JJTj":1;1'fiJIrHl;Y;
list.Ptr glowingli[e4b".tt (l ]
t
int i, j;
IistPt'r L:NULL, 9;
for (i:=.---(1)-.-; i <: RoWS; i++)
, ror tl=-(l) ; j<:cols' i+t) -
{t
if ( (-(2)-)' &&
( matrixtil tjl >:
( matrixtil tjl >:
( matrixtil ijl >:
, ( matrixtil i jl '>:( matrixlil [i]. >:
( matri'xtil tjl >:
( matrix til tj I >=
matrixti-11 tj-11 ) &&
matrixti-11 til)&&matrixti-11 tj+11)&&
matrixiil tj-11 ) &&
matrixiil tf+11 ) &!
matrixiitll tl-11 ) &&
'matrixii+11 tjl ) &&
matrix ti+11 [j+1] ) )
Ioc (sizeof (Ii'stReco'rd) ) ;q : (listPtr)malq->row : i;q->col : j;
q-)member : maLrixtil tjl;
q->next : L;
, (3)
-i(4)
,clo tl!v/] c n!{rf ,'t)f't!,D ,n)tI.|
7lfiooL )Dg .,N,,!urr lrlN-29 -
:Dr1DD1! 'DV' n>aPDn void redriceMatrix (listPtr xL, int m) itrlln))v/ i-Ptpl't9 JD9, J.nt)']l,El l)tl - m-) ,Drli1)t tr)'l}N J.tD)U-l UN.t) y)ltD )u n:tnt - L
.(991N)'l)']yv/ lDl!, fllfn Dtr) m lf'pir trN til'tt ''tlN )rn ntronn tr it)sir)ts
y]s)t trtrl]t,D)']iltti-t tr)''E)Nil Tt$''viv D)JtDtn nN npntE .ll n)!p)]9,Jl )y l9.tl. NULL-, L y)lJ) il)sP).,t9;-r
O1U,^l .O))t)y D)),t).tO ,pt O)llgrDl O))DlDDn ,O)).tgll nt1,)rt1 D)tOn il)Sp)lgf)t tb rrnll ,irrry 11D) la>a (3) - ( t) D)rpnn o))'n )fi-r )'r!Dn ,rN il))nrir ntnnl
.)r))D N)nu "lDnit )ll,)lii r|x 1!on
void reducelrtatrix(listPtr *L, int m)
{
int i, j ,'
listPt.r p, q;
y._ D,
whif e (p)
{
q:P;
f- (1)
(2t _;matrix til tj I (3)_p : p->next;
free (q) ;
30 TDyalVDn
,l9I!u) C lsv.n nll')yD 'll)lr =
7L4OOL )DD ,N"!Un lrlN
31 "rlny: 1,uDi1,
matix mhl)Dit its,']lrDil,lE) nsnpnn t'E N IIN nuhi: rvrx mainl ) ilxi2)15 T)5) .,
.2611DYa lNlrnfl orpT)rNil rx lunnnta
lttnDl btV,rf .Orhry B)t1)19.J)l__E)'l9DDl tr))Dltlnit ,tr)r)t:)f i'lt tU Otl9n il'lP)loflN llDD Sss:D:rn>t,n)\l 11tll 1)rJ (6).-( 1) b)19nn D)tlu)li-lrlloD
lN'il)?nln
{ ' int, star;
f istPtr l-ist; ,'' ...,:createRandomMatrix ( ) ; '
list :_(1)_;l
while (1isL)
.,t ,
Star : (2)r;.., {'
reduceMatrix'( (3)-. . ,sLar); -
(6) ,;
r.al-rr rn O .!14q.!tr v,
,cl9 ttSul c nsu: I]flyE Jt])fIt
7L4ooL )DD ,N"!urr frtN
(nflryt 50) 1! filu :/1 xul!
(ntrtpr 2o) ',ttiv ?'to.nilh nlxu - 5 n xv )y ntv
5n $0
. GUESSES il,.lru'f r.ny) N)nr \Drn ?nvt|,: l)oun T)t)v i))lrn' D)i'n o)r|f )f']yt! )u (oruo:n) ntl)nf trilu ,(o)']1,D^]9) tr)9)D))'rx r:v; n):Pn lr ir'Du
)?nvl lrNs)J'tlx )rlnn , RESULTS J'ryDn )u tn:tl: N'ril'InN e)Dt)lN .o),nNl
)>>nn, GAMBLER l:unn )u rn:rl: N)i-r ,Jv/it \r)n))'tNit snvS> ytlv/l t)'ly)u, frrrrn1turNtit ''tf)Nit tnt): ,nar rlof E)IT'!Dn n)xn tr))''tyDir ;sv .'nv)t vmn )v t)v/tn)) ,rN
v/)nr)il Ntn GAMBLER )v.r lruxrn 'tt)Nnl , 1 llon pnuD rNJtl xtn RgSuLtS )ull)Nil] | 21roD Pn1ll)D llNt]rl N]n RESULTS ,V.' ))Vril ]lNil ; 1 1!O'O PnU'n) pn,lnn
.nx)n 1)1 ,21ioD pnvD) onlnnil utn));-l Ntn GAMBLER )u ))ui-l
tttysDNf nr:tn) lfltN ill)rnE ,vrn)Dn )ur or:tl:n l)u,ln)) ]ggD trN rtunD ]l i-11)u
P-t't,t]N rDonNn rl)))r|il],I))DnDi-]
tr)tlunn nv'bvn'InN pil 1x nrrn) )r:r RgstlLts )'tt)ND rnx ): )v't>'ty:itNlit n5ztll n)tn) Dn]yDu)D\ , 4 ,2 ,l :i1)Ni1
.itnt)) iDtu,N'tn i-lJ)f Pir 1
.nnl)) i-t)))u,i] itJlfi7n 2
'lPrn 4
-31
32 lr,Dya lVDn
,dl9 JDV,] c Jtguf J]]f'lyD Jl]Dr]
7t4ool )nD ,N"yurr 3DN
-32-
7...1 D)nrlu' orrgonnn rnx iz'rt Jx ntrn) )nTGAUBLBR )''tlND tnx ): >v :n1y
\ :ilfpit nf:ur n))D oJ'DyDuD]
:iln_s)) il)tY/Nlit irJ'EPir I
.flns)) n)')uil ilJ'|]Pi) 2
.ilnf)l nts]]PirD JlnN .,)
"lPrn4
.ilns)) il)lu'N1it illltPit i71 rx'prn 5
.ilnJD ip))yit nstlpit p1 )N )prl1 6
.ilnlrl Irs]]Pith ttDN P1.rN li7)x 7
,zj
-.DATA
-SSEG,:.)
'' , I
DATA. SEGMENT
RESULTS DB 1, 4,2,L,2, 4,L,2,1;4,1,t
1sp:g-RESULTS- tt
GAMBLER DB 3, L,7, 5, 4 ;7,, 5, 3 t 1-,2, 1-, 3
, P ,, DW LEN, RESULTS, GAMBLER
ENDS -
SEGMENTTSTACK 'STACK'
DB 100H DUP O ,,
SS-EG ENDS
I l'CODE SEGMflNT
ASSUME CS :CODE, DS : DATAt'
GUESSES: PUSH BP
MOV BP, SP \
MOV BX, [BP+4]
MOV DI, [BP+6] )
MOVa
MOV WORD PTR [BP+8],0
33.11D!/]).-lt,Dn
,19 I9Y/l c rtgul rtl.]yD iltDJl
7L+OOL )ED ,N"!Ur trfN"33-
GU-AG:
GU-NEXT:
START:
AGA'IN:
CODE ENDS
END START
XOR AH,AH
MOV'AL, IBX]
_(2) AL, [Dr]
CMP AL, O
JE GU-NEXT
INC BX
INC DI
LQOP GU-AG
POP BP
RET . (4)_
MOV AX,DATA
MOV DS,AX ,
MOV CX,3
LEA BX,P
xoR sr, sr
(s) ,/
o- ar,ILOOP AGAIN
CALL GUESSES
(6)
MOV AH,4CH
INT 21H
TN
trlu'l .O))])y tr))'])]E, 'Pf, tr)]lgDl O))DlgDi-l D)))U)l ilgtu tr)'lgn fl)]fDi'l tl)lffE19OD rf .p) ft1)1 ,flhy 1^tgl ,'Irf (6)-(1) O)'19nn tr))1$)ln )"ltDD IN J1T1-1DI
i .)J))D Nlilv/'.l9nil )lt,tlil
34TDyalVDn
,clD ,t!u,l C nou: rDtyn rt)lrl7fiau )Dg ,x,,!ur lrfN
r.
DATA
SSEG
D 5l1Lr
-34 -
tL^4^*^ /- -l.(nnryt L5 - i'bxvt lar) 8-6 trtrlwra'frtn trtttru )i ny
\
. 6nbxvt
. D N'rir y'npn u.'toitilt A Nln1tv,,N'rit llNn illu ,D)i't)N N n)y: tt))'nvrn ilt^Io it)ll)
itlTof tr))tv/Nln trr'tf)Nit N ,u tr])Dit iix ol l)'tNt it't)tnDt rllu,hD tux lr::l Jr:s).il'lJ'lJil
:!'lfhlit
?-N-it ']lNn IN Dx ])]Nl in)tnDt ,lfunD , N-t D,A rlN n>)pD ']urN S n't)u it)trD .1
.]l in'191..:. .va vDrtvlt> )Nu.r Jlin nltx unn). u'r"It J))N ,itftr) in)un )f n:itrrlgnnt I'vDnvD iD)N il..t)uit )f n)il ,J) )y l9.t)
s suM oqt rl)])g']]pl it])vrf ttlry) J.p)tltit .2
.65535 )y n)y't x) tr arrp: ol)'tuNlit DrllNil N ,v/ tr'tfpit .+
DATA SEGMENT
n _a I * )n-J
D:4
N+3 )r
I
1t
P DW A,D,N
ENDS ,
SEGMENT STACK \STACK'
DB 1OOH DUPO
ENDS
,1]o ,]9utl c rsu: rrtl'lyD illlfll7L+OOL )DO ,N"yU,l ItfN
CODE SEGMENI.
A.SSU}4E CS : CODE, DS: DATA
-35
S SUM: PUSH BP
MOV BP,SP
PUSH IBP+8]
PUSH IBP+6]
PUSH [BP+4]
(1)_2l
DEC WORD PTR IBP+4 ]
SS RET(3)
PUSH
PUSH
PUSH
(.s )
_ ( 6 )._:_(7)
SS-RET: POP BP
RET 6.
START: MOV AX,DATA
, MOV DS,AX
MOV CX,3 ''
xoR DT, DI
XOR SI, SI
LEA BX,P
AGAIN .
PUSH IBX+SIl
ADD ST,2
LOOP AGAIN
CALL S SUM
' Mov AH,4CH
INT 21H
CObE ENbS
END START
1vD:n36 lrDvl
,lo rl9u] c rleut'rtl)'tyD-nlltJl' 7L4OO1)DD ,N"!Ur frtx
-36 -
.o2>l)y or)']))o J)l o)]!9Dt oDDlgDit tr))]l,)l ilytu,D)]Dn il).EDil rlD)II)l lt) lrfifr ,n)r! 'nol ,ll)l (7) - (l) orionn D)))D)tn )'.loDD rN JntlnDt D)u-l
.)!)),0 Nl-u]9nil )'llr)li] rlN't!9h
yo*tn| )t:r nt 2ljru DNil , A DB 3 il'r)ut 1*; -: r)D)DDit-A = 3 il.l)uit xN l))m DN,Nr, lN ,'lfr' il)y t DI r:tx:'ltntDn yvn)l
?nl,*lu
nflvn ))u ,lN );>n nntvE rD)t )l .ornnsn ir)])tir i-rp)'t N, nlv,]pD nD)vj'] iDli):il)xn
.tn )r:na ,D)tr)f g t);tru ,(irxn.n!))N ) y1lvniu -'info
]l'tnNil J'tD]llnexr y)lsEi't .(D)D)t t6 n tD t)ttrv,r ,nDrv)1), Ntit ,tE'Nn )x yr:snn - nexr
. 0 N)it
(uo)it) rEtrfil IN il))tn n:tuxtn nJ;nn 'tuNl.,or)rD tnv)v p,ft!D.lttt),?)l1otrnEi.y >v (l29rn) rl)I) n)t>n i't)))u,i'r ilr)Dai ,i'r)tl);l fiiu,lpnit i1D)v1a'l'tvrN''tit nntsn )u
.(')))N nN'])]trJ lrht
7 n)xv)'ltx
.'k' nN );:y11tns lnts )u yrDitil-Iu, nt -lt)Nl
37 1fiya lvDn
,.lo tt9ut c ,t9vrf Jlt)tyh m))r.l
7l+oiol )DD ,N,'!ur ])tN
START: MOV AX,DATA
DS, AX
PUSH P
PUSH 1)_
CALL SCAN
SOF: .MOV AH,4CH
TNT 21H
SCAN: PUSH BP
MOV BP, SP
MOV BX, [BP+6]
S NEXT:
cMP (2)
-.0JE ADD_N
_(3)_)
(4)
ADD_N:
MOV AX, IBP+4]
MOV _ (5) _, AX
POP BP
RET 4
38 1IDy) ].lltDn
fiM?Dn nDrv}.-t cl'lo, TI]]it rlDtsn iN il9)gth tUN ,r)ypn ttou,f n))tn lvit 11Jg2it)ltDit
-37 -
_!*)_(**) _
:
jD rlsu] c lour: ,]))lyD n])frl7L+OO| )ED,N"!Ur lrlN
-38-
- .or)try tr))'l))o'Pl Dr199b DDD'ttlnil oD)u,)l ltryryn tr)'lon il)trlil r)))11)l lD:tn:t ,n)t! ''t'IDt , r:): 1s; - (l) tr)'t9nil D)).trr)li-.1 )-.topD nN Jn-.ltnDl D.tvr-r
.)J))n Nlilu, lElnit )lu)tit nN .loDD
)y,tJ)l t:nUD OXn , RET n?tpll 1*;t ) -t tD,o]oDit RET 4 ill.tplit XN T)p) on
\. .,rN),,]N ,')),r nly ?lpl)ri)
I soF l;In) p)r n)))nn trNi-] , (* ) -t tDt])gDit pop Bp i1,1tp9n Ix \r,our) trN,Nr,, lN t,1)n n)y
I
I nrilu
,' ,nits )y ir)y .irtl nr b>r)n rn)1 61911ro ityt'tN ti n)xvr:, r, : :or)t'ljil lr)D)D,! p)n 1191 .X
DATA SEGMENT
M DB 'AB' , '..
DB 'C'
x DW 'Gr, 'KHt
,Z DB IASSEMBIYI .''
DATA ENDS
(DiDt grir) lirntt'trtru (brrr:n )u) 1tt:rra :xrr)u p)nrstxopn olgtl) o)ltn lirn:DrNlit 6>Cry,pn-rnIa O)DtVr..l
M.1I
M+2 .3
X+ I .+,
X+2 .5
I X+3 .6
frttrrtfiD )nn lttrrin )u t:rtl nrni nA Mroy z+ 4 ,,w, irl.tiTsil y:r!)]. -]fiN) .7
39 TDyalVDn
? DATA E_NDS:ir ttD Ty Z (evn)
,.19 J]5v/'t C rouf ,.llllyD rDlJl7 L4001 )DD ,N,'!Y/r trtN
-39 -
MOV
ADD
AL, 1
AL, -1:11p )t\)Q'l\!) .l
:1ip lop'l\e) .1
:D)Nti] D)9)y9n >) >y ily,nl ltP lDp !131111-115
:DrNfi.t tr)!)yDn )t )y nly,ilt 1'tP yloP $l)l lnN)
?NU'Jil )n Jyt t))lfl n)il, vD .t
. ?nvr>)n )n 5v l)ftfi il)il) ilD .2
?)rD)S'INDpil 9)9tt AL ])tNn )v; t::tl n)i) nD .3
)u r:,1 i\t1v) DNir , ADD A L | 255 ir"rli7lr ADD AL , -l irT)pen rN ?)x1 on .+(.uN.ru tN ',,1),, il)y) ? AL.t))Nn
MOV AX, 9005H
MUL AH
:1'lp ll,p'fr)!) J
:trrNti] tr)!)yon >)>y fiy,ilt l)i, ylrP yt!)f tnN)
?NV/)il )tl )v t)).rt i,t)il) ilD .1
?nw>)i1)tl )v tjft,] i.t)it) i]D .z
. 1.))D)s,rNDpn D)Dtt Ax t)lNil )u t::jl n)i., i1D .3
])lNn )u, t)lltt it)iu,) oNn ,IMUL AH nIlp9t MtI_ AH it.I)p5it ttN T)11 6n .4(.,,N),, ]N ,,.1f" illy) ? Ax
MOV AL, 255
IMUL AL
?Nu'lit )ll )v Df.Et ir)il) ilD .1
tnv)>\i )ll5v t)l.ttt il)il) itn .2
?))D)l,INDirir o)gtf Ax .t).tNit )u t::rn n)il) ilD .3
, ))ftJ] i)nv) oNil , MUL AL it"1]i25t IMUL AL n11pen l]N T)r)1 6n .fr. (.t,Nr,, )N ,,,tf,, n)y) I AX ,.t).tNil )V/
!irfibtn:
.)X.rUn lt:rtn) i.r.tDu Dr.t!)ri.l lttlrJt))nil l]un nrut: x)x trD.19, )N prnyil, l)N