From fafa45717d2b0279050d84f7e5dc55943c852cce Mon Sep 17 00:00:00 2001 From: "simon.cirilli" <simon.cirilli@gmail.com> Date: Fri, 30 Oct 2020 11:57:00 +0100 Subject: [PATCH] findBestDroite dans le cas ou la fonction est celle de base --- prog | Bin 22872 -> 23344 bytes src/regressionLin.c | 19 ++++++++++++++++--- src/regressionLin.h | 18 +++++++++--------- src/regressionLin.o | Bin 7472 -> 8240 bytes 4 files changed, 25 insertions(+), 12 deletions(-) diff --git a/prog b/prog index 4ab3d95ffe0b2a04390e2df041d9379c6ed5121e..8659b5cfa0775c39eb8687b4a1a217c0879d990d 100755 GIT binary patch delta 1823 zcmcbyiE+a=#t9ls9|9+8E#u<gW&i^Y?uobdDPG|Ka~RO+9EdPO&g7kpr$q{$Z4*BH zW9dhRSObe??;o~4VD@>vc?MGgBjb_HKbbk1Id(BJFnILxI#1?e|0W;mu>+#}gMAwR z`;#7>Pdz$ae|+K>aQzW`m|uSKe|CF?e=G_Np&q@ue5?u#!H%7OJv+boXg>95e#7B$ z@GtX=`;+51qUtjk7#MgM7#P<4{r`Up0|UdIzyJT=VPIf*^Y{P%FANL}fBydeFT%*c z!1M3_|1FFR3^M=z|8HSnV9@#h|Gx<%1B1{1|Nlc685m;z|NmdY$iR^E|Ns9fj0_Al z|NsBL!pOkz=KufyGE58%A`s^?FjfUIFjfdKO7pODOkiZ6tk22GIAO9Sr#{n%Ka;aK z)uev>`TrjpU|=mW3=9l03=9k({!CuQDaZ8S&*W2_a!Mcm{{Jrvl6T}2Xk!ZGW%J@; z2k8Q--UCwocQO~39OHw@nq2Zs7yeFu#VN%q!^pr8Fxit!n$?DpfnmYqOfF~E7Dfh! z6Pq`3r87-V;LTt>viT(M4JJmv$rl;LH}4eqAi$)_I(fCCJfq*{(~5hU7%xojR8gqE zD8|6R#(R&6fq{Lu7z2X<8^1O)1A{;!1Dn8gCI$uufg}btK@f|BfoTs&tq>P81B2i+ zF$M-k#s5qU3=SZtGB7akfqcNgz`!`Cj+uc$=p9%=5=bCaIHjnBfl(1;Fi4R|K?wt+ z5=bwDVEqP=IvEhh0K=fu%nS^oKfnq=dNmjr7=-@9xopXkIZ`HbfK8JH8NeX;2qY;E zVk=-6rp3a*Aj%}pz`zJr5CAfaQ@kF=hngm|9Bc&0I=0lw9BEMVB|v5}2nvF<GlL`< zpyq?)4dlr=YOD+lVg)6|42;YmCS$00x+4Q4J0$2p-e&k<FP`qiz{r6tRBtby?##f* zi7aL>p6<fH$b}~4$H2&qB*fq#aUJAT9wf03_7aCdV!S9~;)x85e5fKx42=8`5lyhm z7#Ji|7#IaX9+Q{{_1Ope$s8~?1H)vF&8t<zSro)g7??S%xUIQ8g=M%H7$i&>nE4P~ zNt4ZAH9eRZ-%qyFxz5cjs4$;7&x={e=Ei1G-R)xaY594{C7Jno48{35Wx<ujC8@a# z@hL_5nI)+VDXDq+xtV#1C8?!F4Dki|nRz7)d8N6jMG%qP%)H#xl8pS6R6~Y>qSWNf zVvsp0nYo4xDVe!O3@NDviA5z0iA6=3WvQtQX_<K`PN~HuE)c^Vz`kT=U~rji<s#2% z0Om3<n1FbbIbAd+N4nT-p5qe2$arM(M^|yi3zI*(iZTl_T$!xsCeG-v+0yMi6B7&f zWG+uV#w(L8J=+<7Pd?}=&v;?-Lr-@`gUOm+>XMmE3=BdH{0v8+;Rm&YVg2NXUgDCw z85tM^nS>c4coo1BFh&0-H+qRnUSkC5<z`4=153h*3zIi`i5uPl>y=;-5P;}~NxuN= z;={;+KPUh6vbTh#Og1J41_1_14BbLt_wq3WK%J5bHCAbIp|?1r^W=-(;*#-DH3y(- zKm`IwSw2`zA4m=3ToAd*XFVe~QXFkw=evw)b3{M_GZPcj<XypfoUmXyGWlb$Ip+na zffptlhL{UtR3?)vL-Yk5I6+o1Fu>>&n|FrPGcn1EO|}X*<GiK@k*%Fv8E(!QtPSDm zPTm=A&efm?;VFnu{uOS<xxf{|t(d&fU3jujgbJ&K8v_HwWJ6}*$s62RCig_Ba9V&w l7#J94Ox_t`&UwKXqGS8ypAqI<?Vz%Pfq@~7adK6F901a9owEP{ delta 1369 zcmdn6jq%1N#t9ls5&;vnmT?{6VgQ2!ToZ5YQ{2J<<}jesDG*_Xl*v08Pm3&kJ>xXb zkzdP}BniG3n_V8AY8%qGc?MGgBjb|IKbbk1Ic703FnILxDo^HO|2A2H!%jhtRe>SY zqgPjtRe>ScvGcEI=QkhCryk93I6MyiWq$F0aveuhTml0F12+Q$!<oPT|F2<SVEFU* z|Nkot3=BN~{{Mf&z`!8$@Be=uMg|6*fB*mYFfuUM{QLjEhJk^>=l}ozI*beqG5`Pn z_hDpU$oc>Oe-0x9L(TvH|JN`wFueKy|Nj@p$#$Gdj5{VLa_Tcl{GB|BQ>|X%@BjZ$ z|AM_I!@$50!@$5G0TXxR6KG>{<z;i^VF#%L$%E|U`1}7qKS&2y-kF!p4Iw`Vr2pUl z|9l{MSCD>ZUN%>R{2m4d1`de46axbm1$P)27=BC+<dSEcF?k}FG^-3F1H*~Q8@Zf0 zQWzN+KK%Xve{!Ll@MZz-0H(<T+@6yYcrzH6Y(B|*gNadZ@<m4R%{v7?2r#j+OkS-h zTgwBlYS#$A&;RTS!Xi!m^;@!n%%U|`=Q#=s!J#;?uHz#ve;z$S2=iGhJZppt=2 z5X9nOVA>2)E5yajz#uqHjDdlX_dgQ@g90cJ7#JA9eq&%@V4PFO%)lUY5Ud~xBoHc` zQdGjg$O|$U6aXRxB@B#wAiWHN^~*u(I6xc$41-QHGcbsr1}gyR)nH&?5V`>8vL#RE zNSVw5HjNWx0E6IFkR&rmEdz#O%q$EHVg)6|42;YmCS#~b3Iihx3rO+ib86u%n}f8i znHZl;?$f=#xj=8bm`!nhPFZkeaY<?}Lwrh6er8E3LwrGgW?l(HK~ZXQW^rbI9z#lI zt|5ppVo1x(OL0mqE^z^?oc!KZbFxAx2cyX3i>~sMCERQ#KVW3v9O4$j$hc(kL3dGR z0fr5e54wvpZUOUz7$i1-bU)9;w1;c*Aum0~Et5ZbwKKk-T<I;(xMA{4Z+Aw4$q&8N zIb)d^7=#%38J0{I^br;nWD;hG;8g&HDa^kNpC<?Uh)bSg1gYa@NMHj?!igi38-2tj zFEBDN2r@}92nay*!lds^R`d~Pd^`E1kG&-<I)5=TFbFV6VyI;UyM&Ly02<J#P(#Ef zJNk+<nonNnD=rxfRkHx929%ya%96oqnm}q8CxXb$7kt+<ZtnJ9$~5@_Bg<xkpaf>7 zM~ssvh3auGf$Ci{`DCa$=LRTm!(`4db3u&qXmVhfzMupr$PNYu7`<Zi#ISlMre7kH zg(A&3H>*Nq111MXnsYL1L3m1&Cq|lcs_H^`PbLdSicg-v%Q5*wqy#6Y3q&+vvS5@s uYb1y_*^pUyazc~_X9I}Gz`)Qjd190~CxZ_}<?6{7qs*CB`%UJGRs#TV@j)m6 diff --git a/src/regressionLin.c b/src/regressionLin.c index e0f64dd..19f80f7 100644 --- a/src/regressionLin.c +++ b/src/regressionLin.c @@ -1,13 +1,26 @@ #include "regressionLin.h" droite findBestDroite(point* pts){ - //dans le cas que l'on a vu en exercice on peut directement dire : - //car c'est la même fonction de base + // dans le cas que l'on a vu en exercice on peut directement dire : + // car c'est la même fonction de base + + double gA=1; // somme des xi ^2 + double gB=1; // somme des xi + double gC=1; // sommes des xi*yi + double gD=1; // somme des yi + double gN=2; // nombre de points + double numerateur=gC * gN - gB * gD; + double denominateur=gA * gN - gB * gB; // pas possible si = 0 + double a = numerateur / denominateur; + double b = ( gC - a * gA ) / gB; + droite d; + d.a=a; + d.b=b; return d; } -point minmethode1(point depart,point arrivee,droite fonction){ +point minmethode1(point depart, point arrivee, droite fonction){ point pt; return pt; } diff --git a/src/regressionLin.h b/src/regressionLin.h index e1905e2..f1902d6 100644 --- a/src/regressionLin.h +++ b/src/regressionLin.h @@ -13,23 +13,23 @@ typedef struct _point { } point; typedef struct _droite { - double x; - double y; + double a; + double b; } droite; -//Analytique +// Analytique droite findBestDroite(point* pts); -//vérifier que ce que l'on trouve soit correct à l'exercice (on a déjà fait dans un exo) -//on peut donc reprendre simplement A=.. et B=.. si la fonction de base ne change pas -//sinon utilise solvSystem +// vérifier que ce que l'on trouve soit correct à l'exercice (on a déjà fait dans un exo) +// on peut donc reprendre simplement A=.. et B=.. si la fonction de base ne change pas +// sinon utilise solvSystem -point minmethode1(point depart,point arrivee,droite fonction); -//on doit faire ceci uniquement si la fonction de base à minimisé n'est plus la somme de a*x+b-y le tout au carré +point minmethode1(point depart, point arrivee, droite fonction); +// on doit faire ceci uniquement si la fonction de base à minimisé n'est plus la somme de a*x+b-y le tout au carré point solvSystem(droite dim1, droite dim2);//différentes méthodes vues en classe donc minmethode1 etc. -//Numérique +// Numérique point descenteGradient(int precision, droite drt); #endif diff --git a/src/regressionLin.o b/src/regressionLin.o index 247c272eeb1219c570a86a1ac1e3eb7e3a5b7423..8a66d8cb671cb37de211f2f370d1c391dc2f9096 100644 GIT binary patch delta 2153 zcmdmBwZUP6rkNB295{ek4h#|u;tZi4JHR}K5B6#N?@xMkKK1By{qc!k!1YJ$VSf3E z_MS|dtP{KB8T~e{`pU$e$iOCWor!^gK_F@JDrPB0#mPsR6*Lr+7#J8BLxod{N*EXw zwV5F%iWHPEFe?2AsTKr@Fv?8kWl^Y?fyoO&1VLQ3<jEW<lR3aTWRY};gV`W;3=9l> zP?~X$77GJ|D2T@hR{${#%!L{T6#*NcI+-I4YCNOFWIq;(dRdTmkgMmYu`)1-6_gY+ zFfxOfjG^M`jtq?KAYXDo6n(H4Pj_Nq<UkX0W?<w*6LMi-<U$kjV_@V)5@K+W02x}( z$b%&K!5%Eg$crK-p2)z+hbof9z{rmz!oVPz!oVm9@}k5%xML@Cz}O57lQ|gJIKY9( zD9EVFC(O;vC(S3wD71M2iz1`BxCsL@hZVOqx2LcS7XyQY2?H}9f-8xTWdgYml57|l zTqd7pmFF}7d4qw0!34yce27(Ja)AWPWHB}oM!(60+~SPyCp)uU=VlgEn9rQ&#VllV zW3m+cCXTfHyyTM1{JhDh+3k2zQuFe2GxHKlQcH^_b8xtE<(1~97D2ea9MasmnR&UX zB^miCsfL@=Ioui9Qc?>Ni%KT1<&<PkEGo(@OHJK;lv9{-@^vm%K5&FO@(Hvt1@f|a zP3Gbbn*4`Lf^p8~Q0~KwfnZq%1_pBm1_mJpMg|3_>tSii87dC*6-?X@Dh~5IOgw&a zAg}o323`rq#>tJme#lOpe2zB>oZeZXcCauoFo;dI<r8NVpB&2P%{XWBLOy-Q50fwQ z#WU`hY{)Mz>B<OE>ItD3xEL51co`TNVkRf@i%V8PWy8^AgC|eq*Jr#x`5?czq%Jhi z)u5?)Hu)pJxMV&k4>B+?Ohc13oUACI&*(onP(YtCa&n`9IHSSjnF9KZHzuDHaAz!= zEGQ_>WXe2QOVG_w4QfFU)G;t8wm`+>(ZszcFBH^g{4@EYptxi@RLx{GHIpVY3W+n` zoGdA%FIfe3;&C)Jjgu3F#3ehRvJcT@`zKEn5|^9?mHmw-8$9`-khr8hR8|a1!(6^; z@<$<Y$#$q7O*Gk($%?|_lG;#NM>JWr$$`S+k`hqaRy5h{$&JF|o{ONqo{J{S0oAn< zP23f#ehZrT?8y&>#U=MZqwWlv?CHsZBI1nOCToi5OMZo_VSt(h^XaL{g(BjThoQ1M zXtExY7mDaJI!wMOBF;E>@=FnY$<<Jmolun^2ZO9Nm~1F2&bWNCr>MT-8jt`31H&1p z8kk+MbZ~9*K@su#w`j5(p}M{!iGy?oKyCbkBo4{|7oh6-KzWFP0iH1yLDg%ciT6PD zn?l4Vf0h>1+yP<3^;&_v19CZ<_>0Mfe8Q9Wh^8<qOjZ;VSA-P>4N$v4P61(9QLtdM zqnJM<qu=C-;^vHflMA_}CtFDJO#UD)fy6VAkYJoJ*;B%vDMDa!mxLYTg2^W(?3p?Q zCUZ&JiLQVetqUtEK>W#ulERY<BqcZ(2!OZ@3_m7Mlr-nO3RM$3`J$vbrx80uu41yF zlsVHX_Q_sSc1$xQCU;5Mao&Q;eV%+#%ADzh#AGgMJI=Gv>S6EXKxuQPE}qF<(soQ+ zcqSKei%otYt--m22V&rk$$~QGoDV?dJp%(n#pFO43l30BFfcGUOr9uX&bfgfqHxjV Qi!v4*k`T^~$rr`t0qA)_%K!iX delta 1461 zcmdnsu)%7ArkFSb95{ek4h#|u;uGUNnb=q+u99ce+j#0L6L$pzo4|D@1_lO!%E_mg zr5Jf9KV??X;7wv+U|<XtPAMv3VC2<i2J2@KDJWrJ<ogd&EeH}}<e03>qM*nDlNW*r zg1BtSlQ~i*bAWYlPCm;bp~44}1erRAnT3Htte~Wrfsq-+WDFHaVPIqd>Dqjj)tqs1 zBfIA01yUT0B9pt>%^CG37xIcTKAC)*{rcp+9GfOraN15j#OXR&h)Zg-1(zG6cusy^ zx<YAQab|j6YKlT;UI{}%er8_D<|W+1jFWfps7(IDBQg04kH_X1-aU+pFlU%EFfa%) zFfs^0odpwjnykn#&KNwokzbrK6GTpK;Fp-Zf!}=cXZ}Q0R;X$g1_lOE1_p*d{~>@I zNnC7lt$;UU{^XMa`ixs9{}hOqYypKB0|SE-R23Hk0|PGu1B1%sLP2p!eW+{znyl~S zg@WRYMw536>U&;;$`wLsm<b=DdTY?cS3$)mqKP|AHWU(Pl%DJ<q|c}{xl%}9QWhGw zm(Wx)Pd+H5&p2oDM<I79E2tVdMu;Mq?LV0&2MN1LzJgj7geL7Vd84p6Bmd-+!upcW zAUYY^(9~#878DVeOofUrfYLAvE=+b5(P#9XTqq(g83MKC3Ywbe$qPlqC6l1C@6cp3 zCtnm1mlTJ3fCH)uX1>s5Mp1FeGN`O9nrzf$Ls4-_cc`c-l!oaQot!8tE-3)DuK`V# zY4Su-aY;L<>_jx#w8;lW#U(#M!(=6zEa&8pqT-VAP*?3olifU7QA}L&5LEAFG}*P2 z1I6?i?@w+N6PKI@mE(q*1atYW$s5H$iQuG|{^Sed9D)&O@&%Ix#q}8%O?DI)mxN`H z1!!ujCKrn9GuBUDC@#($0F}E2q9=cp6P`Rnq5!Tl0qRnaV?bD8vZAE$W*<oxMn=8K z6Q#@<^ClPaN>8?s;hFqFN&<;zAT7aIFxgYup2>i3a+kE-<N{fi$!DZ(m=gFVbII6= zc0dj00%b-hn_;q{jPT?F841n`Xoj|!JW<A+a}rdI!Q_iF=A4J1**IXbpsYEQ5Zh!g zSv#f;qLaI1?Kqv-AV$5Id{Ne%>4E5EE;&0+Ep~`t<K#d&bEef?le^^Xn67e7F60%P z{6J2F^9Cqr85kI5Ocs<k=llUG85kHC5+(=ATW~;&293!R<;^)~fU-RU1H-h*7v(KD N#2}{Ln0!%69spxO<5&Oy -- GitLab