From 1989ff4319fe050d52d33854f852c86df6977322 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Tue, 12 May 2020 20:10:12 +0300 Subject: [PATCH 1/4] first lesson is done --- .../Contents.swift | 54 ++++++++++++++++++ .../contents.xcplayground | 4 ++ .../contents.xcworkspacedata | 7 +++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 +++ .../UserInterfaceState.xcuserstate | Bin 0 -> 10546 bytes .../timeline.xctimeline | 11 ++++ 6 files changed, 84 insertions(+) create mode 100644 1l_ChukarkovKonstantin.playground/Contents.swift create mode 100644 1l_ChukarkovKonstantin.playground/contents.xcplayground create mode 100644 1l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 1l_ChukarkovKonstantin.playground/timeline.xctimeline diff --git a/1l_ChukarkovKonstantin.playground/Contents.swift b/1l_ChukarkovKonstantin.playground/Contents.swift new file mode 100644 index 0000000..5f25580 --- /dev/null +++ b/1l_ChukarkovKonstantin.playground/Contents.swift @@ -0,0 +1,54 @@ +import UIKit + +// 1) квадратное уравнение вида: ax^2+bx+c=0. + +func radicalEquation(a: Double, b: Double, c: Double){ + let a: Double = a + let b: Double = b + let c: Double = c + let discriminant = (b*b)-(4*a*c) + + if a == 0 { + let radical: Double = (-1*c)/b + print("У уравнения один корень и он равен \(radical)") + }else if discriminant < 0 { + print("У уравнения корней нет") + }else if discriminant == 0 { + let radical = (-1*b)/(2*a) + print("У вашего уравнения один корень и он равен \(radical)") + }else if discriminant > 0 { + let radicalOne: Double = ((-1*b)+sqrt(discriminant)/(2*a)) + let radicalTwo: Double = ((-1*b)-sqrt(discriminant)/(2*a)) + print("У вашего уравнения 2 корня \(radicalOne) и \(radicalTwo)") + } +} +radicalEquation(a: 1, b: -8, c: 15) + +// 2) Прямоугольный треугольник, где а и b его катеты. + +func rightTriangle(a: Double, b: Double){ + let a: Double = a + let b: Double = b + let square: Double = a*b/2 + let c: Double = sqrt((a*a)+(b*b)) + let p: Double = a+b+c + print("Плошадь треугольника равна \(square), длина гипотенузы равна \(c), периметр треуголька равен \(p)") +} +rightTriangle(a: 3, b: 4) + +// 3) Вклад на n лет, под percent процентов годовых от sum суммы. + +func vklad(sum: Double, percent: Double, n: Int){ + var sum: Double = sum + let percent = percent + let n: Int = n + var i: Int = 1 + while i <= n { + let totalPercent: Double = 1+(percent/100) + sum = sum*totalPercent + i += 1 + } + sum = (sum*100).rounded(.toNearestOrAwayFromZero)/100 + print("Сумма вклада через \(n) лет равна \(sum)") +} +vklad(sum: 10000, percent: 13, n: 5) diff --git a/1l_ChukarkovKonstantin.playground/contents.xcplayground b/1l_ChukarkovKonstantin.playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/1l_ChukarkovKonstantin.playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/1l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..9f607b6c3023dbc3303a93918180dbfa98ab6932 GIT binary patch literal 10546 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 R5>n|eH!fTZN`Dj9{14IAL~j59 literal 0 HcmV?d00001 diff --git a/1l_ChukarkovKonstantin.playground/timeline.xctimeline b/1l_ChukarkovKonstantin.playground/timeline.xctimeline new file mode 100644 index 0000000..2eb794f --- /dev/null +++ b/1l_ChukarkovKonstantin.playground/timeline.xctimeline @@ -0,0 +1,11 @@ + + + + + + + From faa359b7fb190ce49f2bc5c222c79bd76ebfeeb4 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Fri, 15 May 2020 22:32:25 +0300 Subject: [PATCH 2/4] modified --- .../UserInterfaceState.xcuserstate | Bin 10546 -> 11589 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate b/1l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate index 9f607b6c3023dbc3303a93918180dbfa98ab6932..47c998ecc7a07d4099aba4204b73043f103bad82 100644 GIT binary patch delta 4052 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 delta 3553 zcmZ`*33$}h7S27HG?_^1p@p)P)|OI0T1vrI!MT+J zf{IEIMTFNy0WAo$hzKbA>H`EsL9k_~Y?Z}@=lU{*%6rf6O}@Ev@3|-U`_F&=bIiE<=&X#KZAO+^)g132II#<-}a#C1M_KfunKDa@2xoj#}ao zI2NZ^5xf@P8pZ$3r@igd5s$KcM&r1LU>hgQK1l>W)>3{wT3`)ye<{3zbMX{B9>0oT z!ISaJRWX9k&ifJ~3N1zN;+ZxR!3X0aJR8rkXLIrVs#MP%6q(Sb{wTsDHK5&x4iZWk z+K&$4m+(9*$6Ju{6*`gXk!@OfXJqH+^OX|6;NRzmDUN)f0T4C@x1A&_#3!zkwIww;mE&i*Edl ztebYM-{XaLY!;5Q&N(D&za$zzpnHGw{FhDZulP-y*2UI6DKZiWaQv?mQ1!>X9X!tJ zBP;H70CfCs;emsykKjBW}<5Ya0k6dFMogo6qi=y*B)2QI;-xD1!$ z_f~>IM1e^}*<%xk!tdMXuCTv@@fy6=5`1@r*3gzvN}&y2Sqkm&D$Ap2Vn^s~^8%gl z2c_@`{t(Aox13>t2YG_7&^?H#8zkTgyt)h$?8$2TiBC?pwX$b#`zO+$wwkeXM`XmlO|AJ^*vCcwnegAxZ$%TG(6l-VmSKdsz0O(Nb& z8k87ZH6WP`(}?I5kOR3e1@d4jXLuXlj&I^R zJEifdp77-C$r(A%cF)U8o1B&TOy=bLU=dq2D(+Vdb8OIrh@lkb;?Ex_4dxTY^+p?e zP`b=jcRzM{YT>&d$6?_06LItdbHSiIvg>|qV@3qe9 za%=@u1@&U{35z+rzDdNGA0f{1gOt9d5u) zsDtm}7TktAa2I}nAMv;NG(LmB!_~M3pT+0!d3*t1tbm{IV})PgH}rP!;voqe>!k-+ zui)AT7ti$utfXLLB|Z4^1FWQEW7V66lPaOul5Ef@89|!$*vUv6`_(eikGA1!mKYV* zxEXP<1b2IoAu^hbt&fF_v17UMAAYUd-B)EWvt$S2U>V9FJK2}y_x8IF6Ge8ZPt>i4 ziRu~X3H>1n#@J0Q7pB>IE3_LMwwqe9ov)p6#O_sR;XGV~%XYuIW|Q?R{0@JT$nIQ} z-L;%{#|kG$lEvg&@+f)J!8lAuE61abE{<-F?v9?0-j2SGp^hZSa7T(`lw*uztRvl# z>zL)JbnJ1QbX<4b3s62PlnSF%N~a9Uq#9FER5Pjt)sl*(;;1&%AZjo*gc?dEQNyVe zY7{kw8cU^98PqsxJT-xuM3qvzsgu-&kdP2Lq*+LpkO3iiA#a9MgzO5b3%Ny8w3qhL zp>#N{(Ghf8`cXQ8?m_pW`_PGW3O$M*LkGsvS#&l%k$#5Gp=Z+b>1FgvdKJB%-c0YI z57VdVv-DN^C;E5#PX;k0<6=0*&3G6u(}am-IxxMN0nAWlG&7ZXj+w#CW0o=Nm`Y{? z^BHr1Im~>^Tw!XNtITyL;gppIbENZC=VIrQfODyHne#*E$IdOz z&z#$wJDlG-FSx)(yPCSRCt zW{0yWY!;i#=CS$gbhdykVrQ|l*}3dI_GNYvyPW-i-N7DazhO_Yr`hk=8n%|b#@=A- z*jwx!F5ux}xxrjEH-VeV<#W@yS==1%CGKVJRqi#eoLk3LaUXM=xXs*F?n~|zSIwQ} z&T|*J+uS|w7w$Li51!&_-pR8(&nvva$MEg=_IyXaGoQfs;Cu0X_+~xZsmU5J=u-j z%iWdk&)sL-)$X(I^X`l8%kEnDHTMkx38X*?wBQt2K^8)VFhLcX3(-Q1&`Rhl3>HQU zsY06Yw2&(l2*tu2;U!_dU)29@Ep+Gul(+DfjI2Tonbeoj63CA}$n{ip#|ku}rKGH;5a> zP2y&8tN6LNT|6Wn7LSNW#cJ__cuBk>-Vp1=TjCw@4=?Zac*DG^w|T%D>y7ia@pkZb z@;>5y%-h5JlsCmY-&^io?cL?w@2&CHN`yp7x)d$NN^w$KDPHOzb(8u?{iMgG0n#98 zq?9gYNaLjOQjRo5nkr3`o|WcHmQ*6Gls=Fuq&3n8X`{4B+AM9A4ob(Rv(gpms&rkt zDg7Y*Bn9qCzevByf~?7=+*pp1qvaU6mE2nHC1=U=<+tP&@+$d5dA0nJyiTr^H^{r> zJ@P*Jfc%AgNIoJTm5i+v3~r`@(m~_oeTc?7hKS3{i$E$;t?2q%vN~RwgKultN{O@`6&N z%u;463l&RQq%2m-l@-b=r9xSwtW}OHXO!=h8l_gbr5dWKMys9FZfYMjQ5~zMs~PGz zb-X%3oun43&#N=lfLf%^QfI4k)%Vnm>T&gwMrfg06RnvRXraYut+du!XYDbqtCpbk z*9K^Vw87eFZLF5AWolVkwzfoDp;c&Ww6)p>ZKJkH+pO)=4rpI!hjd+!*1PLH_1=14 zy}$m1K2U#Be@ai(hv~`sWIb2U)ARM|dV&6&K0|*&$NGzUu|7vH*LUidBbbPoh(Upf z{D`+BK8g4`;%9>}NP{wH!()UQs-YW(VH%B%)<%1yqtV&uY9tsvj9x~fG0GTYOf+(h zJR{#IG@dtR8UbU0vDBzEHW(X?O~z(ptMR$9-PmdDHuf6(jT+;ealyD`TrsX1*NvOT z_r`7GuJNPsbEF&@Xcw6rSs1x2a$Dpj(`hz0`yPud@pttn_ Date: Fri, 15 May 2020 22:32:55 +0300 Subject: [PATCH 3/4] modified --- .DS_Store | Bin 0 -> 6148 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..d842d298c1ea3e3743412e800b82c82be7219609 GIT binary patch literal 6148 zcmeHKJxc>Y5PhR5A~q>4*Ul;sTbnap3K1Lq0h$j`@yv-D!S28x=g-nNJEJ6er3mT_ z?7YeDeC$5R?hODLE@lIu2cXNLC~CBbPPZ^#v1Hr%t1A0Fs z4#mQ;G0ay7Rc--@9ZqMVt-XZCB*((BG2{wGER<-W;w^?)IOmi56^@Oeg+sjg5U>2+ zyhyIj{3*Lb3d7LBKrpb%fcCzWp1%Jh{$*O5{Ol4c7zhUbDg)9fPs<@s=WpwmbLv~0 vIL~DWe-eh literal 0 HcmV?d00001 From 63208d08eddcef9951cfce082f594f5caa29349e Mon Sep 17 00:00:00 2001 From: Konstantin Date: Fri, 15 May 2020 22:36:59 +0300 Subject: [PATCH 4/4] added task in the second lesson --- .DS_Store | Bin 6148 -> 6148 bytes .../Contents.swift | 92 ++++++++++++++++++ .../contents.xcplayground | 4 + .../contents.xcworkspacedata | 7 ++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 10554 bytes .../timeline.xctimeline | 21 ++++ 7 files changed, 132 insertions(+) create mode 100644 2l_ChukarkovKonstantin.playground/Contents.swift create mode 100644 2l_ChukarkovKonstantin.playground/contents.xcplayground create mode 100644 2l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 2l_ChukarkovKonstantin.playground/timeline.xctimeline diff --git a/.DS_Store b/.DS_Store index d842d298c1ea3e3743412e800b82c82be7219609..1e2f90ab9d97bf3eb13ab5842da9c8489aff4da3 100644 GIT binary patch delta 18 ZcmZoMXffDun344e0|SG_<`axIVgNgg1*`x7 delta 18 ZcmZoMXffDun34530|P_z<`axIVgNmC1^NI0 diff --git a/2l_ChukarkovKonstantin.playground/Contents.swift b/2l_ChukarkovKonstantin.playground/Contents.swift new file mode 100644 index 0000000..dbcf1c6 --- /dev/null +++ b/2l_ChukarkovKonstantin.playground/Contents.swift @@ -0,0 +1,92 @@ +import UIKit + +// 1-2) Определение делится ли число a на число b без остатка. Через bool сделал для решения одного вариант из 4 задания. + + +func evenOdd (a: Int, b: Int) -> Bool { + let a = a + let b = b + let c = a%b + if c == 0{ + return true + } else { + return false + } +} + +// Проверка 1-ого задания + +var a = 9 +var b = 2 + +if (evenOdd(a: a, b: b)) == true { + print("Число \(a) четное!") +} else { + print("Число \(a) нечетное!") +} + +// Проверка 2-ого задания + +a = 11 +b = 3 + +if (evenOdd(a: a, b: b)) == true { + print("Число \(a) кратно \(b)") +} else { + print("Число \(a) не делится на \(b) без остатка") +} + + +// 3) Возрастающий массив до 100. + +var upArray = Array (1...100) +print(upArray) + +// 4) Удаление из массива всех четных чисел и всех, которые не делятся на 3. + + + +var newArray = [Int]() +for _ in upArray{ + let i = upArray.removeFirst() + if evenOdd(a: i, b: 2) == false { + newArray.append(i) + } +} +for _ in newArray{ + let i = newArray.removeFirst() + if evenOdd(a: i, b: 3) == true { + upArray.append(i) + } +} +print(upArray) +// 4) Короткий вариант удаления нужных чисел. + +upArray = Array (1...100) +upArray = upArray.filter(){$0 % 2 != 0 && $0 % 3 == 0} +print(upArray) + +// 5) Функция добавляющая в массив новое число Фибаначи. Добавляет n-элементов( оставил пока n = 15 что бы не грузить cильно при проверках следющего кода) + +func fib (n: Int) -> [Double] { + var fibonacciArray: [Double] = [1, 1] + (2...n).forEach {i in fibonacciArray.append(fibonacciArray[i-1] + fibonacciArray[i-2])} + return fibonacciArray +} +print(fib(n: 100)) + +// 6) Функция выдает массив из простых чисел вплоть до числа n. + + +func eratos (nArray: [Int]) -> [Int]{ + var er = [Int]() + var newArr = nArray + while let p = newArr.first { + er.append(p) + newArr = newArr.filter(){$0 % p != 0} + } + return er +} +print(eratos(nArray: Array(2...100))) + + diff --git a/2l_ChukarkovKonstantin.playground/contents.xcplayground b/2l_ChukarkovKonstantin.playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/2l_ChukarkovKonstantin.playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/2l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata b/2l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/2l_ChukarkovKonstantin.playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate b/2l_ChukarkovKonstantin.playground/playground.xcworkspace/xcuserdata/konstantin.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..1a04810d3a38da08c3d62727ed79cdad15b4a0e4 GIT binary patch literal 10554 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 + + + + + + + + + +