From 611dca5dcca997dd5add1cffde3ee423555dfd32 Mon Sep 17 00:00:00 2001 From: nihonium Date: Mon, 3 Apr 2023 08:15:34 +0300 Subject: [PATCH] added seminar factory --- term2/seminar04_factory/CMakeLists.txt | 16 + .../seminar04_factory/src/icons/icon_bomb.png | Bin 0 -> 6775 bytes .../src/icons/icon_claws.png | Bin 0 -> 7518 bytes .../src/icons/icon_earthquake.png | Bin 0 -> 6669 bytes .../seminar04_factory/src/icons/icon_eye.png | Bin 0 -> 7222 bytes .../src/icons/icon_fireball.png | Bin 0 -> 6775 bytes .../seminar04_factory/src/icons/icon_hand.png | Bin 0 -> 7540 bytes .../src/icons/icon_lightning.png | Bin 0 -> 6739 bytes .../src/icons/icon_meteorite.png | Bin 0 -> 7515 bytes .../src/icons/icon_rect_chain.png | Bin 0 -> 6443 bytes .../src/icons/icon_rect_freeze.png | Bin 0 -> 6206 bytes .../src/icons/icon_rect_sword.png | Bin 0 -> 6614 bytes .../src/icons/icon_shield.png | Bin 0 -> 7039 bytes .../src/icons/icon_shuriken.png | Bin 0 -> 7798 bytes .../src/icons/icon_spikes.png | Bin 0 -> 6630 bytes .../src/icons/icon_sword.png | Bin 0 -> 6937 bytes .../seminar04_factory/src/icons/icon_wind.png | Bin 0 -> 6766 bytes term2/seminar04_factory/src/sfline.hpp | 35 ++ term2/seminar04_factory/src/skilltree.cpp | 405 ++++++++++++++++++ term2/seminar04_factory/task_skilltree.pdf | Bin 0 -> 160204 bytes .../01problem_paralel_max_iterators.cpp | 75 ++++ .../02problem_parallel_transform.cpp | 9 + 22 files changed, 540 insertions(+) create mode 100644 term2/seminar04_factory/CMakeLists.txt create mode 100644 term2/seminar04_factory/src/icons/icon_bomb.png create mode 100644 term2/seminar04_factory/src/icons/icon_claws.png create mode 100644 term2/seminar04_factory/src/icons/icon_earthquake.png create mode 100644 term2/seminar04_factory/src/icons/icon_eye.png create mode 100644 term2/seminar04_factory/src/icons/icon_fireball.png create mode 100644 term2/seminar04_factory/src/icons/icon_hand.png create mode 100644 term2/seminar04_factory/src/icons/icon_lightning.png create mode 100644 term2/seminar04_factory/src/icons/icon_meteorite.png create mode 100644 term2/seminar04_factory/src/icons/icon_rect_chain.png create mode 100644 term2/seminar04_factory/src/icons/icon_rect_freeze.png create mode 100644 term2/seminar04_factory/src/icons/icon_rect_sword.png create mode 100644 term2/seminar04_factory/src/icons/icon_shield.png create mode 100644 term2/seminar04_factory/src/icons/icon_shuriken.png create mode 100644 term2/seminar04_factory/src/icons/icon_spikes.png create mode 100644 term2/seminar04_factory/src/icons/icon_sword.png create mode 100644 term2/seminar04_factory/src/icons/icon_wind.png create mode 100644 term2/seminar04_factory/src/sfline.hpp create mode 100644 term2/seminar04_factory/src/skilltree.cpp create mode 100644 term2/seminar04_factory/task_skilltree.pdf create mode 100644 term2/seminar_thread/01problem_paralel_max_iterators.cpp create mode 100644 term2/seminar_thread/02problem_parallel_transform.cpp diff --git a/term2/seminar04_factory/CMakeLists.txt b/term2/seminar04_factory/CMakeLists.txt new file mode 100644 index 0000000..1fb9fb7 --- /dev/null +++ b/term2/seminar04_factory/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 2.8.0) +project(skilltree) + +# Найдём библиотеку SFML в системе +find_package(SFML 2.5 REQUIRED graphics window system) + +# Создадим исполняемый файл по имени player_movement из исходных файлов +add_executable(skilltree src/skilltree.cpp) + +# Укажем, что нужно использовать стандарт C++20 +target_compile_features(skilltree PRIVATE cxx_std_20) + +# Подключим библиотеку SFML к нашему проекту +target_link_libraries(skilltree PRIVATE sfml-graphics sfml-system sfml-window) + +file(COPY src/icons DESTINATION .) diff --git a/term2/seminar04_factory/src/icons/icon_bomb.png b/term2/seminar04_factory/src/icons/icon_bomb.png new file mode 100644 index 0000000000000000000000000000000000000000..2d9c6f1c15c9757722c75a0fe76f7b9e693212d4 GIT binary patch literal 6775 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 Z(m&`1M%=rG`;q_v002ovPDHLkV1mj!>>&UE literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_claws.png b/term2/seminar04_factory/src/icons/icon_claws.png new file mode 100644 index 0000000000000000000000000000000000000000..b35629aa970ed677cdb7f6189d58d0fd2e639ebc GIT binary patch literal 7518 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 literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_earthquake.png b/term2/seminar04_factory/src/icons/icon_earthquake.png new file mode 100644 index 0000000000000000000000000000000000000000..83faad702cda24161b79cb0711f841f597e41fe0 GIT binary patch literal 6669 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 Ef*9GlF#rGn literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_fireball.png b/term2/seminar04_factory/src/icons/icon_fireball.png new file mode 100644 index 0000000000000000000000000000000000000000..483eaa42e2d002047c19bc7fcd544fa14bf5775f GIT binary patch literal 6775 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 Z(m&`1M%=rG`;q_v002ovPDHLkV1f&t^LqdQ literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_hand.png b/term2/seminar04_factory/src/icons/icon_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..676d85f46133cd20da5a35bd340be1e730a226bc GIT binary patch literal 7540 zcmV-)9gE_LP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O1q!lHd912pi&l3X@ThgwMqZ01=%lL|dcu!dbuh^^6QQiCI~jwQ^}ZJ+ z*G+Q0sv@r36h5jI7E_}B2S4=e%};)4T`P-7Epe9>_NCdfunpE6|BFvSA!?m^b0XmF zXR3cW*bht<8gwG&hy&)Oj3tUwH`_9zXM@iBEq#DHlqwQuy|#h@@ffM z2c;m#2nA*ATpOzkG@zW*4V%=~7_TYlsQKFXouK5i+G(%(WndE&0Y5SUx=AKOS=Kt( zPp}a-l$~+bIpJpYStXi<1{wuSU1!ZYYZy1U1_(fU3WLly`?vD@h!dS zSDGVM-M`QrL3Q_fyU<$WI9Eku!wXrai-Gsy{T?&vm^rBBcOUy|x-uc^VjDm##GE^J z-^l4uO7u(2HTAAs#%`U9WeL_*)oQLr#b8=#x-if#OIHc!10byIp1K9I_H~6FRl_e; zpW|Y>U$QPe@hfZe0VWvud0QZ|%Fkd}i@d9H#tQqQbX@h9Md`TeFN@M~)m7Cs7Sos9 zOsGrfIv3aUY74~I5vW|z76SDp2N>N_U29=6KId48q06rhD(OpqUwL=Bc|&X(qTEy00R6orFRZb`wnqc=-8WzG0aH6&!>8X=~R6XhP( z#;-<^Ol&R$@S%*W`BeI1nxgE_LWuq(1m`v(+++Z=Un9(MNyT+||H?*5#lc~8Uu{cy zNgh_&n)40*J*26M4#0m|2o7WO>g~1^Y|0_w(z>{OV6ZLl>A;eIDBQP8IDa^*pJAjV9!cEq;09)5^8x1KpcIeLnw1jq z8?c=Y=V0;k)iq&5BKh6;hF>^iODWBG6}4u^2p(5RstLjj(MLg;A^Jv1R0$k3)tB8g zdTdK))OD?=V%V3fZY5`EF7^uMlnY?KcMDqvbLuPg#P}6j2{_)gR8yI}!BCxLLzPWM z*sAjdVII+^DwjY8g9aP(@N^ILvr*lU1be$73FF8CMc5IShmUmi28?&}0jmUol@YfocTluqYGFi+d%^cSV8lw-LVL?>%AK0OPl=$ce3AGC8rN}}8Xsaq`Kwb-^q}*JWRQCm}6jE}HrL@!) z?uHm+*!?`f&w%ChtXiw4D zole*t%o)1_0XTvhBM1Eg9Y^G#U!dcN9P|rxOyo$2TAiM{LJsTF)`&z6d875IX{day zpt#sq3J4fFHTh!LkIXt#qHXdA2bb*Ui1 zN=0i*F$$bCRllT;)D^ViX^^0|RBa?M3;LW~4B)dl7>S3amYmHI9K9~!FNnqoDlU6q zex_M5;J6U@8MC^U%w}4PkTq<5w=A2*bJ}iM>c9u$-~%)Wf$vXneLk87u`_+dj$n$& z65u&eXA3s33Mm(wS%GaV0|2p)rXL*nwx7+D=YEj69QM;z!hV3lIJIX8W~~Sh(|%G@<9#rIqgo$?_*`Yk?oN^UjFhQSgXVPOD@0l~=TIGs* zhF?rx0}LOA86>7OkWWb~y7CfKkgy#BthohP##D|>m4=#*7A9gjfeFMS)&Yx64Otdj zhk=$@10{@DN=HKZ9iJSiM6ex~n9v-FK2j*-PfS08QAPuqiOJ$Ta3e8UVFp$R`!|vP zKG4(aNRRg=jTz8wi#0PdV({h+CWl^-iwxBL`FJ$w_t6t>fU&1Y8(?fH(uNoArUVM+ zs0DyDjAbrzNM_i+kGYJ6lB71r2cEXG(J!T(Y~JC#tVj3`!Fj4E zQk-Yxziuvq*b}jl6A)B$0)m_;5YR1ijDyk5APDZG3#2j=&;+Z3wsM*Ys6J9U1xiO7 zr_&sS6NQHgT5dhm%M{MCLUa<>J5@#wFU1G zv6Lkv7vZN_!&Z?CXt8I3wn;sAS`G4%PC1wu5n-LJJ=w7XoTyi=}L;q z>MDB{Pqn#UNzT zQVgohvyet}mNILQ5=x0{?RyP!E46PmNOy?t^$^?{-C1tcNJ$qgZ6TpSwKiB?3O*sE z8iWbo5x^=gpz_gt+rfH6I^i2lfcpmDPUuG8<@_G8FZKb)I8l(Ae*+yhjL1kG7}VVA z8_RGHhd)7yOCUyoTY8N zi*uF(?P_UKW>^y!d9WMg?j2TUk*p$nXKQMyVH*Ux=9Z8QE}~TR9{=+^rVwjM&|Ct< zRk-E?I#?=PaFp<2KvKeowMq#e0dm&x5jTuP6NwzKUXB|&aNLL^lV(oypqj-vN?%m7 znC9GtE4sxiE>rSVMwTSZV-V5CbYU=$GGNKZK|Hh&f6K%JFe1eN@+zmGI0^+r^nzAm zk()g>8rBH2{LLO4{Udt>^FK6B%5IRWpwJ`=AeNKkDmQro>=Bk!yBQGemX!pd(?n>U z&0l9c`{J~cn!vuqMgW>@BiK=vqQ~!f4P6)VxP*lS5V8`q*^!Uq?GgBFuhZCwt&Wo4W;To{lIh?-^m^4h;AK-Eu-3`ymCll8}rHTsknL z{_wzxU`Jv_h{XuHGbF0Mur366ru}CMOw6 z5q}Y-;8a5`5Y997rc;gLDSC_1^HQUZGK@Y;hpE^`o7IQWV~VXETI>DTT2Gt&*WrVb zu!u`?y25y5CmtbV5j?U3*1CvyI=2|0c(?dAjt+yBlK6CTk_>2iIXge+K)Q__=nctn z@hGy{(PqlK-R-8l+g(2u{+jw*_+zt^|;ibO`bAxnw0-_KK>#dr#}TYNe&<5(jhY(Ubn}0x)1Q*HCpM`Y26yF+#wn<7fwE7 zt}YUD;l&*Lu6kqiyxZ|cZ)_fu)~7t?{bSN~L;15~@^$HH!3W;vUSi{bMtZZ3^|BT~ zruE;t1}p^Zl?*Nu#}$xmi~*6z;~`LtItyruhd+4}kf0neiN0YTnOX6yPi?`8_5zhe zCj=+G^`HB}H^ZS?)}fsHOVCO7JCr=nU$4?vdOoUh`FNSw)93oRRu2vR@bJ!0BN0rr z9#4Xu#;ca=G=0m`32A!whEpHKWQ$XuSP_pSr#?7!YMg{x5dRQYp88WYdh56mYZs;& ztwdx#i7HqC)YJ=`+&;a;=ild-#5^x%mrnJ3dT(~=R?mMFW#|xQZqEK1I{IIvqEAO( z9w8O|xnBIXAw_qiCojvZOf5#FMVK9t76wO?S!iiWJ;=o_Qn5jOHtvnsO&j@^+S8%( zH2KuNzsaWtojQ{#*&m&$z|I8zGO3M5O%lbsJJTq7o)}0I?he++RpL4WxxhMI;QB;$ zw(gP6*3ciO>04Z-UxrSOGbi-+&|K6Ljk&Y(jR5~$$O8pEuv>>J82) zX8F&SQ}chHn%R2)^8iTK?@j>3Tkj@exScAqFp39t=a9k3Tt?9!;6GcbTl;!%rK-bl zLq7~Rl=6oz2vtpl%e~(qdeR@Ftw98b{fUwi6r$GG(;Ux-Ie^b(+sy8Va`KEqn{sB- z6#O9**7=qQ_jOMEP&D5n&>4W}djvWI5Pgh5txI!2S46NwRH8#WehW*p9X~bmryY;1 z`4Xk*FHG?yN(-|aacHgGMlQDA+8nun|FdUOymQUxN${f_n4ToTAC2zN_3X}ZbmzU& z3tiV<4i?wnqdlX`L%dDL=@3))>5#27 zCG7u{r_fcR@^7Z<)pyWM-}LscfSV4*gyZz_EFX?MYNR#$EtKkA;^(2>)@_?@={} zj^&*9hB~ijI_dMF&g)hleLmEAO#^7>J$!lwggKYKkDAzZj)`o8 zJH1seAG7XfMoNEq!dPZ2stQ*)rYe(NZtaN?pP2L!Gnf zy=A6=4n^-dR4}J(+-=H+`%>-2_%XdZ!34{AI!Z>Dvt(DJWXtnmGI}sgb{j1~OuJ=e zkCQUGzVG7S0h_)c_fNS!U6K0~K8+!{(ce3>mhg^5{KbtYFY{K!y*Gxn==seUOw!7_ zfSs;2z?tA%%EI(CP`Y+}!aI{gwjuM-VC;aB92MV34UnpxEgbL|6gwCEZdpTorAxY2 z=Cv-@l6Ef6~d z(Gv`kq;4y>zG^Sg8~vrb8tYXrfIhCU?ZsoBpSYEeX)oQcpEsUf0ow=Vr&}DP%kq<2 zKP-%`n%+a4*U(Gvxoa&lv?L~K;AD-nHY9{xlJUS74`D~xXa^8CYlBMszgQ!W#dJ1N zE}Gy4B=tCL*vlvP^LzAkfbWC(J$jG8zMkKsFJ>q&=lAHn8Op07#<7N>BVA^5#{soB z=hNtVK<%CS%wpuEd31`Y9Azh=^w=UnihE2T)ggg&l88lBI(p9M(xc3{7DOfmMcdLUOf?F)o4$x6;y*7T)29C~O41%j(ImJ@Um_ts5zxzh1vKWm# z$iksH3nB=Y(;$$a)pq|#xw~$;?7H3qt#b4}&@!o-<9D0y@8fsA(s9_Ss4{$i&fkrD z<>Xd5rV~#uL)U=*dB#ppv%EL`jNOc0_}RYHtD95l)!nIV2haKJptJNlpB;3Te&@6P z++cacXV2ff^7xBa=(BHLx%zq&*cHr#uD`6|^Y3b)PrrWW(G4JUxC3N#3_ib?Qi3S$ z^?(O0!FM}?^okq4OAYC+V*Rl8`8*ELsrETK>o0CpzI~;`@s?-$=AP%PrRclcr|*}d zcfWJx)mN_2!|z=A5G3hoDa?+ddwZh^M-RGi@-t| zeflQbS0004nX+uL$Nkc;* zaB^>EX>4Tx0C=2zkv&MmKpe$i(@I4v4i*$~$WWauh>AK&6^me@v=v%)FuC+YXws0R zxHt-~1qVMCs}3&Cx;nTDg5U>;qmz@Oi2C8-O}Ve;Bp5Tc+w?9awI=Zp-=$c&*+Ns?sOKQ-dxft_wd+ksiYpb~ftvUl1YpPj(C zi>-V!aM}dE2~=g^>VS%{EX}{1<0wwk3ug;L8K&`{9cSa2BivevB<(B|wfT00)0Wqc_Hq<+4}(H;s70EPl5jCLs8=-nq~-z;<9lP6Mj!z0N#=8R=)Y`FL3bS83Oc-lx0g9T5YXBcA63FeY6u zMRZHUjtc_7Fn*b1*G;Zp5iqKjl+NKF+@qnuEV~~P(P3VMRxYX0?u)tKEq0w<$biWf zRc^QbLP=GAZcFNv^o5bW4BlT65qyVTZ_7|D%^5}kPZTiVUDIt^)BsCH>Ll$=lH@!v zLeh9i_c;8cl7>5@_5?yE0?RF&PFosof0&_|=dluqhWJU6oVRej&UF3T9ILiDw%XA) z0pGg*hHx=iU>3GrL4P7}r}Io{+YelAe7-W;%mV9RjbW-|Q)skZzc=t*HgDU28TM>M zI;y|}cK=#L*5shSS<(?n)sogqde7F;q$EjB*(R0d0<{IE(V;-s3#@AlyvE#!*I5~O zkSRbV`Pxsw?1$;62^Vzb?Do8hDV8B|R?b?HulWxTLp$ z!!{LLfLA4b?G}2PVy5j@KY#^vm5ibP0`0&}5!|zp(LF`~wC(8v1#SjbrEysB1zKWX zpexX|J2ID*BuT5=C(?FRAM>UjNv)C^T*>7nNrP?lrv~`0LI#X=i@7etrOk^N(VMnk z(j$^8k|b$KlH|`cJeO2&n8m4Mak_OCa-(ak-vIQ4iHpOBu~4b))0oc(<^bmnvlRFp zXvlJ-7gW_O*xGIVk>QHZFk}YsOD_y~CcPUSm&P5?}E(3n z`Rc5;A&|GQ0JgQHgeI0!T4C$B(VhcFLIF6t-3sP;607 z0}d83U|F9FTSZEXO@;h=4g&~ed=`#;zmyh>6nAUg!p85|c?|G{Vc-+v)&IraLgjU% zx0A)|!Y{|6kU9x+)|+hRqpcKdA{&?BaZ ziwzI?9`3~>r_b-2ke;je{;~CVa$K;uLhS|AKPC?hl8!0Up_1V0000< KMNUMnLSTZh6OnoV literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_lightning.png b/term2/seminar04_factory/src/icons/icon_lightning.png new file mode 100644 index 0000000000000000000000000000000000000000..d54c9126133ce5588d3aee9d3292325df71fbe66 GIT binary patch literal 6739 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¹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 literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_rect_sword.png b/term2/seminar04_factory/src/icons/icon_rect_sword.png new file mode 100644 index 0000000000000000000000000000000000000000..5b24c37c552051d56883e23032b43c5fc1646357 GIT binary patch literal 6614 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 U-%J7OV literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_shield.png b/term2/seminar04_factory/src/icons/icon_shield.png new file mode 100644 index 0000000000000000000000000000000000000000..d3baf8def33e246002db7b1dd23ff57ed4b89a73 GIT binary patch literal 7039 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 literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_shuriken.png b/term2/seminar04_factory/src/icons/icon_shuriken.png new file mode 100644 index 0000000000000000000000000000000000000000..9ed3f54003f4ddde3a5dd41c7ef6196025b3fbc4 GIT binary patch literal 7798 zcmZvBWmFUl(Dg3eA=2I5NO#GS(j9^zwdBeYf^{-e(jC&>2om!7eD8Vx zy=TtcduM*luQ_w>M7`5|i;G2p1pokWK`M$m|CsN;#6bIphDd)R002@cUp*s;&U+}G zn}@5NgR?Ci#K+B+&eq$(4gm08t}=5<+v>!7s?i^Nwbjx^B{TWQ%PswjS~JlrI@$cv zNgN!+U>!`SoGaq!<*(Dt`GyRAtf>m+KDgHF2Q4)ufl%v7;BV;P8Y9R{%Zv6k_tVRT zIM`LC6Xuc!aSxE*`sDc-b}OMM-mMwX&G<}Z-(81ScAv$ZoAS(b*-ll1ErpKtNwV%o z$Fp8CRlH9?t(NUy4Nru0k?m97Z(jQdeGW8B7_3sYtoWs32^rBiX_I! zhqo#9hkv_?UAsCBv=|J{DS_(>y?pg7o$K&I@L9Opj(Y4aw=Whp+m2;`G67L);lraz z>7jXC!3njhj0H-B+CtioHYDV_v-PSGZ`m94p5N4D;|OpzC-2ct!F1(_ci;DLak7V{ z?+TMn^@!Y@kM?e7MZ@0~!>tOlUUniZx_ovcOh!8utuI$h-diL+Q_NV6UiRF-#$i}) z%sRyG{HuP=EAbLk(HmUC+c1PW$Q(L%wVJ#*?IzD)xANftK*ftn7l)v68Nr%&xS?rMci%7sw)L&xUE=wTN?fs *QXr%Pg@&an!h%$f*AZ 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 D@j)0- literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_spikes.png b/term2/seminar04_factory/src/icons/icon_spikes.png new file mode 100644 index 0000000000000000000000000000000000000000..fceb4c5610f20a612c5c6e12cfde48d8a327337c GIT binary patch literal 6630 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 literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/icons/icon_sword.png b/term2/seminar04_factory/src/icons/icon_sword.png new file mode 100644 index 0000000000000000000000000000000000000000..41af9468ad49528b9e3983dd01d633decf38bf3f GIT binary patch literal 6937 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 Qu>b%707*qoM6N<$g8CKK_W%F@ literal 0 HcmV?d00001 diff --git a/term2/seminar04_factory/src/sfline.hpp b/term2/seminar04_factory/src/sfline.hpp new file mode 100644 index 0000000..af68663 --- /dev/null +++ b/term2/seminar04_factory/src/sfline.hpp @@ -0,0 +1,35 @@ +#pragma once +#include + +class sfLine +{ +public: + sfLine(const sf::Vector2f& point1, const sf::Vector2f& point2, sf::Color color, float thickness): + color(color), thickness(thickness) + { + sf::Vector2f direction = point2 - point1; + sf::Vector2f unitDirection = direction/std::sqrt(direction.x*direction.x+direction.y*direction.y); + sf::Vector2f unitPerpendicular(-unitDirection.y,unitDirection.x); + + sf::Vector2f offset = (thickness/2.f)*unitPerpendicular; + + vertices[0].position = point1 + offset; + vertices[1].position = point2 + offset; + vertices[2].position = point2 - offset; + vertices[3].position = point1 - offset; + + for (int i=0; i<4; ++i) + vertices[i].color = color; + } + + void draw(sf::RenderTarget &target) const + { + target.draw(vertices, 4, sf::Quads); + } + + +private: + sf::Vertex vertices[4]; + float thickness; + sf::Color color; +}; diff --git a/term2/seminar04_factory/src/skilltree.cpp b/term2/seminar04_factory/src/skilltree.cpp new file mode 100644 index 0000000..711dcdb --- /dev/null +++ b/term2/seminar04_factory/src/skilltree.cpp @@ -0,0 +1,405 @@ +#include +#include +#include +#include +#include +#include "sfline.hpp" +#include + +using std::cout, std::endl; + + + +/* + Icons from Ken111 + https://www.flaticon.com/ru/packs/game-skill?k=1650700359068 + +*/ + + +class Node +{ +public: + Node(sf::Vector2f& position) + : mPosition{position} + { + } + + enum class State + { + Blocked, + Unblocked, + Activated + }; + + + void addChild(const std::shared_ptr& child) + { + mChildren.push_back(child); + } + + sf::Vector2f getPosition() + { + return mPosition; + } + + void unblock() + { + mState = State::Unblocked; + } + + void block() + { + mState = State::Blocked; + for (const auto& child : mChildren) + child->block(); + } + + virtual bool collisionTest(sf::Vector2f mouseCoords) = 0; + + void onMousePressed(sf::Vector2f mouseCoords) + { + if (mState == State::Blocked) + return; + + if (collisionTest(mouseCoords)) + { + if (mState == State::Unblocked) + { + mState = State::Activated; + for (const auto& child : mChildren) + child->unblock(); + } + + else if (mState == State::Activated) + { + mState = State::Unblocked; + for (const auto& child : mChildren) + child->block(); + } + } + + for (const auto& child : mChildren) + { + child->onMousePressed(mouseCoords); + } + } + virtual void draw(sf::RenderWindow& window) const = 0; + +protected: + + sf::Vector2f mPosition {0, 0}; + State mState = State::Blocked; + + std::vector> mChildren {}; + + inline static sf::Color sBlockedColor {40, 40, 40}; + inline static sf::Color sUnlockedColor {80, 80, 40}; + inline static sf::Color sActivatedColor {160, 160, 40}; +}; + + +class HitNode : public Node +{ +public: + + HitNode(sf::Vector2f position) + : Node{position} + { + } + + virtual sf::String getIconPath() = 0; + + void loadTexture() + { + sf::String texturePath = getIconPath(); + if (!mTexture.loadFromFile(texturePath)) + { + cout << "Error! Can't load file " << texturePath.toAnsiString() << endl; + std::exit(1); + } + mSprite.setTexture(mTexture); + mSprite.setOrigin({mRadius, mRadius}); + mSprite.setPosition(mPosition); + } + + + sf::Color getCurrentColor() const + { + if (mState == State::Unblocked) + return sUnlockedColor; + else if (mState == State::Activated) + return sActivatedColor; + return sBlockedColor; + } + + void draw(sf::RenderWindow& window) const + { + for (const auto& el : mChildren) + { + sfLine connectionLine {mPosition, el->getPosition(), getCurrentColor(), 2}; + connectionLine.draw(window); + el->draw(window); + } + + static sf::CircleShape shape(mRadius); + shape.setOrigin({mRadius, mRadius}); + shape.setFillColor(getCurrentColor()); + shape.setPosition(mPosition); + window.draw(shape); + + window.draw(mSprite); + } + + bool collisionTest(sf::Vector2f mouseCoords) override + { + sf::Vector2f d = mPosition - mouseCoords; + return d.x * d.x + d.y * d.y < mRadius * mRadius; + } + +private: + + sf::Texture mTexture; + sf::Sprite mSprite; + + float mRadius = 24; + bool mIsActivated = false; +}; + + + +class BombSkillNode : public HitNode +{ +public: + BombSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_bomb.png"}; + } +}; + +class SpikesSkillNode : public HitNode +{ +public: + SpikesSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_spikes.png"}; + } +}; + + +class LightningSkillNode : public HitNode +{ +public: + LightningSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_lightning.png"}; + } +}; + + +class EyeSkillNode : public HitNode +{ +public: + EyeSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_eye.png"}; + } +}; + + +class ClawsSkillNode : public HitNode +{ +public: + ClawsSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_claws.png"}; + } +}; + +class ShieldSkillNode : public HitNode +{ +public: + ShieldSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_shield.png"}; + } +}; + + +class SwordSkillNode : public HitNode +{ +public: + SwordSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_sword.png"}; + } +}; + + +class ShurikenSkillNode : public HitNode +{ +public: + ShurikenSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_shuriken.png"}; + } +}; + +class WindSkillNode : public HitNode +{ +public: + WindSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_shuriken.png"}; + } +}; + + +class MeteoriteSkillNode : public HitNode +{ +public: + MeteoriteSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_meteorite.png"}; + } +}; + +class HandSkillNode : public HitNode +{ +public: + HandSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_hand.png"}; + } +}; + +class EarthquakeSkillNode : public HitNode +{ +public: + EarthquakeSkillNode(sf::Vector2f position) : HitNode{position} + { + loadTexture(); + } + + sf::String getIconPath() override + { + return sf::String{"icons/icon_earthquake.png"}; + } +}; + + +std::shared_ptr createSkillTree() +{ + std::shared_ptr root {new LightningSkillNode({400, 500})}; + std::shared_ptr a {new ShurikenSkillNode({200, 400})}; + std::shared_ptr b {new BombSkillNode({400, 400})}; + std::shared_ptr c {new EyeSkillNode({600, 400})}; + root->addChild(a); + root->addChild(b); + root->addChild(c); + + a->addChild(std::shared_ptr{new ShieldSkillNode({100, 200})}); + a->addChild(std::shared_ptr{new SwordSkillNode({200, 200})}); + a->addChild(std::shared_ptr{new EarthquakeSkillNode({300, 200})}); + + b->addChild(std::shared_ptr{new HandSkillNode({400, 200})}); + b->addChild(std::shared_ptr{new MeteoriteSkillNode({500, 200})}); + std::shared_ptr e {new BombSkillNode({600, 200})}; + b->addChild(e); + e->addChild(std::shared_ptr{new WindSkillNode({500, 100})}); + e->addChild(std::shared_ptr{new SwordSkillNode({600, 100})}); + c->addChild(std::shared_ptr{new EyeSkillNode({700, 200})}); + + return root; +} + + +int main() +{ + sf::ContextSettings settings; + settings.antialiasingLevel = 8; + sf::RenderWindow window(sf::VideoMode(1000, 800), "Skill Tree", sf::Style::Close, settings); + window.setFramerateLimit(60); + + std::shared_ptr root = createSkillTree(); + root->unblock(); + + while (window.isOpen()) + { + sf::Event event; + while (window.pollEvent(event)) + { + if (event.type == sf::Event::Closed) + window.close(); + + + if (event.type == sf::Event::MouseButtonPressed) + { + sf::Vector2f mouseCoords = window.mapPixelToCoords({event.mouseButton.x, event.mouseButton.y}); + root->onMousePressed(mouseCoords); + } + } + + + window.clear(sf::Color::Black); + root->draw(window); + window.display(); + } + + return 0; +} \ No newline at end of file diff --git a/term2/seminar04_factory/task_skilltree.pdf b/term2/seminar04_factory/task_skilltree.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6b2d5fc15978136405ff87e00c2b39c2aa1edf81 GIT binary patch literal 160204 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

