From 2a8dc938afd304f9e723d49e211b7b95c3130db2 Mon Sep 17 00:00:00 2001 From: Alim Date: Sat, 21 Oct 2023 14:32:44 +0600 Subject: [PATCH 1/4] task1 --- .../java/main/task_1/solution/Main.class | Bin 0 -> 1644 bytes .../main/task_1/solution/TimeMachine.class | Bin 0 -> 1753 bytes .../task_1/solution/TimeTravelException.class | Bin 0 -> 381 bytes .../main/task_1/solution/TimeTraveler.class | Bin 0 -> 742 bytes .../compileJava/previous-compilation-data.bin | Bin 0 -> 285 bytes src/main/java/task_1/solution/Main.java | 17 ++++++++++ .../java/task_1/solution/TimeMachine.java | 29 ++++++++++++++++++ .../task_1/solution/TimeTravelException.java | 7 +++++ .../java/task_1/solution/TimeTraveler.java | 25 +++++++++++++++ 9 files changed, 78 insertions(+) create mode 100644 build/classes/java/main/task_1/solution/Main.class create mode 100644 build/classes/java/main/task_1/solution/TimeMachine.class create mode 100644 build/classes/java/main/task_1/solution/TimeTravelException.class create mode 100644 build/classes/java/main/task_1/solution/TimeTraveler.class create mode 100644 build/tmp/compileJava/previous-compilation-data.bin create mode 100644 src/main/java/task_1/solution/Main.java create mode 100644 src/main/java/task_1/solution/TimeMachine.java create mode 100644 src/main/java/task_1/solution/TimeTravelException.java create mode 100644 src/main/java/task_1/solution/TimeTraveler.java diff --git a/build/classes/java/main/task_1/solution/Main.class b/build/classes/java/main/task_1/solution/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..0c7e5c0436fe5413f23a0a20061e2c4a3519d987 GIT binary patch literal 1644 zcmaJ>-*Z|;6#f=S7B0k;G--`VYucufl(v{QS`9VEVq>Y0Mq%P~d~h~ohui}9GTckX zy!q&#;G2)WHa;YsWF|Ad^uedwzrq>+2=!Y)OA8hT_UzenzVH0n{r#`wQvi2RwlIzb ziT5mokdj!8;+lmB(otMDsv8nFW60or3o$HB(B}gSAL5S0M-m?kjNY{!+g}w3rxv#a zA~|SVoX*9W`~*l%g_E8(e{ing9$w(@?Cr)aOMBq z{;QhAY672PErHK)PvFcw*Y!Q--YjZ=*WK~PN0E!-^91f=UE+%b9w09;`8u*mirz0f z_-OlyuJ~+8DsQ@YJ~i0geCH%VGPW`An6w2hr`}xbj!z#?Y2Wj8gQMxT$u`wxvE9rj z2gv6bY1Lp&tg7~l+VfPE6qBjN!C)*r#FwNGetz*oa2h-dj)Kz{KL#hk)47iDEI0^` zgQqKVg2^;gP3K&vqWo`cf0vTyE63;LEeuI>2pLDTQ>j2pGito1eCBEix6kNB~ZVDvwj-y+-y7D~DP=D%Y=wWnw{y;f9 zb?wb}9kYYA>eIa9Sl(~yA?E$Ju{##o{+je4a;jc0*}l$7lz8I@@*5T#ujZTWa0zem z?K7VcIG;%J-#l;`u7c~xwIhgw&hc6Pk9L${Oj1sC4KRgs+{JJnZ&PEO|HKHtz*i>- zJxqquP0@2h-msoGCITc7fh{0euXt1 zIYj)JWH`jw0SVH`VwH4Zn1B{2F-pWCF@q>i%CMn>)LZk8h5=^I}MrH0>CTe8_AOIg4*p*&KZYG7f3>xGf_jo3(qoU9w!Y;VclKw);{howef&o4!qGdPrmOp*)f9vK zL*B(jToPCql~p3?gjJx}XerN%^}0#Io*#LEHs1G1ojqwhLzAxV@+OKl%9?|ZT-?UT z0$bMGO84{wFDa8}bnMWRk+EDI6-5MO5ThryHtL{aOOdzlho(jHPb}%)Dbf=|&kqLF z5BjDbs+e2{hbsJE`U53N@8DAx>!`T6gAG=2U279jL~l!(mOhB4#<7{fXD;rd>fm!1 zUtmpOc2pS$%|Q}d`cg**hoznUhpK4=QU%+IGlkmoPjwTrWy=lxEL2E$$*C1H7OENqDy(#56e()@ zaahxUBf0ClGB{vkE+&rUvo#q)PB}J?duoLFw?p~%@w5|L08=YZAXa7{VQeM+2&vy!xE?7+|SWVZd1w_u$O}}o%BZ)f zXM-B7MlXqeqHz<~@G2Ej5x?cBa-REhNab=ll7dNc=+bF{`!OuyORiaBJE-FxDc|Nf K!}B}*-TDuBL(1s@ literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_1/solution/TimeTravelException.class b/build/classes/java/main/task_1/solution/TimeTravelException.class new file mode 100644 index 0000000000000000000000000000000000000000..c531cd2c54f400a1e7f76dc7aef3e1c11b7dd651 GIT binary patch literal 381 zcma)2O-sZu5Peg-sn*ri6~(KF;0IVdd05$t=&5+wvRBF0P@`=kO}qHFJP98B0sbg) zQbiAXa0Vvx-b~&Ld3%3(1#pUCj0FrLtVLKSh%;?;GbU{Ar+0ELlTw-@nKZRF#pqy4 z2+!?}A`DV()Ky!}RGrCL$;>ddxh$u$)*gS6VRNe;VJ~f@yT3k3oGsf%Ta#qEQduqM zs=Rp2)r03ogs4)^$)Z#Hs@QXe6Dgx!Bw5;lHpz8``e1pFsH wh?CX03Pxk*13ty!(KG0Yy8sc_xMO>~C$PwP>vIcBJn^fdLJvhl+{+ud4usn pg#jfM*Tb}?w#N$-YK9FmG7mPNXTZ6I;QT_cH4Dx!1aE1H?H_C> zLV10e_!wFeGxG$Z|K{59P8BX%94Rf5{=@bQzb~TzLwjO!MrK~BfclL|D^nC_+PfDV z-4fDV8_mqX$jHmc&%nvZ#LLgXzz^gxFfcR#F&s3&SwIO!AcsXzPsmp|L_}XypM{l; yT|kVXH7l_!5h%mRFRmvMBFrHMVlznUN%@NKf!Vy$dNQuEA;R1|U@j-f7zO~&N<;Yo literal 0 HcmV?d00001 diff --git a/src/main/java/task_1/solution/Main.java b/src/main/java/task_1/solution/Main.java new file mode 100644 index 0000000..1514718 --- /dev/null +++ b/src/main/java/task_1/solution/Main.java @@ -0,0 +1,17 @@ +package task_1.solution; + +public class Main { + public static void main(String[] args) { + TimeMachine timeMachine = new TimeMachine(2023); + + TimeTraveler traveler1 = new TimeTraveler("Travis", 1990, 2100); + TimeTraveler traveler2 = new TimeTraveler("Ja", 1985, 2050); + + try { + timeMachine.travelInTime(traveler1, 2000); + timeMachine.travelInTime(traveler2, 2075); + } catch (TimeTravelException e) { + System.out.println("Произошла ошибка: " + e.getMessage()); + } + } +} diff --git a/src/main/java/task_1/solution/TimeMachine.java b/src/main/java/task_1/solution/TimeMachine.java new file mode 100644 index 0000000..0f70941 --- /dev/null +++ b/src/main/java/task_1/solution/TimeMachine.java @@ -0,0 +1,29 @@ +package task_1.solution; + +public class TimeMachine { + private int currentYear; + private boolean isWorking; + + public TimeMachine(int currentYear) { + this.currentYear = currentYear; + this.isWorking = true; + } + + public void travelInTime(TimeTraveler timeTraveler, int year) throws TimeTravelException { + if (!isWorking) { + throw new TimeTravelException("The time machine is not working at the moment."); + } + + if (year < timeTraveler.getBirthYear()) { + throw new TimeTravelException("The year of travel to the past is less than the year of the traveler's " + + "birth."); + } + + if (year > timeTraveler.getDeathYear()) { + throw new TimeTravelException("The year of the travel into the future is longer than the year of the " + + "traveler's death."); + } + + System.out.println(timeTraveler.getName() + " travels through time in " + year + " year."); + } +} diff --git a/src/main/java/task_1/solution/TimeTravelException.java b/src/main/java/task_1/solution/TimeTravelException.java new file mode 100644 index 0000000..9e8bad4 --- /dev/null +++ b/src/main/java/task_1/solution/TimeTravelException.java @@ -0,0 +1,7 @@ +package task_1.solution; + +public class TimeTravelException extends Exception { + public TimeTravelException(String message) { + super(message); + } +} diff --git a/src/main/java/task_1/solution/TimeTraveler.java b/src/main/java/task_1/solution/TimeTraveler.java new file mode 100644 index 0000000..0571b89 --- /dev/null +++ b/src/main/java/task_1/solution/TimeTraveler.java @@ -0,0 +1,25 @@ +package task_1.solution; + +public class TimeTraveler { + private String name; + private int birthYear; + private int deathYear; + + public TimeTraveler(String name, int birthYear, int deathYear) { + this.name = name; + this.birthYear = birthYear; + this.deathYear = deathYear; + } + + public String getName() { + return name; + } + + public int getBirthYear() { + return birthYear; + } + + public int getDeathYear() { + return deathYear; + } +} From 0dd83bfe4980e79fca9a1b7cf90cc7a9e900aa98 Mon Sep 17 00:00:00 2001 From: Alim Date: Sat, 21 Oct 2023 15:38:52 +0600 Subject: [PATCH 2/4] task2 --- .../java/main/task_2/solution/Main.class | Bin 0 -> 2264 bytes .../main/task_2/solution/OlivandersShop.class | Bin 0 -> 2740 bytes .../java/main/task_2/solution/Wand.class | Bin 0 -> 1554 bytes .../java/main/task_2/solution/WandOrder.class | Bin 0 -> 1180 bytes .../exceptions/NoOrdersException.class | Bin 0 -> 397 bytes .../NotEnoughMaterialException.class | Bin 0 -> 957 bytes .../exceptions/NotEnoughWoodException.class | Bin 0 -> 960 bytes .../compileJava/previous-compilation-data.bin | Bin 285 -> 708 bytes src/main/java/task_2/solution/Main.java | 26 +++++++ .../java/task_2/solution/OlivandersShop.java | 68 ++++++++++++++++++ src/main/java/task_2/solution/Wand.java | 47 ++++++++++++ src/main/java/task_2/solution/WandOrder.java | 31 ++++++++ .../exceptions/NoOrdersException.java | 7 ++ .../NotEnoughMaterialException.java | 7 ++ .../exceptions/NotEnoughWoodException.java | 7 ++ 15 files changed, 193 insertions(+) create mode 100644 build/classes/java/main/task_2/solution/Main.class create mode 100644 build/classes/java/main/task_2/solution/OlivandersShop.class create mode 100644 build/classes/java/main/task_2/solution/Wand.class create mode 100644 build/classes/java/main/task_2/solution/WandOrder.class create mode 100644 build/classes/java/main/task_2/solution/exceptions/NoOrdersException.class create mode 100644 build/classes/java/main/task_2/solution/exceptions/NotEnoughMaterialException.class create mode 100644 build/classes/java/main/task_2/solution/exceptions/NotEnoughWoodException.class create mode 100644 src/main/java/task_2/solution/Main.java create mode 100644 src/main/java/task_2/solution/OlivandersShop.java create mode 100644 src/main/java/task_2/solution/Wand.java create mode 100644 src/main/java/task_2/solution/WandOrder.java create mode 100644 src/main/java/task_2/solution/exceptions/NoOrdersException.java create mode 100644 src/main/java/task_2/solution/exceptions/NotEnoughMaterialException.java create mode 100644 src/main/java/task_2/solution/exceptions/NotEnoughWoodException.java diff --git a/build/classes/java/main/task_2/solution/Main.class b/build/classes/java/main/task_2/solution/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..0cf7e4d256d90b86bd115e7327c0febc62961d32 GIT binary patch literal 2264 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 literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_2/solution/WandOrder.class b/build/classes/java/main/task_2/solution/WandOrder.class new file mode 100644 index 0000000000000000000000000000000000000000..8c83e3d609b246968b971cc425a731c78c8cedd5 GIT binary patch literal 1180 zcmZ`&O-~bH5PsfnVcTW-5CQqHx}rk6trYNs7>tP_n2;dEU@&?yOWD+g?H0FNKaS!- z6G*(OiT}U@7zzdo+&p-C_YbM_ZV3pimw9JqXP)Po$?UJ++j{^;a8p48t|;inRT+IT z^ed2%j3E_=0$rH2Fc}%wWDGE3i%&*>F6|d&9sc80zm>j^*8D$Rtmrg=0*lW{GC3 zI8PFqCoRXEDi`KV_mMGY2cn8O!=5!obFs?K79&LNVw#~d@-*fZjg6VkUuXE;-STe&X|HP~QM~!du9sYw?_^!Xq z*EGJ%D;lrzJ-*2+{<6l`{S|-NU)A`&|IU9)?h3C8vKtJy`4_6AZvQ>i(l`E{?`eD^ zNNy4m1&8hHBI~dE9|(U?g^ETMO=wopf-?+VVQUDcV`w=VXL@eI%z4LBwR>V{3qxR_ z&CwCaR%yJjBuK-M!A#Pmc3@pWpI&`!1wak4Uj#fUDB zE|QTT3H=mhXhTCpev61Zs7kL<;v70D5`U+V$^uV_jRc;MD-jL|U;0Dos0>9$w~QVt zjf;l!L{Xa~ORoT^(>EZmkrN42)d$J;fK{y(9I!H6z(vZ4CH&hQJK5Y7+N{y0PdCTE OonTIcHunZqm;VC#fE_RZ literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_2/solution/exceptions/NoOrdersException.class b/build/classes/java/main/task_2/solution/exceptions/NoOrdersException.class new file mode 100644 index 0000000000000000000000000000000000000000..d21c83d0840962f8e23ce16494d00a91af0997d4 GIT binary patch literal 397 zcmb7AJx{|h5PcWY1VW*ui0*8BsgYP1in<_}qB0b9MQ&;ZLmDI7srXw=NDTY{eiY&y zzJ^YmrSrXa=l4#2|9E`^aE4xjHFRQhW9$&3b5$ufBJ3Sx_hKp1QdC7caYj|e@Nh~9 zFZ5gzI+?2ExL(Ypxe>FHnO>%IQBH+X9)FXeyHl1h$egebx2LJqW$l!%Qu&n2M_<`= ztgp>n8hiOe4GHl=S}Tf1c4ZAhGSRik<(2Zr{S|?Mf6_*X7UASS&V=1Rx8HrRkAVNk x2k~K9&Jm*#^8w${(eVrDnX3RX=cHjYuG7=DIQ7AZ=lw)L~6N{!V-5);!zj0Z^@O=yjwsRs{cSSGM#nIXGFV{g`j z9=&?;KVZ_vhAQ4Y&Hf?dyMPu0_25qC<9X(N-g)L@fBfup0jy#HnrQB4@$^)8LoLJfW2LmOJ>J|9x~3|ADu($uE+%mamy?)8jN$%&d1aV6 zvG->O30%QdhUey!IWz~R8|(*fO`B>rcyGR$ZpM7=!NcHVg z^OtaIuPMfazZ{BxR^Ab|&aVtngA@hsx+O=8yoD^o^2q+id1F}kcN~^5LH|nlF)H*} zsI>?c5TOE0-M-Ty3SSWUOfZ5twTa%;B=s?zAw1U)B|JrlL`dQ+sU~oaPy{Jts80~H Rfa_SK8=58@Cw!i2`WHb;E*Ag* literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_2/solution/exceptions/NotEnoughWoodException.class b/build/classes/java/main/task_2/solution/exceptions/NotEnoughWoodException.class new file mode 100644 index 0000000000000000000000000000000000000000..bb12d2abdb68bb7af18be5ed5e916f26c9b81358 GIT binary patch literal 960 zcmb7DO;1xn6g^W)UoF*Q5l~SqT8wByqb^+3xUhj}QgKlN3l}DG<^0Y4f@33cyk`iG47(JD1 z_E0Km9x+VcDsJ%|p7Xe>=1Rtws+wQgV2BoUMKGj_Qi-+Zc3JrAyzCK^E^3#18{C&6 z?vqhdlL5p1qTxaP<-J^>y{3^`<-{9TG{RMoThnGm>1MUIsdZ)L51(gVxBNjH60tjh5CxzTQxLpz4a$6A}f_`LBb|ATuXZm({DJ*J3l{Q+-H#c< z`}P~D$$}(@Bs{VQ;ReYFhHhH6z05GX&Fi9|mCMbhG&NcUhATq}zd5RU!v%G4HO#;Q zL-yn%Qtjxv=-0gGeU-aL`@0Tq&;hOx?0M&O<;GS2KM&uo285W1`H!3!U`Ty&%fHC@A z!jDm-cSEB?sDKDHVB+?jHc{9|V|XUS>|=LkiR XLWbr9G4r^NYgD00!g0dqsi%Jfg48s9 literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index f7d18d3496abd4637633fc51f06a6820b3c90148..3e66411dc9456e9500fd584f1e2a0df1093b9900 100644 GIT binary patch literal 708 zcmd;P2xrt|(qm?5FG(!UjyGaq=q%39DJ{v&&tqk1WMgPa%u5lNxWH=3U3=YI(%mHt zn$7|_?5-UCoPJz-+}$*Bb(4aKay3{Clb3~fazsYS*744p6u0loPhH;?l2 zAADNe-04;Q;=e$MV2F^Ou$~CiT0<6AQHGYx+*C1!j-te})ST2JfuJ`__qjhSaMXXf zb=eE)1HOu)k$TPHp93xN={9Jf$KX=$_+Y7t4DwdvA@MTm4`Ykh0;M&~{`aj?8i+-KN zB-EPYWUS<>93rR!^aIEl`~vMu9@ag%*!b>EmsBHPMoXxwuaKfZ^xs@N-l@VxizB5) z(tp@~QFB!fm(*Zr$+D`?l(u2k+kP6x8F1%6HZb*79f6X6VYvECYrmFko~T zS~Btr1lAe^_HrDb{>E?Di5(lXr5JU61@#!(6O%JC^HK%WZ%kU5qBzsuz2NAUkmlNG zP6kFs1tvL71_4G!RYqL~IUtu&lYyO)NkNl=L7b790Yob?GO6k^FsMPfnm|Pi47xxa z3=9knKnw>Ba28O45y;`z*E4W6^f&S|);G~N)n{hmVddrHH)CkcN-RqR$}_T?>sk0) zhFj^Iva-pWfkfo2^(?^*1{*zFSGy4V5C?rneGykBy;`ouMT&HJ9)`|}Y<%~oORAACqa~Ermx+&|B{4HkAo_2v z9q&}(qQ#NYBI!SDzwrAq3QX=}loV!WU}WTF0T^k5Ox6Y>=f z5z!abXJKVy7Z77;%}OjwWME)m orders; + private Map woodTypeCount; + private Map coreMaterialCount; + + public OlivandersShop() { + orders = new ArrayList<>(); + woodTypeCount = new HashMap<>(); + coreMaterialCount = new HashMap<>(); + } + public void placeOrder(WandOrder order) throws NotEnoughMaterialException, NotEnoughWoodException { + String woodType = order.getWand().getWoodType(); + int requiredWoodCount = order.getQuantity(); + + if (woodTypeCount.containsKey(woodType)) { + int availableWoodCount = woodTypeCount.get(woodType); + if (availableWoodCount < requiredWoodCount) { + throw new NotEnoughWoodException(woodType); + } + woodTypeCount.put(woodType, availableWoodCount - requiredWoodCount); + } else { + throw new NotEnoughWoodException(woodType); + } + + String coreMaterial = order.getWand().getCoreMaterial(); + int requiredMaterialCount = order.getQuantity(); + + if (coreMaterialCount.containsKey(coreMaterial)) { + int availableMaterialCount = coreMaterialCount.get(coreMaterial); + if (availableMaterialCount < requiredMaterialCount) { + throw new NotEnoughMaterialException(coreMaterial); + } + coreMaterialCount.put(coreMaterial, availableMaterialCount - requiredMaterialCount); + } else { + throw new NotEnoughMaterialException(coreMaterial); + } + + orders.add(order); + } + public Wand findMostPowerfulWand() throws NoOrdersException{ + if (orders.isEmpty()) { + throw new NoOrdersException("Заказы недоступны"); + } + + Wand mostPowerfulWand = orders.get(0).getWand(); + int maxPowerLevel = mostPowerfulWand.getPowerLevel(); + + for (WandOrder order : orders) { + if (order.getWand().getPowerLevel() > maxPowerLevel) { + mostPowerfulWand = order.getWand(); + maxPowerLevel = mostPowerfulWand.getPowerLevel(); + } + } + + return mostPowerfulWand; + } +} diff --git a/src/main/java/task_2/solution/Wand.java b/src/main/java/task_2/solution/Wand.java new file mode 100644 index 0000000..67170c1 --- /dev/null +++ b/src/main/java/task_2/solution/Wand.java @@ -0,0 +1,47 @@ +package task_2.solution; + +import task_2.solution.exceptions.NotEnoughMaterialException; +import task_2.solution.exceptions.NotEnoughWoodException; + +public class Wand { + private String woodType; + private double length; + private String coreMaterial; + private int powerLevel; + + public Wand(String woodType, int length, String coreMaterial, int powerLevel) throws NotEnoughWoodException, + NotEnoughMaterialException { + if (woodType == null || woodType.isEmpty()) { + throw new NotEnoughWoodException("Тип дерева не может быть пустым"); + } + if (length <= 0) { + throw new IllegalArgumentException("Длина должна быть больше 0"); + } + if (coreMaterial == null || coreMaterial.isEmpty()) { + throw new NotEnoughMaterialException("Материал не может быть пустым"); + } + if (powerLevel <= 0) { + throw new IllegalArgumentException("Уровень мощности должен быть больше 0"); + } + this.woodType = woodType; + this.length = length; + this.coreMaterial = coreMaterial; + this.powerLevel = powerLevel; + } + + public String getWoodType() { + return woodType; + } + + public double getLength() { + return length; + } + + public String getCoreMaterial() { + return coreMaterial; + } + + public int getPowerLevel() { + return powerLevel; + } +} diff --git a/src/main/java/task_2/solution/WandOrder.java b/src/main/java/task_2/solution/WandOrder.java new file mode 100644 index 0000000..0194987 --- /dev/null +++ b/src/main/java/task_2/solution/WandOrder.java @@ -0,0 +1,31 @@ +package task_2.solution; + +public class WandOrder { + private String customerName; + private Wand wand; + private int quantity; + public WandOrder(String customerName, Wand wand, int quantity) { + if (customerName == null || customerName.isEmpty()) { + throw new IllegalArgumentException("Имя клиента не может быть пустым"); + } + if (quantity <= 0) { + throw new IllegalArgumentException("Количество должно быть больше 0"); + } + + this.customerName = customerName; + this.wand = wand; + this.quantity = quantity; + } + + public String getCustomerName() { + return customerName; + } + + public Wand getWand() { + return wand; + } + + public int getQuantity() { + return quantity; + } +} diff --git a/src/main/java/task_2/solution/exceptions/NoOrdersException.java b/src/main/java/task_2/solution/exceptions/NoOrdersException.java new file mode 100644 index 0000000..1158b11 --- /dev/null +++ b/src/main/java/task_2/solution/exceptions/NoOrdersException.java @@ -0,0 +1,7 @@ +package task_2.solution.exceptions; + +public class NoOrdersException extends Exception{ + public NoOrdersException(String message) { + super(message); + } +} diff --git a/src/main/java/task_2/solution/exceptions/NotEnoughMaterialException.java b/src/main/java/task_2/solution/exceptions/NotEnoughMaterialException.java new file mode 100644 index 0000000..14230a5 --- /dev/null +++ b/src/main/java/task_2/solution/exceptions/NotEnoughMaterialException.java @@ -0,0 +1,7 @@ +package task_2.solution.exceptions; + +public class NotEnoughMaterialException extends Exception{ + public NotEnoughMaterialException(String material) { + super("Недостаточно материала для сердца палочки: " + material); + } +} diff --git a/src/main/java/task_2/solution/exceptions/NotEnoughWoodException.java b/src/main/java/task_2/solution/exceptions/NotEnoughWoodException.java new file mode 100644 index 0000000..67f3dea --- /dev/null +++ b/src/main/java/task_2/solution/exceptions/NotEnoughWoodException.java @@ -0,0 +1,7 @@ +package task_2.solution.exceptions; + +public class NotEnoughWoodException extends Exception{ + public NotEnoughWoodException(String woodType) { + super("Недостаточно дерева типа " + woodType + " для изготовления палочек."); + } +} From dfe84f11e7bf1e5f9cf6c9d8cf89f1a310d63e91 Mon Sep 17 00:00:00 2001 From: Alim Date: Sat, 21 Oct 2023 17:43:02 +0600 Subject: [PATCH 3/4] task3 --- .../java/main/task_3/solution/Main.class | Bin 0 -> 1789 bytes .../task_3/solution/SimpsonsCharacter.class | Bin 0 -> 1429 bytes .../main/task_3/solution/SimpsonsCourse.class | Bin 0 -> 632 bytes .../main/task_3/solution/SimpsonsGrade.class | Bin 0 -> 905 bytes .../main/task_3/solution/SimpsonsSchool.class | Bin 0 -> 2960 bytes .../compileJava/previous-compilation-data.bin | Bin 708 -> 966 bytes src/main/java/task_3/solution/Main.java | 31 ++++++++++++++ .../task_3/solution/SimpsonsCharacter.java | 40 ++++++++++++++++++ .../java/task_3/solution/SimpsonsCourse.java | 19 +++++++++ .../java/task_3/solution/SimpsonsGrade.java | 25 +++++++++++ .../java/task_3/solution/SimpsonsSchool.java | 33 +++++++++++++++ 11 files changed, 148 insertions(+) create mode 100644 build/classes/java/main/task_3/solution/Main.class create mode 100644 build/classes/java/main/task_3/solution/SimpsonsCharacter.class create mode 100644 build/classes/java/main/task_3/solution/SimpsonsCourse.class create mode 100644 build/classes/java/main/task_3/solution/SimpsonsGrade.class create mode 100644 build/classes/java/main/task_3/solution/SimpsonsSchool.class create mode 100644 src/main/java/task_3/solution/Main.java create mode 100644 src/main/java/task_3/solution/SimpsonsCharacter.java create mode 100644 src/main/java/task_3/solution/SimpsonsCourse.java create mode 100644 src/main/java/task_3/solution/SimpsonsGrade.java create mode 100644 src/main/java/task_3/solution/SimpsonsSchool.java diff --git a/build/classes/java/main/task_3/solution/Main.class b/build/classes/java/main/task_3/solution/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..80cb283a52a703a11d32eddbdc7541910825fec6 GIT binary patch literal 1789 zcma)7-%}e^6#j00>~59?(iCW;wNj`yltR>MtD#m~EI(>OkyI3UXfI(+wrqAYyNlC4 z>5DTy_|Tb7AAHj%pX&p3%8Y-2f0X*&O$q@U2Zq^m?)mZEbG~!$&0l}N_!GcYteY6Y zyE@)8kx=rof%i?M@PUCVI<6Y{(1d}H43rGa^x+ylR)N=*_KDIy)o~+(o0v6m0-u?< zg*hGbIu-=9YmVnc*9DS=iB*BrtiNds43-_wUfOPM*uh=7;nI>T`!(sV%D_?UjxiNA zoKRq-9LaF&-sNKGyW5fDd&P=$ycwc3Dd{h)mmkRQWYLvgy;zL`$E(k%-2{Qpcexf_ z*RD(VMo`~w+Fo?)Va;wSJOw3#I=4Fc3M7Gn&}p_p-wUg?hVQ!qqyMR>dMH8xZpa`K z81ET5+mL~*MRuTqT_==rKT+fV&}aSaAhelaDfIAOE0Eq6%ht(LU>*#b&)#9Q$S0k_TD91pI!ZYd?$pSGF{pUf!_+FszhZWqynI$HnBdF@Aaun&M#Wedlu;aF7}a&vP&km?@K zAFG_66}L}wOlcSY)kk4uH~C`t+hlOKU6bP%mwB%v&cT*Va%0x*sA7kqth0`xLWjNX z7l5}p9>?KSUY3>uayj(jZc_H&4V=R;-$V760FMDq^PA_YNGT}O7k43^#qQVm)!Ih9 zPTlJ0XYdAB8JxwNv@luxh&10&;I};_)^?FB?;*98OK1C1yU;4}LeFN>TrBOuSj%N- zH%qBl@1xl)rDNUFl&(!)%BS+_=jh+Tz~mHlO|1siiXMFjSxQZ7%e0{+qdHQH{ZsjL zlJ?(`E$M$Cm#6XM4u+nw;QM%tCw$A3Pz~Njj$fVSXUL3+F}694ev~kPIb^ZI$om*V zgWeXIdq~E9VADS_`!R`lLTaAk41OgYilh}HJw+cz$+WI0A>uftfnRVQZ*l)&{EWA8 zf&7o*dlaZ8xnqb4T;$JE33W_TOLO;iT%x97iuq$m{KL(39n(4zI#Th!!NOJTLdOX; Ko+2X?c;{d78o*Kj literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_3/solution/SimpsonsCharacter.class b/build/classes/java/main/task_3/solution/SimpsonsCharacter.class new file mode 100644 index 0000000000000000000000000000000000000000..5d8b4b833db424ca7f62b632ac7a0166da3ddfda GIT binary patch literal 1429 zcmah|T~8B16g|@qmX?KDBtDs;oh*yXF4^6h_!s;w zK4@Y?qKQAiA7#8V+rqMx@G^7f&YW}ax%bZBf4}|!*u={`bgXDt%_D`C90p)&c$!Bx zIy{q}HMy+IWkbVr4KElnE8mRS#d+qJeB(%hmeR%IAyoN%8vLg81N z3z+I5qUTCn)eVIu{3ybyG-3D}Mbw6a zr0-7Fn9O)1@^u=dhB&ZgWydaOp(}P(&ZdqDY%+|fIaT6zeV>1k)25?@5r*Nbt2aD2 zp&WILVO+-`hIABA)G>@A!`!XI*9}Mmef1sQ9iNIusJd{3Ir=*~{kJTAGNL6bC7IPu zT)tJ;94T!TBV3 prYHCjmMBCraweJfd=GHcrN@+bnQC^EL`#w^-AZB*$+8mr9!q|8c-&7GRC4?yrs-1C=Zk<5aMasEJ#5k0W1V*Kd4eic>GRQ?|+fY Kf0EZEs`deObaT}J literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_3/solution/SimpsonsGrade.class b/build/classes/java/main/task_3/solution/SimpsonsGrade.class new file mode 100644 index 0000000000000000000000000000000000000000..dd45a0d610c09944d5707fadd5728a465887e3a8 GIT binary patch literal 905 zcmaJp%@=#XUFejc6RUX|J?#O#C{beyscmbZ54J@*e#<|#-2dQi>FEI z3v>pVOuv2o=%#Tv&4M^`FN2%!X&j{|8u3Y>;!R{Cz06Mp_KV>Q5E<2RBCq_R45xGu z=d?Qtq98jKIO`P)Ljmg~zM^_<5JdjP^k(EIU*srcr7?&-84hIWb=yG8(&|N7ufW3D9ncJ-&z% z---!CNis8(s$MC~)dD-kI%AEykpC^NE$1(U^L_@y`7nd&v}dq>YgV1{6;(ksi&{!; zolQ2W_L5a6=cB=j`dZpo=uBY^ohfgVo-J(5on5X9wc`AN@r#K8WmVF}nwGY6z+76e gjZIcm+mFfSQ*v`Dc?;W1$kxv%&YMfguQlq;e@h^_SpWb4 literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_3/solution/SimpsonsSchool.class b/build/classes/java/main/task_3/solution/SimpsonsSchool.class new file mode 100644 index 0000000000000000000000000000000000000000..9a47b8198f3f0d2c17d634653069257e899cb6dc GIT binary patch literal 2960 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 enrolledCourses = new ArrayList<>(); + private Map grades = new HashMap<>(); + + public SimpsonsCharacter(String name, int age, int characterId) { + this.name = name; + this.age = age; + this.characterId = characterId; + } + + public String getName() { + return name; + } + + public int getAge() { + return age; + } + + public int getCharacterId() { + return characterId; + } + + public List getEnrolledCourses() { + return enrolledCourses; + } + + public Map getGrades() { + return grades; + } +} diff --git a/src/main/java/task_3/solution/SimpsonsCourse.java b/src/main/java/task_3/solution/SimpsonsCourse.java new file mode 100644 index 0000000..4a1042e --- /dev/null +++ b/src/main/java/task_3/solution/SimpsonsCourse.java @@ -0,0 +1,19 @@ +package task_3.solution; + +public class SimpsonsCourse { + private String courseName; + private int courseId; + + public SimpsonsCourse(String courseName, int courseId) { + this.courseName = courseName; + this.courseId = courseId; + } + + public String getCourseName() { + return courseName; + } + + public int getCourseId() { + return courseId; + } +} diff --git a/src/main/java/task_3/solution/SimpsonsGrade.java b/src/main/java/task_3/solution/SimpsonsGrade.java new file mode 100644 index 0000000..ebb5a91 --- /dev/null +++ b/src/main/java/task_3/solution/SimpsonsGrade.java @@ -0,0 +1,25 @@ +package task_3.solution; + +public class SimpsonsGrade { + private SimpsonsCourse course; + private SimpsonsCharacter character; + private int gradeValue; + + public SimpsonsGrade(SimpsonsCourse course, SimpsonsCharacter character, int gradeValue) { + this.course = course; + this.character = character; + this.gradeValue = gradeValue; + } + + public SimpsonsCourse getCourse() { + return course; + } + + public SimpsonsCharacter getCharacter() { + return character; + } + + public int getGradeValue() { + return gradeValue; + } +} diff --git a/src/main/java/task_3/solution/SimpsonsSchool.java b/src/main/java/task_3/solution/SimpsonsSchool.java new file mode 100644 index 0000000..56e32cf --- /dev/null +++ b/src/main/java/task_3/solution/SimpsonsSchool.java @@ -0,0 +1,33 @@ +package task_3.solution; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class SimpsonsSchool { + private List characters = new ArrayList<>(); + private List courses = new ArrayList<>(); + private List grades = new ArrayList<>(); + + public void enrollCharacter(SimpsonsCharacter character, List courses){ + character.getEnrolledCourses().addAll(courses); + characters.add(character); + } + + public void addGrade(SimpsonsCharacter character, SimpsonsCourse course, int gradeValue){ + if(gradeValue < 1 || gradeValue > 5){ + throw new IllegalArgumentException("Оценка должна быть между 1 и 5."); + } + SimpsonsGrade grade = new SimpsonsGrade(course, character, gradeValue); + grades.add(grade); + character.getGrades().put(course, gradeValue); + } + + public Map getCharacterTranscript(SimpsonsCharacter character){ + if(!character.getEnrolledCourses().isEmpty()){ + return character.getGrades(); + } else { + throw new IllegalArgumentException(character.getName() + " не записан на курсы."); + } + } +} From 6d941fd49f06e4d135c44aa59a76bce3ee6b758c Mon Sep 17 00:00:00 2001 From: Alim Date: Sat, 21 Oct 2023 18:03:18 +0600 Subject: [PATCH 4/4] task-4 --- build/classes/java/main/task_4/Main.class | Bin 0 -> 1969 bytes .../exception/SecurityBreachException.class | Bin 0 -> 395 bytes .../UnauthorizedAccessAttemptException.class | Bin 0 -> 428 bytes .../main/task_4/solution/AvengersBase.class | Bin 0 -> 2007 bytes .../java/main/task_4/solution/Hero.class | Bin 0 -> 456 bytes .../compileJava/previous-compilation-data.bin | Bin 966 -> 1337 bytes src/main/java/task_4/Main.java | 25 ++++++++++++++++++ .../exception/SecurityBreachException.java | 7 +++++ .../UnauthorizedAccessAttemptException.java | 7 +++++ .../java/task_4/solution/AvengersBase.java | 22 +++++++++++++++ src/main/java/task_4/solution/Hero.java | 13 +++++++++ 11 files changed, 74 insertions(+) create mode 100644 build/classes/java/main/task_4/Main.class create mode 100644 build/classes/java/main/task_4/exception/SecurityBreachException.class create mode 100644 build/classes/java/main/task_4/exception/UnauthorizedAccessAttemptException.class create mode 100644 build/classes/java/main/task_4/solution/AvengersBase.class create mode 100644 build/classes/java/main/task_4/solution/Hero.class create mode 100644 src/main/java/task_4/Main.java create mode 100644 src/main/java/task_4/exception/SecurityBreachException.java create mode 100644 src/main/java/task_4/exception/UnauthorizedAccessAttemptException.java create mode 100644 src/main/java/task_4/solution/AvengersBase.java create mode 100644 src/main/java/task_4/solution/Hero.java diff --git a/build/classes/java/main/task_4/Main.class b/build/classes/java/main/task_4/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..b0213502c54d78de70a5edbae556560adeeca66a GIT binary patch literal 1969 zcmah~T~`xF7=DJY4a@Rjh*B-p)FKUErV85DP$~ow+XSsaD7CF;Sf*i3vYWFz;YhD+ z{R_S5Kk!y^5P12EhX2LZF1A{7`ii(dxd*b z$t<_*6a^{K%y1%cH*=qF@nn(P`D9MImYq+jB<(gYi3?Mi0%z15=cPxH(}~TuW}xxq_RU*ADgMa;eey zj?F7_({Zhz#m1~@3eTIBQk2Rv?AONKJhk56q(uTGC%IY3@^T#~J?B(hQ!H2t$xemR zc?FDt6BuBK)zLeG0-<=_tw?1uPwR|Ruowp4whZ@g;2IV*TsN?Y8w|;~|C@hM{iXVA z^^yNF?!T-)^q>2GDuw^Vf9CI#^dj#6QGHl_q-+d)g|9Va3}jWtskhu;_|IR*sD%wj z+4m3pJ^wF;M7_dyLT_LRHyQfo97lT6<>jm(%s0H=4%~|18w0nIW0-6R_wK`qV40z- z?x?V)EN^IdbN#+BCByMVb8dDDTMDt@DdR%nirC2=n6USn3WQxA^J@JM}{V~HL8exL0?BxF=%C#xJZ5Llru~G<$2;= zEHTm;L&qJ^jf@>$koaqk#~H&wi5EoLu}v;lExAc6Px7Gf;b!nPhG#evKCpQ0I)#&H zSXF0zmtpA5AzAj8QxNqhqn3Yxo6>Q&HT*ztR>pA(6}suh4ciuOy2w3G5SqV-i>k+{ z(Q1*~8%5y_)f`ieg@!ao9GADtqKSF<*4G%73WHk@k>&XOXf;YWsZ4gEE%jb6F` zx5I~s(WgNDwa`OOF9?nAk(8vF(cC_|3-&bFK1pLopp4)Yt&N%i-p3$Go%jH!Nkh); z6x!$qc`pAg_MR({7H|D}===q3{#6p<0}whIL%V8N{iz7{YW8V2W6Rx+2$DsUdZc;~@B1Oh^p;0DctW z9KHsG#92Dud%k<` z9*(UNa(4Q~j|lNx)wL*E$zLlFlDulHRA<_oZvP>(?+3dG(IE`}>rL4B@%!EgI|%rP yd=MX&?Gav9B4fmcvk6Z7(6ueY>m2JADtI4KpHX{BjPl5-3fImun z8@~=71mD8jH?zaMVPD^#UjQ7V8(|Ke5Gx^83Bifd%JvEC+sTc%6LBtd77wjaI_vF> z2>xj~k%Ug7w7jT`u{4)roHNr+%2ebdVU)w4q;IFHA{-@FRJYfMvAj>^%&JnyS6b9| zS{n5rCxbMVRW-0y7BhSHCFv2uf_afO?!VFyqG4H^RGurhf9r3@edp1Jj~3zJABhNS zKPkR*ViO*Jp)2CU?%V@LedayBgWbI+&?8SCLhez+wpbTnp7F+q3Jd(=D!?Mzjn@(* G56kb3jc)t^ literal 0 HcmV?d00001 diff --git a/build/classes/java/main/task_4/solution/AvengersBase.class b/build/classes/java/main/task_4/solution/AvengersBase.class new file mode 100644 index 0000000000000000000000000000000000000000..e10bcf002f1dddc45c148c53d0b55e3f4d50a58b GIT binary patch literal 2007 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 literal 966 zcmWe&aApi<(qqcFD)ug z6|nuzBp5pBvGR{~8d)r#{|0h8GjcI>W+WCRCYPiZ31rAH7V;(SIQINQoKBGPyocPb zJR!Uxe0uzP0#GXqS=j^`S~7D}g&5k363bF^gc&+3l2Z#nRtmH)d06-4V&l6vT~dvF z87-kA!J__Rdg6K#P|ZfHY?2IJIhkdNc`2zy#Zn9{8TkbQYYhT>IgU?%sRHUZCap|SoN4b~aCA#Zb8WP2FryqpTXIHzevSaM%B8OBipO3l z^(;->{p_Z=e7KkbLkrMsfr$&OmfW@1y(QgU!l3CakfZ3Ts^Nz6Q`IAm<1R=*{oAd6bv`;M3yfPOs`0|20E+wHP|U-UJ3t(3_?E+@BRV>c8B& z?1l6KW^Gp;UtL!{KNWq3=KK-^hPJ%?()0{NhK@vFP-Z6P2n*~wC}!(7Y09MPPcs|m z&sx`P)|J=l#(UhUJC^02fK!m^Ue(;7hPflIB znDpxDpI9@0d2^r?(1ij8!Ow-~_H&1=w!N@xt77R{3tur~fopd+=>L4TFZy*7lTd4p zld+{QpRqvn-&{N1slr8zBc(;sf7pJpaZD zcjlF6WVB#16JgL~WVB?IW?*1sG-8r9Vc>+)We)Hl2RrCH>a(!2v2!>v zv}PriB?4s_8JzW8TwVR${M_|D^gZ<@Sk>6nHH4i&Qi@)B-r+v_o@@$WuDq|FU$DQw zkE9fsD-xg==o=IgtRJE;08FkjU_t3ny)f7C@CesPpm_#15Ob`e^rBs3d?O4YT18|HbAhEebM$gUg0#SF%{;w)cY9MX+XNH<3;=JJ5