From 9362e629997183f9b548d3e3254df4273e806a44 Mon Sep 17 00:00:00 2001 From: just1valery Date: Thu, 17 Oct 2024 20:01:43 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B9=D0=B5=D0=B5=D0=B5=D1=81=20lab=205=20is?= =?UTF-8?q?=20ready?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vaksman_valeria_lab_5/1.png | Bin 0 -> 117144 bytes vaksman_valeria_lab_5/README.md | 31 ++++ vaksman_valeria_lab_5/docker-compose.yml | 9 + vaksman_valeria_lab_5/project/Dockerfile | 11 ++ vaksman_valeria_lab_5/project/main.py | 201 +++++++++++++++++++++++ 5 files changed, 252 insertions(+) create mode 100644 vaksman_valeria_lab_5/1.png create mode 100644 vaksman_valeria_lab_5/README.md create mode 100644 vaksman_valeria_lab_5/docker-compose.yml create mode 100644 vaksman_valeria_lab_5/project/Dockerfile create mode 100644 vaksman_valeria_lab_5/project/main.py diff --git a/vaksman_valeria_lab_5/1.png b/vaksman_valeria_lab_5/1.png new file mode 100644 index 0000000000000000000000000000000000000000..eb24b2fdc63e61af63b2815105d23804c87d5791 GIT binary patch literal 117144 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 z zx{_0g>wZYd0xlO%Q~3Aw7t{>o0sH>YkPVh6_r|oUduWI%6@(;;5>-{gFGn`vIwl zi_Vu2NzTH%SN!Q&UTHrI3m%^lWHj{DQ?4CD=4Na81Jo(>&b^UMhCXv6V z&Nnua7N(|ixYiB4cLEybF%gn^qb&!_kxwlnnd0jj)4s`B16p9aQllN0T|OEai=JAo zNMmLVIF3sL#T!_%*A=U;XNe^@n|$u z-5QHWBxObyb?xmslU2Ew_d|UW33x9>Fx~urc`*`N*A8WOPN%J!4Ce6H7{Qz3G6CoDINT?w11Kv<_2Q<~jwBl(6Um!!=$LzZ{+! zq5UV@Tk8?*%rj2S%|bZ`+caiD24hMPG}-cE%x&XG^5?*r2n&3Y zoD{-7NI8c;$)TKN(1hu_!AEIUxFlIK{l?BYAQ}0L%bfgFBWP`uBDQ1nQg_?s-}xi$ zf3E+Wf=M5Xc9Z+L{oTbV??3aI}P80=lSn{;jB7`ZCwd$ZI`Cg(U zlEUb1Lx%b#S}T}`uQ5U%)5))eDgF0F-ae7E2!$Kk&bI`_O`Cp3)m>IrH~4d*G}jai zSMW}2EXzD->S;PYV~W34o}C++SE-AS=rqC1b&uPuYZ}-uMZ#?A5@Xvwn>RH#74#t% zV!aD^$R>tqs{Cj;r>m?FZBob?O+0CTN%NYhv2N@-PyH2|&B>)GdpgAT%=anGNc`yzpMP>sbs?s>ge;L;H0YD0&vjnDowjZ3 zzin;r)P9vq;T4p&0@n1!;-546&a%o~E-m|@5}24DVh5C|#R3u@LL+od4Lm0Zc?a7c zK>M^@+~fWDtj@m=k@3y3v6JiZ=&LyS``WX(mewBejeOB?b?sL%3f48 zgpvY%gXv)=xa0jNO{U$g&wYKD@1wT9d$Q&3gEa3B?{g^jXgYotLI^87+}{Rc-kO0K z*o0zOW$s6p0N4~gFP7suCuM@;2`3>K#h`ckQZ?easN$g8d;u9~pgjKf;OZGLt;DZB3~Rojj_`Np{KMU)*A z*Uuh=6+70k1Q%ux+t2=?(tfxVSkj#sd)6^`e$C5|znSCU|CvfQJl}w$QQXwx%F;3J zLCR|e{=nQelX&ZGzVS=4@b0;6BR9i}%_wI)T0i}>FK^R1-7A);EmyY2`3Z$QvU1b6 zW{K?0*@^4h?`!{cDtZ_#_}Bs}o2w~Dv{f&In_Z^(&*r)!%*`!UrmJ-A? zSGpI_X883q9G1A;HBy1oAS^Yz$F(J((?KnlW{U5QXe~KH0y*!GeyN{SyOa}_vqtMZ zjx|fNkuCt3{)n}HD;{{{kbS3?{{9~U{NG?;RiLr^)tsFZoabp0A;^%N5@5JSgc4WN zUg<)A^r4m`i@eE(5nDLybocjDU|1G%_>ckOZ^-AbuGqS9v56mEcw6biYK2j2O(~qD zzur4*2uH-QL0Uog(nW=bM|5=;CNj)hOjnjVGJl1k1(Ei4Wzmm??FDgTT>Q~2p5M=u-iq1e*7*R=b)rvXiJp+ z+u@XwbE{qW#YJ$lpY)?fRNhqQNK9_5u`x?;{ppBMqs=_p9lXoO=_{*1JK%aYZ$CF~ zN?O-Pg*wTKy>rwxw-s0=@!p18WpV2vN6b0Op}cIfw`!~aOD;ssHTB!W;g%~8(sHIg zV-i(EQ{DPqpt%9{e0@Dd$k%@52_fLudx8Stzu92u?uUh>5GGdv)p* zvB69W)o4Qb2Ku)rB?yV{Fik#}d`3a%+a1g6D{D6h;b>SP2+6dz|Aq-gtO}*#Jqnl^ zm~K6?xpo;lZhkXVft91p&I6LP{E9N2AW-GozqfhHVhwtV(B24CVv}V<&ukPt*4h8G zVYG-)U<=Lq%9`$ZOltWDM3KhW!hmwe#WEEG(!{6>wQaCU^zc6a>-Sdl=OwW2@;Jx0 zT13~WtoMvi*sc{^thx{IyK|sJ$UlxC6+!p&o+{mU9Nltt2wz9uQ~boH{OFS zVVn9?5v@3obA_Fc{Lem|q0AmHHsh;ms)1)&?B4bIzMD-ciP=~?ZTY)apB9r@yZ3#a z7$-!w0q^(Aq-v!8>AoM&%|;(k6O)sTo4#QkSaiTovyO#G8( z1n$$%|Bt=1RV}1?!W*8bChFLJT2i=AFhBQP;rQ|P93Xx>O)QXYU0PZ!5N9!yarl`0 zHMKS9))_ml7yG>sMLcV|!zkxJx8Q*JLxU!0QEC6GQ}|%WFt^19OQrQr>xTVg%K37% zmptJUoHbH@w=#YIDXxGl?)xvLW0J(hg)rK9L?S5uVl5+&@n=}Hicb6m!YAK;mh?M^ z$Dxu4p1c!s+oi>i^#&(+7hD&1<8xRL6;oazY`UnPa@nlkoi6Aj>_|I0!EOF}FBFC$ z-**{G#%Pa4Ji$4H8cK7{WM%tX091eRaiE_YDjG)dsk?ZMx z7k6FetIjK2%g}LzyU*saj1%$w-iay~@lxG+BP;OwFHiXEn)1%OVKAPv&$iiGm#*b{ zhk2olM6)8r2_;3^_*-ZSpIIyA%ENi>;t~CXv_f5{fxq3^FBA(D_mr)g9_$Gd>(OmW z_2%Jrk8`_Id@yBi9f$4GYGUEm)-%eBsx{-$p@pk*S?h;O#XV?g-D8x$p5OWsr77iG z=dw;>?)^5o&=9JMgfYx& z+c@#|=9hbg{*9TC26lw@m~`~fw+%JHMN%N~uW5)i|4bove);)!&u1Cy4#1;gYCD%y z3(LeU?Mm<1?*p1XwXlX<8H&FwUPcl>pLO)>R-F@>6CN@aN^HE0RQl`Vxu+*;A`>-r zS^V+bq*!cX)Fl4(mWATZViWLvJ-26D+%0R@tS6b)s^7{v* zBNEmhkMR4s9v1`{8iovJ`Gzp=N?|;-^Y31b7o@HGttN4g!W0t_M?tI+39fpa_Kdt* zJ6=#C`Msf{=gGx#pLn#2B;nq_OflOr|FP_hoiZb zMIPJ9(3y?;t-9g0UQmdMe;V3Q_jV#rF~wO*?z4!eW4-g`xU;Nr-skJ9aUZ%2`bk6I zq49s2NrLnzq3hH6?LtItEiZewd8#3gv12ff_Bv%*3ONTm$!gdd5s)uYsvC>&NW$yY z`$fbYZh!5cX}=?cKk_Tw2S(?{fb-E}uzI7R+XZJSHwR737kdUQrXZvmr8_i|G_`M< ztr&eAwMzS*TI2NSh}K{PN=smFPfHGMV|4uwKMN~84CWYyXL@2O5Md*dJsEEr?FLeg zwZJ>Cp4&12B7lPBiKx}0^yxS21Z;0Y)ZpYr;p7se4o3UyC6H{Em z{d8+1E7=l>Dm%67t^mGy#bPSQen$8fuw;b}Yv_?oEU0QB!6IV5X+rQXa^)e$*0B-W z7O2$?>$vtN_pkWa09|v{luf-D2)0|5JKb2=3b^K5%|8Ts0=yCq_^qlI{lZfk3qH(ob`@zTE-Gk~G!Mfd0 z?7R^;C5mA>jCgw8Y6Q8Ld>6w!iE8ER_;1W{n7Q0>}Bm zQsSZSy9}aPBIheC9`%7c)uNTs@p2i^$Ygw>Dn@V$|=a z?d}F*Qi;!Jf*32yC3DY)VyK2fB0l;y{AwFf3@RDo)o=;uvESZ zLuV2lXjZT1CHrRv4JY#dU(}6#uZSwv+5B9ZV4oa77+CBU876LL7WlmZ&js+rHfI=H z{~dJS&k?nRJ_@DH*`A70?u#{VUQv|31We-s`b@VZ{nBai*a$!TgroCl#l$jxsr9Y? z(o-pnKr3jcr4hhXb`tZ$>e*?}#zZnjT~kBHRlf=;pKP&x>ihw%?^CYKC)cXtzgM*) zX#x0R%?^|3IH8e?i)!Y@SsQ%Mq<{*(Pr+le0>Et8UEwKt7S4$KYsmw)qr=Vau~V{g z?9SI)crb^(2jef|RlMuyGvSj8$;!pr*nD!f%VTe}ovNzK>$I9eyYMarq-Pf=ZW@kY z@6}BbN?K>Fu>?QA@q#`E4FAh9A(EAW=YTS&#pjIT4*aQUncURmQB*&!L~5Tj+qYIu zr79Ux(Am62Uui3(uP8J^vdE>Sq8_{Cl>0CL>new{#1|kJ^%(5K>AvwVuR7`NA6w1! zAe%~C8yCp0;apVtYUBZd;^rDlX9frbs{U~b6ZMMkaI5*M+}RqrQSU{xFdN<^?i6y4 zM{UPiHWt6QD*WNI3-f{YPHQ_CDs&hQ<&s36_@C`Xb4PzX6NXsf@-}8BJFIK z`#^WTuUSO4smbQW>XPSy!BVQsA!_Q?3x6;rCWO)esF)q5 zY~s^?=ze($h4QE&X4j}*{;zfNA!VVs5~;ujAq(Ao@)t=&7E3oX1qEA`IwKq)TGq@92>22&<4t}I>sCVHa>+78Rr z&5z%Mi4*ehxlQBl(^;3Q(x!>m*0=g8&Zu{10|%`pMyH#ya=Pp%w)_wxtJJ}Ct+4B>S8A91uapUe?0;QCpCo15zapV(%SI4Q zTrABHU?no34Fv$Nhm=3!AYHxq=yn z0(21uEe5if!~?guyZ`&MaYt51fxGV65Hv8b9Vawv8o;W(Id&@6zb@@*T;kd?V!!OG z*mNJpDSR)AH31q#C68Aa4;uwM=jpV$bt|10INPpy>XOteH|CD3do9aa>hc9#!-KlX zLt3Q`C9BPiip}23#_J@x#+#)%w(bb!K+g?v-Av8St=M%NZDO@Oa*}~d>)r3qDYMmGODC@S*)~ct^=4h*DjXwuOT$pH zxsJa$RckSY+QDQEq>9BipGao`eUxsLxCmvh7Nc8{<1b;C|4sGk63!)5TA5Qv!=sri zL0Bwzp?*!*+PhfWFNBNh&#aPaVg58GV9sVj?w!|8PQjfyd#SriorrF3(xLuW34f)d znaH1j$k^r*5MpH&W7AP~=G4cVh{ngsJFwF}5kFl|-Em|?uTscmkbufg@QajxY(;rf z*^`$(OAEBR`wP<+ZdJ%=8xU}i8;*l9AX6^2n)FeZOQ%)&e|gpaQmfD=1@r7UIyNQl zXCkxnYfTLS1Cm-}`B3X!Y|<~QrdMRPW!3c{VnQZ{=CKMJ+bV6K%BPAcU^97v%_<1QEA-s=1_$KtxAI6~jG4W2IOQh`106rG zBL1h=R^w_)N}{E1PU|-RFsGJrXqsP#p4{Yg({KhsG=Jl^sx1Q`EEJQyfk`bztqVXW zkmX1h>)uXc8r!}lOuI}U|5ev?7jnX`q6yD4_REMBk8#v{BDw-hIE=jZ&lrWS9SUFD zG0e(ujI~qM@IcTk~A3+fV6oYuTv97B6XP zA5U_E+w*f`LEFoy_Ui}Qh@<-{#HK0V`qUeoW0x+stgoBYb1G;w51(brOCs z^JfJG zz)R8KRel0+(Ysr~OVQUuTEKqmlBump{wJ@yVmziOht-(vFz66&lJ{V2@E6w@6+Al` zSxhY^0TVad61%H_u8evUHV&?KJ(o@hBR)xCk(0iJ$;76Pop5sN^>$fAr$Z6w`ZpCG z!HPf;tyAN3;xu2#{B)Rvn77$@we|1joOigDzPEP`eHD80qK6%ih0Ch5>jtT~=uXo> zEPQ;eL`1a$(kTf~*r1;u##w$^xZg9p>*X4|VZ-drLRskcm0)*oAp*}WX~ zhsQv!c^x);rwp)nv?qznxP)0WDI+4e1JchTa$b)v~ z4obGlQldOcdPDIzuQLkw0VUmi3y5<^7Hko<+-ulkUcXS0so$obiFUoovIzSfEpPNt zK|26^C(PVGJC+N*Uhr}(EDX0os(PVqH;S*klvI?I3%Mf65PMmeX;{eL1kb`AT)9y# zW1V_&XVge9vs%Rcv!q;*3qu_Fb3UARp|?&b_rJdm*uqm>$>=YxdSMPn9wIvMhA}I0 z;%*@o9=7~OM9oSxC*-S%{Hd5V&|lJ28@M>4&Acc>*osyh#^Ka!Ia-EqIqkK3#W6h$ z+0PE)gcAqN*~^i&-+w&;0oUUUL<{EHkX!XT`iBRSRA#Rh!~#kQ;E@i8ajTL(hFSJO z+$Fl`&DKdNY+Fltp<*n1Jv_ZwQS$!k=4FX!ZbHa|*g=VT9Xn#*AGnk8FysCSp%C(_4A0%o&u^wv6F#@Zpefy*j6r@ zG0N8+O=BJ(jy!?8*3o+W4!_xFNtS_0*zOvHCPm*Xi6Klz+zD2>t-9R0WFtVc@+(Ro zaEjC1{^yqAyE}yYR-}QdhxD=xHGL4qf(MmIl%@P|jV0Vz(AwkM;*gS_ei)OSNXnOk z4-0P!+U#f{7Id18hddI9q2l3L=65?W67aaVy6nBapVLs(__x+niKKL~-fmvW!I1Xz zkz|ue<`7)ESjvS%hwAcqxWVG*<4fcY!os78>23o0^P^+3A9{?R73Ets3niFVnEtc? z^T@X(M`~V1-$$_gc$t&tN*zf>I_(~-H%)3mH80Y9?=KJTdKVjQ6X{$tcmL+p&g1Hc z1w2U1`_u99fpw-*49v{e;Md`Hl`qc->HB)KeJ1GxY_;z_=+Lyy|JB10+Pu+md26j{ zq8{3Yh4yoP3ydM+We(PZL!KSrz zSZyDg7{^p_yCB*@*%_R_g3-UqNXa+~`Hdy@thmm*mZ2uVhmw39Dx8n27!h90>z?#u zuIy5tEfu^;)kNh@bk_PaPP`aw;+iPgqPp1{Q44UeXrk{iv|%GM_W=~lb2bGgRVtIP zX?~3Kvbv_y~pIC(iMzNSLrofefMx`X}QYi*p~ibE1_I7DQUwh-?kpvM{I5h zT?P40_1_cAL$uoAURt0aW1#gv@%1+IjwKl~@~1%%6p!{neBdV|*|d?Qdxh^#q)M}t zd=N66oy}1DEj=f~4+WR`A{lOve_A51{{4ed0X8%`uhZEAZ42q+`5`|7SRhRIU7tb_ zdI1CbjcvaOOPXF`oT~IgLVR$U^}dm(9!w_R@LG!S&@O|8+wm{n*J`DT?!mR*w-%1u z5e^@J?oZ|hBx8xp!Mz|i`+xcR(+d5&P+s;4j^7O3<|L-AU{Q#yberv*k6b^VkJpEA z4edhV(3*w2URQn}GB7eQObA~`DQWcti2A=iUN(RcMQzRhQnbT@7igV4_*ody*En_o z4PdXFnp#(jnR;A9Kb1A_DvmWd=C;9?hf`aQqOXgxrrY$QqfrS{tdfBSIPqU$6ko+p z9xs;GCF4mBq0FW-xZ)cAL#@H05*cL+xZ@0ycl=|Yn4WINcC7kyuVRclwcI4f;yMvdxs4&5mGTU>eK#wVj8$EQR#y!4J*#RF zJYO72)w5gH_v|{R)T=WIM+$0lJzl%o9jHqDnhJJd-}1QJGC!n$P0v3Lu%GvBV2lJt>n!ySE-Vw90d1~fGyvoi_!Ax%ZjQDqs z8NvO#F9tnthb(7n;=T{7$DJF54y}Fd?q@a}7L$#QcbvNIX5~{kLhBLX!ejb{y{Ji3ajxJ)%%%v_cfDs=4(|~;|igOQz3YD7c?e7eBbP`B(KwF0wiNB(@^l)2d4!t1+A~cs}H9$ z1!k(-U+6P=jYDh;vd&0IRtcd(5Xm{cZ_Io_<+MZMIqqj+`?1DWtS3r-dul05%nKz- zxehbGuQxu1Sk}PE5qpuh-T0wdmWKLyc9t^@HeH4^#Q*vYECQbfNdGP5el#)})@?|}6P!cEzOZv}4E`&rjM3ce3WKbpEU42SI0Gj=frynMH2?_@7aM%7Y`e*GvhDOXaF-v zW(q*`?toP5Y}(;^`U8F3#COP2hVbl13PZf9uoUmxp4O&C^Fc_a$}VIIU_y zr0(?=M@u;zmW1AFSID@XfUCX;ySdEh4aCApa3yE{`tF6W=Jge9&qDL2-aad)9J<`H z?X&LO;5B9fF25Yxk30}FD}#F<5paz%TkIZYd_6Af&;qVPAMO^E){9g1LF2ulXhPrk zb?Oj_=cnUpffJ`m7 z=z8}J7%F?D?Xm6uc$z~q5+Q=?jF69RB*BiOh2-s>y@5G?mSoA-#*T$fMyQqX`Ichs}XQjzDwPU$mVlCXoWh8Lhd69a!>&|{U z%T*8ZbgL@@6y>@`$eLI4H7bD_fNt|&IrUBGsuwyA7x>$Y&0$gMxs@kh`zxsxEDy!g zusUJ;CpfA1fsH<8p`_A~e77aM*WU*S0GR zSTK|QQ_}TVMUA7cZgbz!qOIy(H%3(-v&Md=S3DDoouX=JF&5jmCP8`rCbf9x`6W%O z*NMvK&XB4S@}mn2f`AI@mnYuWTx}$ye)hTRg#mGGP~UrS$`}%4z2}TU?m??Hy0WIB zYb=viZ7)8HC26=VJ9%%OmfF+y=eyzS#bdW^&&yKHM*rB@`AJV5Y?u=Q&U|6E^#aY? zTWgXS#E8hpSp4RY29+ER((jjTpI7_W)0qGe4s?v?#j|UbLCC~9Wyyvbf$*Hs9TE-N ze!=-&@Rxu!q(Z|Eiz>z_mbO{f-77RG<{Dm@)R!PzbfO@o@wGPF(lrg^bF ziVWHp5c8bP6WwA4C_%wvVkPRef=Mp08pu%5F5WZ(wCh#OEqK&Bt#RK)^XcfBT_#GT zW=OVJ!m!O7rb7iVMP>b4RdE^993N%VLPZ!k#(NQ^{_HmIzmw|s*oJa@)%4Og@>WK& z(e;^N5HxY6lp)M3SI(FSvfaC-9Ox4}6%z08nc5Xs4gZkP?ecUp&KXoP5 zvWKEX2f{NkzGr+pGux_Zza;U!aSUu;&hdv;ynsZqzBb9gE(Y5YI9mHSS1U^)WX5qF zT2OyU`KfDzFm;bnMIfbpg^+tC^-|Aj`{SYIydn2Jiv@Au;28xzw@@(+8X2uBiC-J8pI;{V zPhXdYs>@(F^aWv~=7x{nF$Xh0W3jX8h<3n7!15gi7!XT8xM*BvZjNoh{fIRi^yPZ^ z%yDH?zlf z_v#8v_avB83V6ZVEuF8zaMCw0I8A|gr=zF8=6^z75LQ(^3PB295Bwh364ZMgA8?0- z3;+J|=!z6`?A-J0img6<*9N;FWxU$zoX7wNHvUF}nL!J9`T-U#WQWNXCKJ&`!N8{> zkzbg{5zwhDpxKv&^QSCqz5DHl|GU>KYeu3p|w3xCXWHV`vB^BA~F-@N* z0hykkRCj<4_~hX6L1Ou$_{OpD4Bx)m{g;?TjEqv8(OSvMvVfL~Zzu~BKa&nq*Qu}4 zy-(q?RlO%*UnBq#08G|tY)MJYBP5EnyI!FgaGj1N$&gu6AbAYhZr393>7;owkPD?3dgYt8jeFn31-j?)!y5TN~O z==%t1>8VbQ`Zg_ZF;5uADGT2fu6QDip*#p%mPbKWJ^s7n0;;~XGVtH;i$DoLWv;#i z24heVg=!LW$en?hBLX`7Y2w)Ar{7E_Qv51HSbfmPaoBFxqi@f47kH0@z(0?}Kg|N$ z-)`9{SmwOWdROOH zR(pg5k{{v({-p^9IjjzwHq675eAEq0#PV!vRjUh8WwqBa#Gvfo2f6}?!W4Km8#jC% z@vd0CoE#8_!BM1;i{bG&LybH%yZ_l~`WK#n;%h$In7b5R`*hRSU9`Y7Q>Q7s8KK9w zBG6Dj@1n|3RLlim8)7iC8mzHbCwd z-S3+%7%)`--M>|NalY#~LbJkRo}ml@8QIr&CufPD@zn2&N+EebS} zlNfx@V^xe$D)sd(6zC=7m}u#E7u<3{>t3tN2ysj4d|lSOQc{}D!+TFn|0eB>@0`(1ykE6fXQHSNiek6>| z>(E-c9ja@lM6CKEdfH#~|3gXGLwJC$S6_*Wu(o>MX>PE-mPW_ulruNe;OF?6!M zf$7#U5?)DyX!?OiVIz))W>Z|tqwh?dAsuZPLeg)w+ZI2z-?^{w-RWi?Bm~jorv~`u zBcxf>GA>&wM`+ZLtu!?#P5ZU~boOdx`GCs#0)IpxGi8boLVC_2lAzC7A#J68p57GU zeqczj#}x=GB6iQ$G}_A*K3w9hPYkq)9uqorl3P=fAK>;pNu=N2WyQSUQQRWd=vCX< zPkn$^Ib3P;#nyV*3NqnGvkIf$zjcn0u@|H;UN<@Sq_q(RL3)+Xs?t;e)o7{>JXY8k((E79u-3PMwr6gn6mJtKi_pE+^#AehdF%szEP=Rhnd- zX{Tzj#Zf5eHAHQ$H!(j?oU_r1{;zl!1r;$?xYJ*n0KW3oA(S*+`*k%F zE&ZDPys|k+A;=-yc%+rbgvdM=I8}ei8QH?$(0|JE4fl=RK>rWUKrz38QmN!39JJH6 zxu|`a2L|2V8PLA*7^5T=?Q7G#z`4#_okx+0dyNmyBV(R?2P$3hfVpSryyy6!pZmPR zE%~5Rx{>g0*#seA7#gO@BUZA%v8uZyV9d!t&@1*Onm*o-SjTc9zzj zB_Uv;tlS?_24QLl3uVq@qqMt2kb3t#3Xj_6@1U|I5NM>=zVgD*8YswqTG-NFw%Bp! za{Em;lm&UnG;ocv_Ju0Egdfz6S<7UMOL~lfE5%NEQ*b^vzxuA8atCO!tPNiMX%|o` z+T_7fE_GAe=gu(d6(}vwX}9*}v-h5>#?bRs8B$J^PX&7w?xh5)B4QBg0mSD1TsIc? zE-zF%0(ewf@ZM`X`U3hxpJuw}c$#o<-B|kKR@-iFqh9kK9V#A`ZpLGt?DbR{Gm7Y0 zY1G^X+WFqI+Q{=+5$V9Aj>YxnzA7!7!M(okZ!Fq2Z(c=b`oj-!OP*>Pa|L}=JZgV6 zp+!`~dC`|PeD+=LWiEpkYk#1bS6&H#A3m-I&p0csnxS5YO9gz|_g?MQIRR*??fSe| z*FfJstMLZ4UDw=KU+cY~?{m%9Yah+mm(^BtJIm?|)a$@^6`Jqq+g9_n=I=m%^m{d- zWz3|>Jqugfa*1nHM{5ZY%0r+IS_W69;&h}fBZ>gKpN z1ZY$!aft*W{`s6cJ>B>@gkT7!EEqpX5}zA{b}e2S_XiVY4Y?%FvxI)702*5EY6*qh z(}?s!)dc#Xs1iRzZuHwcab77PLg=+B_U3XonE&Mh2GJJ!QxKI&2p50{<-;iX-gVa~ z5C+6^aCEH#fq<)fwbv}96fDI@5xM5Cj?Fl=>lIK`m9ZHZT3ksTnuhH1@Kov5utiCFsiSg=3q*Dd63UTxJmIdym*hRFjhG17Zga6IG^kZCJ zEit|l{0+2+?v;vMnYyB9xIo@G24*D5E?&H=vBPBp-;c@EDpqG;u_HY(lVVD7c$ z8Xm7pkUrNoDh{CHUi$-87CpnLHXCjIxflN0t4?X{ubIz$4_xQKRQkByEZ5ph9o^es zZKIAARD40j&9&OsYXxniM+`Z3NGRR0L)%M7jHf*&ET%aPKu<&fjr8GASfZ5p&SX={ z%9!L{Ob|P6j7bZRK7?+KHPH+j@f(>m=xD4rKVwS@6w zWLjggm&Ru$Z?qqzX%HujP{Oma_Od}!n6o>**BAUSr8d2<5tLW$dNoRhCnKg1R@YK!V?MO!)V{Ghbm`vy z6uJBAUj>2)YILPt6&AFsz2Br&p$P0@z}Z=qH}3Yve9n?p6*!RNiqB|}io?7R zytrnc#Px~?dbn2muh-27x=Lx5DfYmF59D>YWE+fVKXX+94x$oebGF!G%iO~;hROpB zCc5>9b1o}K-*8Es;~D*>BI%`1^Yx0eHW)em7<0-=0G#{l&-1B_n#Nt}(cG>+(Ife~ z_n$)x+qXTR;mA2KxBl>=vHK3~J)5!-xEe2B z!?&JuuQ_)=+3+1Yc<(u%;ou(6yG9<&fqT%Pwt-Gb?_Qd_KdBTlQQzll;N^ZelUFpW zxM{!2DjC)e9ZUYw;R@V516dOgP%0DpgVzTA^eMEvVJhpz=> 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 None: + self.matrix_100 = [[0] * 100 for _ in range(100)] + self.matrix_300 = [[0] * 300 for _ in range(300)] + self.matrix_500 = [[0] * 500 for _ in range(500)] + + def str_matrix(self, type_list: str): + _str = "" + + current_matrix = getattr(self, type_list) + + for i in range(len(current_matrix)): + _str += "[ " + + for j in range(len(current_matrix[0])): + _str += str(current_matrix[i][j]) + " " + + _str += " ]\n" + + return _str + +# Глобальный объект класса для хранения результата работы потоков +result_matrix = copy.deepcopy(Matrix()) + +def init_matrix(matrix: Matrix, size: int): + support_list_main = [] + + for i in range(size): + support_list_column = [] + + for j in range(size): + support_list_column.append(random.randint(0, 10)) + + support_list_main.append(support_list_column) + + if size == 100: + matrix.matrix_100 = support_list_main + elif size == 300: + matrix.matrix_300 = support_list_main + elif size == 500: + matrix.matrix_500 = support_list_main + + +# Простая функция перемножения матриц +def matrix_multiplication(matrix_first: Matrix, matrix_second: Matrix, type_matrix: str): + result_matrix = Matrix() + + first_matrix = getattr(matrix_first, type_matrix) + second_matrix = getattr(matrix_second, type_matrix) + result = getattr(result_matrix, type_matrix) + + for i in range(len(first_matrix)): + for j in range(len(second_matrix[0])): + for k in range(len(second_matrix)): + result[i][j] += first_matrix[i][k] * second_matrix[k][j] + + return result_matrix + + +# Функция перемножения матриц в потоке +def matrix_multiplication_worker(args): + first_matrix, second_matrix, type_matrix, support_index, number_thread = args + global result_matrix + + result = getattr(result_matrix, type_matrix) + + for i in range(support_index[0], support_index[1]): + for j in range(len(second_matrix[0])): + for k in range(len(second_matrix)): + result[i][j] += first_matrix[i - support_index[0]][k] * second_matrix[k][j] + + return f"Worker completed task of {number_thread}" + +def matrix_multiplication_treads(matrix_first: Matrix, matrix_second: Matrix, type_matrix: str, count_thread: int): + first_matrix = getattr(matrix_first, type_matrix) + second_matrix = getattr(matrix_second, type_matrix) + + # кол-во строк с конца + last_row = 0 + + if len(first_matrix) % count_thread == 0: + index_rows_by_thread = len(first_matrix) // count_thread + else: + index_rows_by_thread = len(first_matrix) // count_thread + last_row = len(first_matrix) % count_thread + + # "распиливаем" первую матрицу на кол-во потоков. Результатом работы каждого потока будет являться часть перемноженной матрицы + support_matrix = [] + + for i in range(count_thread): + start_index = i * index_rows_by_thread + + if i == count_thread - 1 and last_row > 0: + end_index = start_index + last_row + else: + end_index = start_index + index_rows_by_thread + + support_matrix.append((first_matrix[start_index:end_index], second_matrix, type_matrix, [start_index, end_index], i)) + + + # Попытка запуска нескольких ПОТОКОВ. Gil не дал получить выйгрыш, так как из-за его особенностей не давал параллельно вычислить перемножение двух матриц + # формируем пул потоков + # workers = [threading.Thread(target=matrix_multiplication_worker, args=(support_matrix[f], second_matrix, type_matrix, support_matrix_index[f], f), daemon=True) for f in range(count_thread)] + + # for worker in workers: + # worker.start() + + # for worker in workers: + # worker.join() + + # Создание пула процессов и запуск параллельного выполнения + with Pool(processes=count_thread) as pool: + pool.map(matrix_multiplication_worker, support_matrix) + + return "Done." + +def run_program(): + matrix_first = Matrix() + init_matrix(matrix_first, 100) + init_matrix(matrix_first, 300) + init_matrix(matrix_first, 500) + + matrix_second = Matrix() + init_matrix(matrix_second, 100) + init_matrix(matrix_second, 300) + init_matrix(matrix_second, 500) + + start_time = time.time() + matrix_multiplication(matrix_first, matrix_second, "matrix_100") + end_time = time.time() + print("Time 100x100: ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_100", 3) + end_time = time.time() + print("Time 100x100, 3 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_100", 5) + end_time = time.time() + print("Time 100x100, 5 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_100", 8) + end_time = time.time() + print("Time 100x100, 8 threads (processes): ", end_time - start_time) + + # ---------------------------------------------------------------------------------------------------- + print("\n" + "-" * 50 + "\n") + + start_time = time.time() + matrix_multiplication(matrix_first, matrix_second, "matrix_300") + end_time = time.time() + print("Time 300x300: ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_300", 3) + end_time = time.time() + print("Time 300x300, 3 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_300", 5) + end_time = time.time() + print("Time 300x300, 5 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_300", 8) + end_time = time.time() + print("Time 300x300, 8 threads (processes): ", end_time - start_time) + + # ---------------------------------------------------------------------------------------------------- + print("\n" + "-" * 50 + "\n") + + start_time = time.time() + matrix_multiplication(matrix_first, matrix_second, "matrix_500") + end_time = time.time() + print("Time 500x500: ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_500", 3) + end_time = time.time() + print("Time 500x500, 3 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_500", 5) + end_time = time.time() + print("Time 500x500, 5 threads (processes): ", end_time - start_time) + + start_time = time.time() + matrix_multiplication_treads(matrix_first, matrix_second, "matrix_500", 8) + end_time = time.time() + print("Time 500x500, 8 threads (processes): ", end_time - start_time) + +run_program() \ No newline at end of file