WzwV`~@kZUHGdJ8KuqUf|z?vsR0ua#Y; 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

rp8TsBQkm%hk9A}fc;DecV_W|X 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

ROKf~ITx=C4c**?PN zG|f2L$EQlGrnt@s_UsV$vqa=BlYNe+SX|;V+t|-t0c<9b!Nr0-scR0p+6wHe zQ}u=Fx;v6Z3_tZA+p8hoSA3llD}|!t-r?uU2Im7OM>N(#jCq~(PFNJQ90kcI?n#am z{Lo)$N#h2WX2w|xORv`uMa+gpe9HJvZ9--CZ%3jN&aqq{AXBiniFf7?YD1F1S0JYZ ztI-0iKdmUpSi;daf6Qz5+QU5&ASgzZk_XXPC7tG|fN>8h;AYgGe-S-VySDTC0f?EMwFZB-n~n6Oa-rM0mAO$wgR+ zS7e`*FFE0#!5piE4({qlC!q9yZ}>U9f|ICA(&q-g)hs)u=R81ET`IJ8utF$3oDp=S z&&A(-p_xmHgtt8@E>ib^TqN&;$eP6wIW!imscav9+tK#(FO?*Jvkc#ezZ4wOffFbZ z4jXEgWtx3ANzZqaaMn>3J|j|`_Z_18Cpv^CEzZr~Rv$*5W_7)JI%>iobXe$gRAt6^ z@5b%vRQDc^hYR>F=!3J^*V8-4%Vydd+Tml0Ut_Kym(x`In%s@_10FcV`QWW8>&;13 z)cs#kt1I{H-@_T{u|p|PR>LuAyA$A~ai6O;#%3C z5=RP%B?h5^Y;Tg3w7Y_MqeRjLgPdKZXb-1?Fhh&e7@OPs0=T^g7^X>$MYp>Aw^^_v z+Ml-FPsE-9uQ%%Ekcu3a6xA;^lc8>m1W)=W)9I~gJleWgBQ+BM=)bPE^?m}w&9&#_j2}1k(B1zZ=aT)qIhMdiZ5+I#w;n7$^Pi^*gBX$;-6CCsHD#5O(&p(( zj7@CI10HuFya>PBQ6@UXB0sagI_@r;K$n@}TeALqoPac%yY8Cahei$y9^h~)PJDHG z3!>L9(`;T3%~oJRARSjK%J*8j5uoso`(i6of_+EuDv0nA=!ArV0yMvCJT0PIyYYh4 zI@6>~@bCkY%-mI$io~(-B-IMH7GMM6*08C zYd1XzybXwK0s$7_bIm~6N=-E{S~xbOXf?_5qm*5rOs`dTXXV>j^~!q4Y0}Y;k#%gG zkUeA)s9@gidgyQ_Rx=#Rd*QyG;CO!=KTzCk{IIGE$-s&Rl7bo+8T@7V6%p=yUHsqGK?# z{zkp`&Qz_s9i6Skc_&1-R;U3r@XKZEf`t(^Iz8cWy{FtDJ0YzR$BOD;GiMbpBIim4 zLPvgaJa#J{WAir_VYbMEOZ~mAlh)G@vJHeiCxTGfq5c85X}uI z*N2E5Z6qJ6ah3GbAoUmJ5&pTN$HIo4jWxBy*Tmwiz1bB5utv8LGEOJjZ4#MQQyLCZ z%A-%mkrx)rqn1!xbODX5_d}lK^vP-pCtl}Ko+h%uG}8nk(s8V; zW6>wi4pMACyh<+Fdsc!L{Uc@P(~bIQcPO;8gtN&TjD zF@a1iuWM1o#D;|@uyYAG{W&E(2GSd1uiq7 zpnsKH6y=u48)GUR?2UAJCf?UFy&a&74zL*1%7e|8?{LXMI#`bFv^$hHf7wuwn!)bz zft2P*#pg=9%MC4^y2+*SlYv1;Y)p3`aV@<`$o5rfrgu{-w!aN0RR|=vifSsxT3;o9 zhdHJHK?ZH+>0e-e zZCA<4^M&>ZzH1TgKcL-nwogT)@}i(P=YnD>SzIOgBB>E)r8U?ytQ7)t!Fy!^rslA| z(ciJZ*ANpYUyOH9ttCqJqf9=;1y9dB?7v||iNM2R@}Q*6-fQbPSjrj%mQBRoM}WSf z`91>}ZW?aMe^J^48-Y%RAF{W%~X{D%NS*6S~qON;)qiRdvA;{?^_e$(j^m)Wto{15TYnAXjp=8PND z!!HHmXyoK4$JCrVS{)w884YOWf&xLYdH%?Zb16`&F3w_=>CQTdy&W-e8-|-yg*@C3 zP9HCo|Dea+&%PBx4%YX%`Y7@Me~fu(_{UX8Hfr?}qwc)^UUbN8$_5TtY27zV+j&m{ zxr*gpi|IDP)XwDWgkUMaV`Z8Jr%Nb&^wc9joR!Gl@ru`i=}SulZ6bJ zJ+zq{EBdG8`^Nhs$N5v7Lkikb;TpGa&6hciRVbEjyYbWn^E#3VCo|%vOIx)gj+^eV~*yQJ8L7QMf~+ns`XlCW<*+kM{!eC`={YG z@Zdm|8z*ILqY4BYCzzhr5Xg<_vt!4>-dkQ8F~i64LQxbXbXx}OWr8J?UVa?OQ>%OZ zq?VT@PRnD?2e2y0o5=k3dHZSeHQjV2xj%sKrfh<(%onVBXX1q`&q8@mUB8l}ax|wF zR^tXenI2%3@JwJ0ccKzyy_eb2WIyHGU-iv9b_py8R1&WOEu0b|`er zLA5xGipu7#Cv8%+oUX?tnIIn$TKHYsxDlD1i%vl>7(S?yJlRSH;!Pdw2Rw2tJWB-< zW$eq$x~U+p86K8%5=hMj>P5+7kWyA|P-jWCl&W)f3j~j5fQHP0k(@6`yAAAB< zur&@?2XN{|o9Gk!SZtE6gP~F2qqHO6v*SyxY-RkZzs!q-XVtcbYwWAm%S1rTx;-{E zk+_8#F#E+I4ef5$@tM4eO}ca!3{qict*ec#4mA}2;JfhULL&zG=@mxLvXVThxqO~k zWSJN2tbu71JdrYSD`gPD&(4&hz0vJqG_~K$zXBCo@MQNUc!M@qJ0Zo2JyQ5=Bm0*_ zBODtuDV;fIX(YtoyI0~XI%ez{j~x_HqTk%kAs=Mx9;HWz92pWr_+CD?q$@UEO0I$^ z`dNcD(kJ1FgVp=rPh+;{=%Y5H7$*KG_DcmK-Z@iq&?G(T=~TV)(Umyj37MVrr(ex4FJ_FuZ*9J*cvGOUfdE?U|@1XI(oi~jxDc>_j$~v7sM_2`&0JN zF~ry6ar`-=l(xT5LTVhn)S@d^pEj{Q;xRzVfp==8-Ww2#=!?sYv#PD^h!pNJihJ`3 z8gHI!wR%R7jcpieXS_9R;7(^OKuOpP^$OTQ``uFo@B{yF-n7lZaCfM-CY`j04L`OUtsFlghIwP$_)Dm4Vm>jcegCcA9k+`WN1T&ro zsj$8y_-D>mPuA!jOHrlv@of~&Kh@dU)?XFA1XO^d2Y~x3r@iXsP?g({Zt)JZBIXOc z9xgf6UPvW3hzC*-D)@NEdphEq4!ZFlta*N27o3TwaEMNTUvyxja{`~Ng_|)9Y(+bX zGLm7-H_o+qI(}}|7#6_xxAINPx`ZBAUxG!&y01F{9O#vtVNYTI zZlD7h-%PA5=S5gXc0-rCQhuilu<%G}BWq$!4mV3KS0>(G%vgJ*KmJ}a9P<6ErmB!K z^7!XJ`2Je0J_&YKRbk-m!0$!#7i@9Mzm60oEHiVRSSmBDzXnYlJ5?!C#F3}iZj#OV z0JHFMSK!Jhe6Nr0*tV7WA<&Xp3&UgWSC8)t4yGuLg)raTVEyM<{kq8W75xYw>zDxJ zf*eok@=Wb?7M})LjGhQ|;rzx%la5jjf~trK;2Tm)v;h^yZsmEeH4BBknsslWEN7^} z>LN_kxiF-s;S}WB<5q}tAn$sM2T`JUsVu1n<_z=U)L{+FKeB8)d7C^jKA!olk6TxH zQWditg7GYzprQREfAEsLczB)-mfHYQ+fJ8UpceVpS?$$01yoxqOE2F78VqRIS z6ADn5-2`n=-&1;6^J&iXCpZy^jmfF-Rzv>owfc4cAv1B?w-nRTbP;|pq!bEs3+;wjSdeIRF zc{g|z4~qn6Zzh8Op63wtnBHHkojsuoWL|+C(5=hx5H?$8z|AaVyvVC_FN6H{&n$GC zW!D59C`D*e?73`l9R=dOps9lkZvvGYJh8efI`x(4HJkpWFmw(3{R{MyK9I@uy!!?j z>rS{FWwpB&yPg=6BxIS0=x;{WdM}T6bi=fIwb0;EyG~qe8wh}yP5n=9vjvH^|AJ*r!6jYXcFNeExVC8DT&?_3y}QR!v8i1IwJ|YXBM3@w9l8R6WPFXxy>*01@m^}fcfN6UA4Ly(Eg=>l;`rI?N8+> zT`@h{tu|UZ7a7*R%L2VY3!MRwPyxV(%;N0Bgvfaj7)2Cak0Z6pc$!ZT);IAfn+``+y;@1BTXBd%x5_3-p|U&Ve3=X1!6vx6Ui@1j$ZcQkK$gNSU>EKF zzAqRG#szv0z78uGq`zUaSr8z*E|s^#LD`7EuLv{~^(nCJCZVY-V-T)WoR9`gV& zjR)HnbYZ^T zX4N{LboUE}angw`1$0uNm+M6fjI=CBFiSsw7sHwS+dLdFphMHVIj$DeaQAK6rKcta zI}(G18bYV5Uvg%JS&T0_&lyK`3f&JTkJ+hk#@#i^XI!ynfYD~0wru@(r4K2M;`R6Q zQU3{IBFW<#bA=!FRuVK2U!D?(cuOj9C>{uCpde#0n{JJZPEfjf<>p3O;YmdhtOETX zqLa1*hlFXhpRHN;b!F;GbD*R6h$GGAd}L7C&~vq~IcBtmFu^XHvbSH{5UGyentL#^ z8({Vz)Sq{D3)VLe^{4AZ>>Ol8aSWz)0-O*--#9P(?hg}?1``?H3+-e2Pb~43A94-} z47MvqvG6p!-?$p;oO|sWUFu``B5_1%?O8S-ZmJ(G)85r7D;uNrc_@Xt*`3x`P3ulm zUs*LW7D&qFZU)4mUup*&ct{4Uaaqy9doh0Y3V+XD9Xh(CfLpZKRV_<}l(|c=i~pY- zMp`fS&ALbuTF=t6qJdBCX6|Lp*jvz-+m`X^VB|K@zZfDqR}%sss90Q`s1sZ030pek z-R6~XWQf@zn%!&X*;@ZnqNtf4DSgb1$1=UOoZwfXvt%V-B1B`~+``sT}v#$jc z5sL}LTQD2OE?wsZPlV=&s`iC=?+Nrt!+cBNzfa{X<^}1@%(D{Jgh=aWz`T(j-H;Jn zuIz1p_X<4S-X#omPMLzOhO!v8s>M$@-`+Hwkh}wb?^8zmb4_0kMJxJU71kVYz5e79 z%j1acc^-V+eB7~~dO_}GcdpP;T_pmr4i4b{#?LYm*U=`2%yg^iQr%oCGJzLCv`!+9 z6_c1oo;jT`0|oZ#&)aF?oU}`PB-e9{YmF)MooFjgvKo=4@n-K-;%kE>8(o zn?knpepYi7(LbkQ0w>O2c{tzF@b5@<p#D*J@L|JsoAGGtcO8MZo`1 zCxn~+(FTn=?)@$Qm-uCBxTitSmbA`N*m9(B=1ZSjtpXzy-$ux z^xWOF!cX4>I5+54BEY zOf?2LQtv?z$;Ccm@*uA!eel|yl3`e!8|oYQB`c~h-QAy>(5lQ02~>u49L~F_g@iN$KUjTeO5<&W ztJ`DRda`Silt8y9-8kK?n8oZSfXckxH#p>ms`-8zyKl(h`qW?D;9DVO%xwnV(cPpO zSDZxZ)669RQ_7NFbGCS4I=IYyX*ViF>g1}}XP0gRBxGj*#E+mR!1F5k$CkZPbx#E2 z4dUcp7J8L79gh#E*&2SYMh~%Osze4|*AUksjK8Gt=9E zPT6?|qf_Mb0>gh%WhR}Oj~2}KDwI9PW4EmoF#!3%)67HzorzXB6YdOAMX+-2hwS8N zujMR=`1}T_gX|`` zt##q~k>1=7RSur4q(Gvy#wXeUpXkU>{-xoiqA9t`F&}vcllK0*xY>?rzF!xNym&V1 zLj=fE#L=WRfIzTeP$f?K(H|+EA`!nWK*3zUdXNF7Y*>DCJ%q8E5GyktcvZ=%e2?)bg zRZDl7vLdsqReXsC&zdQvb8|cfjAw1K2C2ej^{s0k!yl!@P|4!*G&o31w^|#7T3<>C z^O`POy6=Su?Q8|@z80fgy+4zu(doV;UXej)1S-H`Z;g|sM@J6weY8HOH{*X4akMcl zce!n8;mrQ`kQ~{=={4bzp;uIK#jGSV995`%h2g&TLG#Y1_`QDa6Uv4x@ft@bWJNV~ znQRF&E@vzHxZ5h6%eMh0);~zoKSpj~HWV!x1z^|+#e3p+rJYb1zfqE+RjhNZUex}* zn(f#6+Th`)4z`2 z=CDS}jTaoiC|7dtoQ(}~hk<3_BG&G9o+vAfX%1!esb{0@H@(zNM9WU9z7BC2i770L z56;|ZeVmYJyBSrv@yx7V#y>>0OdOr-HV`e3xY4PRHAPzh%MaDut-?3XUL1-GsCzHD zuYk;^&)U*WVd&0L*(X*bxA-(`&#wPMdjEEsvxMX)Mm;Y2)Ig4~C>jv%WAdAZVg**- zFXTO0Y#JH9Ty(l0#!J?fjz=j=_^1e|H3omr{eVaO`}_t~n6l&(3y&CK@)_2=IO?X%H_hMmJ)jN%-uHs+8h99<0|2-I(bTle)vh8@jISaNw zdk24jnCp*$5vMzRUE`(jhlujAyp9qQALsl!bO)8G# zBXKb3?CK6^2%^WuPi{c%J}k>|LTd~Cr%_eA9)4N;&SF~m{KT(q061)KR?9zp?5b}2 zm-+t7N*eCtHGC5MR#GDl2ZQ=M#19#(-&}=SlvF&)Cp^5vu?eXVkZ(3NuX%kzV1M51$H!B&@7fjN-BU zhDrsaZsxnK8OF!fbD*s?bt`#$^%)QJOO2PvNo^U9QWCDI6Gu`vc7c%A@`Q)tR3|Yp zTxcz%{2v}>kY7c;*u$LxDw;5R^n=5{?`B$XAEDHa@9_}8L=co!Pp!oh96v0Dgr>g4 z-|xRwt;X=*TSw3QxkR`{mlyfV8KK7uqB0QBYyI@#Y?M)5$1C4(SMe30jqmAFJI!{L zNFP$^9Y?Dy58rJ1bh<>1WaK>++WO(~p}NS4%8{oBwF$w9hfe;@`i@c!TTE4!#>0yz z6uK$)Xj~jRIU%0K%-Qu~7z#H7Pca4xMBZo2JEAX=VLVCywwuK@E}W;LR2H=PRrgtG z!uJA&adoG;C88@x%uZpm@o}<6)CGxAovL(+Z%!}@8q@p*V*F6E%xWQ#cEw32ulG92 zvkUJY?C1MJXNw8#`O4yPwkV6+{#iw<*JDuvV)t`ECgIz!O7cFS*!;>=p?Qre_WM{j zdK~iHBF)s&P+0#v*&jJ?{%P|f|Ac+`^Lnx0joY~sZpE}SE8qOJ8-J9Y5po`!@@V{ zDZE&pV$H*eXn+7`n6{U7pu=MuB|={Uje76&$M0F6@mbyjdLjGeybbYAyZY<;Izip^ zCCmqZyUv0_ywW8x(sf-dAeyAtF(1y+=p0f4LP0x|>TeV-@~I%M5>9bN%!zCBI-k9t z_qopbK{u&K9xSr?qTJI8R^!0&UeT#x7z8}>^EMh)9L7Bo1^-A97UgGp{V7~STS zdTYy#>q*q#Nb`)2RrF}>4j$HhKUfojHzu9LD1o}(KxfJqW}ByS*#>&+@H(qbfUtQd z>pA$ov$RR^&+_Darfq=?s<%BlS^B%ty;~eGBXv4O&(}dVDXO*FTvhS!jwsh&9MV;V z8;d(k$t*jCdxBvz`0zuzgWjKSU65H?uLa*!J zY>#3Y9ZNTMEJ)Xg#Ts(di~V4@d&p;_EL0f622^h33=gdvmF@zbIjXKFsz?vRO2-%! z;W+EHipVo7`A!Xf5|Y?hAu|Fd+gEme*=~#TaL7%-;J(L+A#$v6 zrd>#KAV+AjW3yZni~%!!eUYV;%~bkg;RpAeDb5v59g3XTeIr#Rb>N}f068cJsOhQk zx1L8&UnAqigzJp|VCaQxJ(J;f>^u11^{2D>TP|2&V|Om!-ucy^-L|st)Avg$c}Vc; z_AyUclBEk9b}LDg4PY*6))OGvX^FOY@+^AnKSxF(0;1J_NAq5q4`Rm(x_aDs0`za4k^_uaq#;uQk<36*wsW^P^@I! ztX0DjG15SI4~7Dc(d2_Zg+DYDr|?aEH>j;W8Ymgh`sg-C2B=F)TJ>fACGxDA?`%kw zRpX_`uyK!#*^hk#9SsiZ_akL(Du|+Y#P6`H968}z=}LwXF;oS9^Y({v_@jU(kFCkj zslfL<1C5t77-XH*-##&5);A-k#b%!9Jqr1lYu}OG^FXCsX9i3Awt{ns5VtHh-MEA4 zW@CHrbgT0t=b1YhW5z-mUtWM$ncVydYBE5uFB6RI6GsV<`+TCTSZE@zeOFGT;;syd z1!(&ZMLFfU68i|b31`88nN?W*F5qWlpIsJ?($ZezK1tJ)olfJ9p{0oO5zBHJtS|Yh zG4dvx&KJRxRU~|KKU8r?FW61Cu9D|ZP$ib&A7pjp^=G|(M>s~$%9`peTs;%K^th7< z;Y8WftOQh~c4T+d_SR^sDv82_f&GK{yMZh!SvG>`zEZM6v>c5Y*+Z50hki4YVGa?uhU2>+|~G4cSiCr zUKoTU>_y~D(swU}{jF0?87t9aQ=M@JA-LYvC2uw87iu1qjSRFiZC!#62KQVB}tkaRG~5X;xl+m0>hT#8ZL(T#y#e=38}U#>>GBo)ZAmmAMtX=5i-|lyyw)b*SX=XWfpy3|vJI)X;!rH8Z3iOs(Fg3EGCmK}}1LM&f+W z1>9+RX@`{{_@8&ub4TgHSzd(T{bYl{Lhp9eZW$oR5E>Kk!%nUHLj%r!?5l%`BHZrG zU8{0PKH2yy#beH?+ditTx{(3K6m&~^J8-=%?jMP3pfV{7 z6@iheCk9lba#yx6DeERL3F~*`AF@Y8-u4UDdpShM%5>EZUDPS@h0+<0p$Vq7KTMnT z6{YiWo4eJpLr}8plOKeu(&M)xev?vlT%{&|a)ao`iZjpKz2XAU(#W1JniI3Mc6;uL zP@TS;9HK46xUPS09Q~bVZ=ctq%#@TmXiq#FFXLUMe?)}8#OK~HBgAoXieQo=E#mIY z&xbK=4|27Cy@gUw4OKckCJcms;hOxaGTcybH=6zn39~XcBL=3D%2U`R^cpC%vYXo=x&PwoQqqdt$bZ2eY`#2|N1T1DoEyn;9XxMcIGc?1B!bwi@=a!~)_*utoa_0)`=;xOh8mE3nII@GZ;%P~5m(atF~D&l8it%6rx50-3dun-iOF38X8r> zi*J>~u?b73SxABMGYC=rT@Sg0Q>=d)7jmhB6-kn+j@Um>mFY?>`X_sw^f{UbCZ&}< z%D3*@tL<~SScYw0gyYUQ9XLgl2lzipD;F*mcG^QnH`1vaa%sxfzLPY}9iFs$GEQDM z+`~~JCUBv?WAU@EW1f+j!@u)3e)u;mO$G#~tIyCxi8*x*=nwf^Cmtvxi#I?<~b z9nAdx!~C!L)ipjBc;I|A?{>y+X|3rW1}v5-s=Y8M0KKciYGwDaDlAqm@$; zqH#%bW3y<)Ach%mxHA>J$w+I(buRywqh1nDnG_pd^U4Z#YlBq1d&(JFo2Jc~ z6*uhe{scp_$CCy1|2UjxCO@Pp$Wu7oDb#X+DU=q7WS&Q~K+N@eh;I2hT70R5l5Vq1 z2d41M#1Q>p2J>^nuUg#->O(Kz$jB-BVOqPrOLn5d8GazruNl49Qj;RrE4V)-(tCWV zbGN;V;^JAuli^DXN}6!^N!?nfw|Z@*=dgcX5<^NfUD_r<8Tbh%X zOMr)qSA>=O1IX7K;%4K{!iw=FG+tC1iE?xm%K@mP7K~6p{q5s|ITm9QNse-*g06rdGAh$k0-`fN$z|qyx!`>Za z3Gn(~%Z0f3xp-JHBqjfYBgD!9L-79qPv;E|0QW~L2W<~$3~qIR051l&BG}E{1HjMo z7OH|=?A}1*6XD_ep9aT(|74v!-n!*hbb5nC9%K!%0sUuhcaJx$oiTitPK^v96e8~e z=BqcXJ7S_HvXDaHT2E}4Mv!Wmx5@f(zpgYjvVVw}ouupzIL=>4HogFoT9YiSqNXj{ z)c(5rBcrvdC(wskC{H*FEJ)ViMK21EkOYO}C?24YW>2Y*l7!9m{Y2XCGZLK9TR`Jb z2ih}jilgDfmlD(V$mdU~)3Jp*G^ogs;#E^HW2s(C#$lm>Ij+SlvHziNI)#k@xXTm` z7(3MSr_l1W2p_*R02o1_d3FexcXFD+62?YdQO63461jgzqn=A*v`QVT|Av+D zh<|_IZQd*!kZ#gIe{a=#u%ysTT!UmmIg)Vt*|$Ek$r0|W=vt#){m9iWWD7||yodU` zBvtPdk*fS-)Tu>dM=J{MCgLHjV5>3pXyG55+O9zn*m}7CCl>Q2b6eQI?Ou1<^(Yrl znCAnTb#*#*WJMvWYfD!7&kKPu_=P{RO$IyEzJt#%4iDE1Cm7bUzpLfZv9hSJP3 zdJe<%QNE=#=TO^JG-Wh|AN|U+@n-bdNR}44_Lk)A`fP)>>jts{0-sNsr#6Ic=UYU2 zL_pIxLXj&ow2z5)?tfDu6u7poxQ}emio1*<6vSeq_sJdl34FFIwqNyTh1|0^_2H5t zz2FREP2A9f(P{y|VsFnAne9X2=#G3Ff~AA;!qij*^}czxNC__1#EOX3BQzF^mlcoG zyd%$Qbi*ng3?6|)2tr@}sfL41mzgG^gck-^F$`zZEjIfO>pn-O{DEwZvhQFJV~W%0 za1_UpVwYPRMiA8?L8BpWe|k0cm=YZT6r z?UmesyhR%vGpAQpD$qNb1e`hMfU2|LuZK#7v4&!od$iMa?j+PV*`V$(;xN0f;NS4V zNo6g!b2Ez%-X9(eATXf6^uuEfy?%V9I2f#U741g~sprx81gwn+N+Es#>)wyvO>nU9yX1G_)uydTXD4v~p!2pS<8h%i7p8DNn!MiF)P>a+Z2od-dL;Tlrb9rSNVmk<=CG(is*N$-<`_7On_mRl{2zjwvtX@G;0& zykL}hMl5(q$Enfete{nhyYkiOZ<#knxjN(y0Lp z@fK){S%kQLc)Hk|+n5KT2p$HGTaDGu@|FUQq;Wnaq@_p_kV6-UHoqaUA zj^N0?a$`N1pl~8s@&LM7+ykZ^f`L_ax`iyZVEk!6c4=25!9zpKL%N@|_CBhFzjVb`z1Y=fiZtzs zyZ22JfzE(U*<*lNQ-xijzF0^!Gf-~Bet&5Q7|IoLzXxp%RXU>M$)-z zAr_VOh~kz&wt}V|ddpvAHlZEvEz1!O+U7&Fqf-AwoIUzX>E`vL-lP;_LE@FYfK-Eo zA139pb3L3?a)Ox`QU1y6<2X9~_Uhb`gV+m5DYP38EvpF^7%e%h;0n%(%VD!!@zo6S z+200&VOUgO$mEo)a;hN)#=7IcD;7lz6MAxS{Pz_6C|Lmw9EIXNUNJM-nS9;zxn~V* zwrL9CO-O3JJ(B?|oDylOmKH z5hqGV#=WM6X4|mscBd0bO8h;oBDdQv~P5-hlvZ#)Fs&r;c6G*6y) zFcjBlIzC@Lw0F~-Nl8Uem?6qtjr=w;*z;AF`XxE%S{UGTe#_6oN=F9N8?!rReQ7!( zsOd^K>2|RrNjoQfR{Ft2=~v-;t|puTErt@4T@O_W^+DWP4k95uFUZZ_8K2D zwzbzC%gP~ceLp|$cEUSU-kaRT5UBvnr}ugPq&me>?xeaNKi6%<h zYKN|0PYK`lt_rl*F<{rrlQ4M5Xbu$ws$L|p`WNRr_lNEn)v_IkJ%90L8jKtsG4L4p zK_4MzU38$N@P6jaD`)zff68qhWbdje3AX#^4+9CjujJ#*=+*9oirGuRmqo4}w`rBn zj{*>=m`ml<&1IYEM5}&^zx`W>hg~+yx{;yHk&t*ZK<@kZ-Y2=(bJqS4 z2L!WVtMC#nW1lVSUTw$cQya+OG+WtmWQ2FXiYYe2zs5M4SMz`7FNKH`?+?T#a7RBqA3~)uL(b;->zfJan)dY#+`Tn3b%VJGt9T0mX7J3$Gp&I!+K zl4tNIWM>M^C!f5R3SFBQ7YbkLUqV*Ou=`5lWR6m0Y=>%5yNQjq_hp6isa5X-yqYG> zQusw`2S!I zRL~*pJ~%8z%hzBH#DZID6`XN6j^KeDte$9s4?Nh2JUDW2(6o=x@1PM|+w~rf3K=RZ z9^}P-mXRN6`f%UIt!Ug6Bay>+LPa<%k+oT*@l`Y;Fm!0Y&5S3+7r+zP%VI7~1y?nE z^lxQ0Ju>@p81Ro=>2Kk@#)EjLVoe0LlO<|d$noau(W#A8t0&g&e+S*&!_v*e=Z!pK SywNcr4-kWqQQ@N^#{U2?S)=a& literal 0 HcmV?d00001 diff --git a/term2/seminar_thread/01problem_paralel_max_iterators.cpp b/term2/seminar_thread/01problem_paralel_max_iterators.cpp new file mode 100644 index 0000000..1bdcf1c --- /dev/null +++ b/term2/seminar_thread/01problem_paralel_max_iterators.cpp @@ -0,0 +1,75 @@ +/* + Задача: + + В данном примере написана функция шаблонная getMaxId, которая находит максимум из чисел в векторе. + При этом вычисления проходят однопоточно. + + + Вам нужно написать шаблонную функцию + + size_t getMaxIdPar(int n, RandIt start, RandIt finish) + + которая будет делать то же самое, но только использовать для этого n потоков. + Проверить, что эта функция будет работать и для других контейнеров и типов хранящихся в них данных. + Например, для: + + std::deque d {1.2, 5.1, 8.2, 1.0, 0.2, 5.0, 7.8}; +*/ + + + + + + + + +#include +#include +#include +#include +#include +#include +#include +using std::cout, std::endl, std::size_t; +using namespace std::chrono_literals; + + + +template +size_t getMaxId(RandIt start, RandIt finish) +{ + RandIt maxIt = start; + for (auto it = start; it != finish; ++it) + { + if (*it > *maxIt) + maxIt = it; + } + return maxIt - start; +} + + +int main() +{ + cout << "Generating numbers!" << endl; + std::vector numbers(5e8); + numbers[0] = 123456789; + for (size_t i = 1; i < numbers.size(); ++i) + { + numbers[i] = numbers[i - 1] * i + 1; + } + cout << "Numbers generated!" << endl; + + + + + auto start = std::chrono::high_resolution_clock::now(); + + + size_t id = getMaxId(numbers.begin(), numbers.end()); + cout << "Maximum = " << numbers[id] << endl; + + + auto end = std::chrono::high_resolution_clock::now(); + cout << "Time to calclulate max = " << std::chrono::duration_cast(end - start).count() + << " milliseconds." << endl; +} \ No newline at end of file diff --git a/term2/seminar_thread/02problem_parallel_transform.cpp b/term2/seminar_thread/02problem_parallel_transform.cpp new file mode 100644 index 0000000..8fc4268 --- /dev/null +++ b/term2/seminar_thread/02problem_parallel_transform.cpp @@ -0,0 +1,9 @@ +/* + Задача: + + + Напишите шаблонную функцию parallelTransform, аналог функции std::transform + из библиотеки algorithm. + Количество потоков в этот раз не передавайте через аргументы функции, а узнайте + внутри самой функции с помощью std::thread::hardware_concurrency(). +*/ \ No newline at end of file