From e580693d7a8ccb1934fb5303f61e166ec7601cff Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Mon, 18 Jul 2022 21:43:57 -0500 Subject: [PATCH] Fixed another error with mult Co-authored-by: sigonasr2 --- current | Bin 16352 -> 16312 bytes src/main.c | 2 +- src/utils.c | 15 ++++++++------- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/current b/current index c4ade8d6d466e275a311c8ef1c1e34504b113880..a9eb2a16e17340c3810c348e3103254d996fd40c 100755 GIT binary patch delta 2792 zcmZ`*4Qx}_6~5PhvC{0v`RTMZ&}j-wHCYvvoN4MvIzi~VzMcDg zp9e_0(!J-NzwexT?$3L+|u1U7J@&YplPWq59 z)mY$C?RV3DLxCTFLF#s%6;@}3)mb=4-**PR1)CxT*>L#(A|4fpN5N)%vZCsvKOfs0 zo7#C?+R=4rLz#7g-t2=RMu|QRK9ieGyGCrK<~Dza)|$TJTeQCD*l7K+M97NT@DteTcqE9E?;~&b z>?Pz=`-abuue^sZzlS$N%JF3|IqM$ypox%wJ>F#ZJg0?Y$@beQVM+4}C!y88N~V~9 z%jb#7KAW1edj`1SyMm(qoMyjc3XVJ1(*&G$ZrGAQ5jnN(Ad9yj;Zr7m+*ihw_Q#RQ zU;9E;^S!F7PMg0C?>k!!HEY1;@>)xne1jz`S0Lc3vaVtBGE3Hd2oJfo)`v8RD@=Zm z$@5H}#_Zm}9cA)N1~nw#jEL}ztC3pMue;1N#^i(p@!3qG8VNUHJu_YMWcY$MSCX1m zd6{dO{MRn~n}}Kv%0f7c!YoUc8JMDBb=}G_s%6kKjqs!ZZ@m+KD*QVRA64o#byP`m zbyR*2p{_>dNhI%bL_WRsQ94|)me!ucYcQSY)wawskrXB&tSarq&G5#j@uI5+-6GA0FoytCf<({)^ig=RrRs!SfhbUTBM&g zM&(af_7j70m#6)mBv%*xt}^?Zf04_E<8N?e8o$H|vCGdQ5+<8u6#bbp%A?4Cl4tU3 z@x0GO#`(?09je6}!Q@D0CUFQ2w5z^!A)T$dk8X=Z3#I1krN6%C2b%TrN29NN~SxypRA%r@U8Pe+w!PAdn;nG(rF<(p9% zYrh0>jkJEh@s16j z{!~@tk?ZJiy)ClvbY_CTF8N`ou8Y^7$G5k5GCX%1UMv_c!9-nkdZBK!0Zx>xf6;4+ z1zLll?fxKX-Qf?kHt*zYvp+x@en`CDhF+Xp>k3?rkfz{Tqlb>c?M8{_U`vySW}&M|a;C)V zF20+jALJ&FE2G^OLiF#zsu?ae?WY;ANgnztY>~c4&%%h*0SnSBb-*ircg-G=hKNU+ zabmzP-~e3lOBk32+{Ki2o6|U`i{5IBQ~S+vo=^SVt=v#Ca#<-j-SbI`TjYk zUF2w(|4XRiP1{SP6C9`Os?Z)^uPMp70wEux+(Bwd^&TM*x}|YK3e_a^}R^b(#gbOLD$yE}-kQ3c|Z2TSiDT@YJrB(pACnbFyovQ$IdB z?FZTx!|OHJCfNo=1qR?kTMLZ0IcPV~-56ZRb-D=Q-I7h;%eUdF-JLWDS(ND~BnY>6 z{|Lt0{V>+ delta 2834 zcmZ`*3viRi5x&#Qk{^|Rza-hlk{s0VsP!;*{E)>XL2yb%11+W`G{G}K3N$luYtyt- zg6%qD{LgPEG8;UmDXG#fZlw z37y{P{=MD(cK2>??@q(*GwlgSJ`srA)+>a#>-tvx*s?!MVfXjl@LO)>Dac?v=$|g^+Ewti>-`6l zlauDxpy9>xi8JFzphv%=C?YZFr~J)<3H|-_0l2OA(@yXh>@Z+((6z|h=_B&@ zq%7?~sZZw5z>s05q2*9pE0~Qhwd;r;o$81IJEzK*2hx)r7{VrpA*ArY0nCnpG^?_o z_VwdD^yHw*A1XOuA!vO_#cNqJtNe_b{sA>ls$55s;4$r@S@5jM4rffc-o?l^_cWKR#mu07xR50sD=3}-B^Edp2EM&Z` zu*&vW;eI0;EX?&~GMU6j*78qK@i+|IK39!{Kl=!=x;7G`DsJ7wzk3h=8%Wz$KAb}7 zU!U|@UC+r=VZGrSC}F+E>zvdtwiPkS*w4rDOKq0SjMde_fmc+D_|r1J=7;ckp^WZ> z{X+T5eJCP_RyVP(@PmBF#9M8-ObTy8W_IG=nau27T*0U@4CjP8-QV+IPH>wIOq^%E zMb|;dFE;C$c$@Vudma4ws|-$b0ng@FQb+2wd?Q^G6-PI`g)+kSj77!E8{XvOnD|N5 zdhU8mOd}a(y}7!WI3K<9KBLo2{1u!naBN~?oM2ow7B?f2jii${9LA(q9h`{o$E5Qd z5|b`)2zq)uCN3hmqBu-P@BAV4rNRPQvKA|RG`<-@M2aN3W~mt8j?COm0v$yg;e(>5 z9kQTzD`isrTc~1t7Np}_aRA>eUhcKxpyPsUf5aOTKV%~x>Z})gxj@Au7{-d1Rh-9s zjYS6eiNbAp0;`vak>RoUR}jkAFn2ZOvggoM8)M=e8=2EF={OH3#d(g|o_R?|vH@m2 zH^S(=WcV&LIlOy@aN0OIMN6l|%Q10;4ReQRmSLW8W|@kLmtxYEZmDUINs-~0I2sct z5f&4#iFcUz9ur4qdD)<$I3;cw_WcQ;bjHu|TyPXSN(M zOnP++5ebBh?`5kE-WBMu%{aSohcDsRvhndtNTA5M{)Uxjtt5P>8ciOHD~!ZvACz55qi;MXqwl+-e-dE2TyBAiV5+vFtE;#QW4< z3-My7rTWlzjE>bs=Kqq(bR%t^&twLXwjdoxI)$_a>Fc*MnHi){Vtg~E@D1F?YNR{< znaS)#nn8LPDc;R+)LlV$!fAIYZGm69@7r_=eQQ@WB1j?jHtb21HzU>BavbzvpT?MH zxiIn>+fm&^d8SC0UiSm=d5X7e=QpS(-ui<6c|)(U$JCXj51Dea@Y;5xdItLutby-i z+Ly5CLjSye31h&iehht{`{;L4=RLp8acWOMQhf^eQh3_|LzONey-eZwrNmnTepl(D z13-O#x(Gp^i;luJpI=C~Fv~;U-zgh!7QN2}xP;ED^ zMXek6t^g~3L$#f@rXH<+g4+0BnDv`u(FY&eUFECt)uet_)2U0<)iqPdSoEwFF^hQl`K#-0ubmX1OK|H|;z0?xG=x)q%3YAxN>itO9)=(^f$TB~p+ J6dtQ9{|{-!9@YQ= diff --git a/src/main.c b/src/main.c index 0015431..6a1bddb 100644 --- a/src/main.c +++ b/src/main.c @@ -15,7 +15,7 @@ int main(int argc,char**argv) { struct String factorialSum = {1,"0"}; int counter=1; - mult((struct String){3,"575"},(struct String){4,"4200"}); + printf("%s",mult((struct String){14,"85018361849301"},(struct String){7,"1849204"}).str); while (counter<=100) { counter++; } diff --git a/src/utils.c b/src/utils.c index 35f2650..ef12f8a 100644 --- a/src/utils.c +++ b/src/utils.c @@ -20,18 +20,19 @@ struct String mult(struct String numb1, struct String numb2) { carryover=0; for (int j=n1.length-1;j>=0;j--) { int mult = (n1.str[j]-'0')*(n2.str[i]-'0')+((carryover!=0)?carryover:0); - //printf(" %d/%d\n",mult,carryover); + printf(" %d/%d\n",mult,carryover); carryover=0; if (mult>=10) { carryover=mult/10; mult=mult%10; } - addends[i][j+1]=mult; + addends[(n2.length-1)-i][j+1]=mult; } if (carryover>0) { - addends[i][0]=carryover; + addends[(n2.length-1)-i][0]=carryover; } } + printIntDoubleArr(n2.length,n1.length+1,addends); struct String sum = {1,"0"}; for (int i=0;i