From 454ccb8760c9ba1740a649b88a2e28174ef78b38 Mon Sep 17 00:00:00 2001 From: Natalie Polk Date: Thu, 26 May 2016 10:46:24 -0400 Subject: [PATCH] initial commit --- pre-work.playground/Contents.swift | 83 ++++++++++++++++++ pre-work.playground/contents.xcplayground | 4 + .../contents.xcworkspacedata | 7 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 10348 bytes 4 files changed, 94 insertions(+) create mode 100644 pre-work.playground/Contents.swift create mode 100644 pre-work.playground/contents.xcplayground create mode 100644 pre-work.playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 pre-work.playground/playground.xcworkspace/xcuserdata/serenemirza.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/pre-work.playground/Contents.swift b/pre-work.playground/Contents.swift new file mode 100644 index 0000000..fcd684e --- /dev/null +++ b/pre-work.playground/Contents.swift @@ -0,0 +1,83 @@ +/* Natalie Polk + * May 19, 2016 + * i_X iOS Development S1 + * Code Challenge + */ + + + + +import UIKit + + +/* ----------------------- Challenge 1 (1 star) ------------------------ */ + +func swaps(inout a:T, inout with b:T) { + (a, b) = (b, a) +} + +var a = "Natalie", b = "Polk" +swaps(&a, with: &b) +[a, b] + + + +/* ----------------------- Challenge 2 (2 stars) ----------------------- */ + +func flexStrings(s1:String = "", s2:String = "") -> String { + if s1.isEmpty && s2.isEmpty { + return "none" + } + else { + return s1+s2 + } +} + +flexStrings() //--> "none" +flexStrings("One") //--> "One" +flexStrings("One", s2: "Two") //--> "OneTwo" + + + +/* ----------------------- Challenge 3 (3 stars) ----------------------- */ + +func sumAny(a:Any...) -> String { + var sum = 0; + for this in a { + switch this { + case let someInt as Int : + if someInt == 0 { + sum = sum-10 + } + else { + sum = sum+someInt + } + case let someString as String : + if someString.isEmpty { + sum-=10 + } + else if Int(someString) != nil && Int(someString) >= 0 { + sum += Int(someString)! + } + default : break + } + } + return String(sum) +} + +let resultEmpty = sumAny() //--> "0" +let result1 = sumAny(Double(), 10, "-10", 2) //--> "12" +let result2 = sumAny("Marin Todorov", 2, 22, "-3", "10", "", 0, 33, -5) //--> "42" + + + +/* ----------------------- Challenge 4 (3 stars) ----------------------- */ + +func countFrom(from:Int, to: Int) { + if from <= to { + print(from) + countFrom(from+1, to: to) + } +} + +countFrom(1, to: 7) diff --git a/pre-work.playground/contents.xcplayground b/pre-work.playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/pre-work.playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/pre-work.playground/playground.xcworkspace/contents.xcworkspacedata b/pre-work.playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/pre-work.playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/pre-work.playground/playground.xcworkspace/xcuserdata/serenemirza.xcuserdatad/UserInterfaceState.xcuserstate b/pre-work.playground/playground.xcworkspace/xcuserdata/serenemirza.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..551b8ec3338b00a6df16e48da47032e9089e57cf GIT binary patch literal 10348 zcmd5?2Urx>x4&iUY-M2kvb!i?rHg=?D2Od85&=a~ae)C>VVCSKDk||1W12BWV~i#- z3Rq%H?_E=kNlc6;n%+$B#Wd62ogH=oW8OdS|K9h$Kl6RNvvcn~_sl83Q!X{ljlNJg zGxKGH5kVBmkQ^!KPP(fyd9e@-`2zmR+2@OC4(I7M!4M9Uu8cIjSXdD`kCZLIE5;_M>MpMvKRD!0VQZxh2L~~Fb z5>P#AKnsu`Ek;Ywa&$hr1YL?QLu*h6>O@^=2il2tq21_4vCM_-`t(2wXR^gE_ljSbj>t=NW>a6jB155Yrm z8lHeB;z{@%JQ+{HQ*jBNhD-6ecsibqtMD8=7Yn!^H{kPd5QlIWFU6PPHTZJ87GHta z;Vbcaya8{*+wo4k7vGF;!FS=i@jduHd_R5^@5B4?llU2Y5Wk3z;A8kWeh+_$f5JZ# z1yK?eQ4@}6h?eMxo*0OUn2DWuND@gQsbnx2LWYt|GK}Psk))7JCR4~%QbMMaIwFvI z(m)mvA6ZBikw&tNEGH{S8#$k>BtY891>_QPDOpR_lMUo5at+x`wvcPd4WyHFk=w}a zR9<8SHsh8H!2D*rzM_XwdJ)d4q*U~HK zI=YqKK)2EDw1aliF1n*4+27LGcoeA-hcrlw42YjuQkK3*XbsI~-`&H19H!XAg*u1o1Mfu~?in21Z({i)2^M_~UW@nGh zDXumqOe!8XGZ0)9YWCI&#ev$ECcz($?rcUbl)4*PkQLdG9XXH_C4w9jpad1DfdkEM zFUnVVKv zl$D=0EN5(CT0v1kW?EtP@Z7Ai`9<0J!^Y1Om;3y6fhFUE-X@{in8Y4T3)Trip)SUD zAF`opKKYY`^ZvDfs~`xqNWH=ABq8)j~MW{TBDTa1hHK%lY48=MrH z;S2d{8W}^@o-uDtQLmw>5HnB#O5KApQ5MQZIcONlMZ-}Z$_E|j!2m{x10Lcb0Ze<) z2$X_Gp|jB0Xf(SkL`7g`Vzhz{QlW(1Rl+PtsbV{_SDxan5gMzFM)s?0L10OVcd@U* z8xF7+G8cwI46?lb@VGi3dlH)BZ4I=9tBq+QuTf?9ky=IA*XRqk76t`x8N<8q44<$> zq8+0vj-4jkJ|v2Tkgvgi1_~l~5`CW#5*5mpjrTPQrQYy@x$LLJq(nZxIVhwpVJxOM zH+owef`Jx)oyy42OLB#CQ5j0@K-0nAfy%)l8dzNMjPe-Elfpt%=t#tCDp6G@nuTVA z6Z%1Nl)zjxAMu@N9;${!aCIUtssT56AZacm)7vPF?6)X{son;^FWgcml=dHU{&pn( z9YH>{5G_KDvn2=gGsCQuZiUdClCokSGp2yw8*J@lvzjVP%BDraLzIUA3ZBM8nDNjb zlKPMF_ugSCYMob7Hnk<}WrkK540>C;&{DJvH8CuR{FE43f!eB#@v(_LyLX`#;{MTX zSE5xYwF?1iM;E{V7zl&9(1mCvJD`oUUs1zLx$MC;K8bQRi&u7)8n6w)9a zG9VMOARBV_Fx%gZwxDa-_w{Hi``pHCe;DLK9{bLR0`@sVZCUmmxgQZIbccjBeQu!zKORhHhs@)oli4LbwavhVDR36(wcthcx}J?&)H*xEEDzhh*vb z1HGO<9J&7==xaYZfKqp%$I#>G3G^h>+S70roDHL44AWQPF7ymK$TX9Jo=1nE2qrO| zSYR?t5%nSlm6&8jmn;toOqwDt$1JDMc#%*a2nsQ|NzCCb~OR!c5MQ47AzK(7C4V(i> z(Sh&LNtC*MyC^$jk5xphqb)k;XLKsI_*aTNQqbl z=1^4^)?h8xK`E5Mj2Jp%BaZKlOgI6X;9Qt4ibo7HG2Mw+-G5B;7!eJl*o^HsvCm=` zc0)N-Flc2GWH|%Zn2^po`Q6wX(t6t$GDxGvZ0;TT788{PX;cT3Phv8g29OvPDTmZA73g*CE zm1oaIsL+(jdOFC_NFABndL#njsY( z((kgCnkGhiw)87P&S(^;N7gq8K}l+H(VwwM$$+4Hr&5t#D9mtcy1>L0VmDqfeswci z8jHg*mS(d@ET8D*P`C`wU_OA$aRt;vLnoezD`5fnAZ2c3$I?K^C(^7orbwK2XC!~O zcfZlS3~L_tinOcod{_vJI&lrIg+^EhDYFVi)c1SCLitp$&mUFn0^ErBF6_e#@gisf zKLomP6B>mB(99IHRNYyDuzP>7CF;4PXHX^1*C6N@`7WJ1i zj5(rXc*05nG$rvx}G&MrJfImG(Rq<0}i)OQ+RG*Y=FT zYFGi60)h)A>385AowyTsK^p+9iZZne-^kDq?}qa`@M(ps*SEQ zV1{R4xvxoR^!bHBQF6E9+eLD>L3;vPenUysJg01Q05n)Nu zeHp&DQ_Sh&SN}_g>i{KKtxY{^)|_eQwGkKxCerdcW+6?#-*o%jjVbmk#xCEJqobl1zYJGEa-U>vSRPB(@-m0FMME=w6~Flx#CeM$ z&O2}=L!28SNuu{Y-qC?i!1^AW{0M*bFHzxZ{0;sVf5)zq_y^bkSHV{3VAn3#E!wc9 zk016_O;J1j1^^xEeOWHL!UnK?I`|LWvBvz_l!NT?f~T=x8ks z`kGkz5|yWD`w_!qU4_$zx|8g&3%o%uD-43uz5WJa?nLGag^i8TvcXzd%aWiFGyOup zKOjYynZ7#F&r?pL7fsgs5@c5SQ^BB<+YVGM&mA^wsE4&Na@zWj@kR0oG;4WQ?ywv& zlkNpK#7N@sRuWGVUJ%{Nxlf670}Q@3Se(6Z6%|~+2X)_SkysA!_7SdMPxj4GcuMGlW}kh z+zPjKkqJx_li+qH_!s^k0y~)|zFjHY5p!WuMyi+#lX6l)W{{brlFTBr;ZC>v=fzpBLEw1)z{75@LWt{3Jk{$$2CQ55dFm z2s{e=c9Jk@i2%w{*bk3I0Oj%jSU@Q{`di^w3{Y}JK*`F@YpYzIo0)YwjI1ITG8nmt zTnq={DF!1?!ZZIaj9ez#&Kh_+1|#GO5k}xZAJq7Zr*DjS`m>U!kN$g4kJdiX^yN&o zPeu%!{w+t}7;*GxB}d;TzRq@d@n1Un4zdTO?jSqKF0z~42rt1AI0`TCAUBb{Ar>qk-OPap&%7Dk#0=1I~l7+x&s}#n>-+Ha}T+f+(+(* zV{jZ^h1Yhl4#g<)FiK|DXoc5VmBwPGV}>{A6VqkZ#ub)CIzH3AOQh<*+Gy`P+MV#1 z)ds|lkf+aJWO*RSsx}Gadi4&a)eEf^gqc_c(=QvC&yT?lN=|n!h7&RtmGhXkhgmm z*5n=XF1!yXASov2{$p1E+`AShACgb{Ecujt1|Pylkkq3QR`*L`H_Fr3*=M+_R;23>ON~fRv=HdYBKnqkRe_){TDh~GPQh<*vR67p z2hqVIj?pyu1%8O&*v}Dzq#4YOX(s#_LnWFML8YJmF)H*$z63&Zbo;xgE>fv7(*z=pyK3mAaaJQ!iGTFlaGEQ*!B4i#@S-cX6cIk%mBM zd>|-IPbgvyq(#jEpFbRmoN%!Uv`*4St>}t1tj%zUH5ZblXA4-pgLLflE_z%-8>wGR z#ZJPm4jO33s#q>YgS3S;Wk?MT!=ZMp?xc(9l6I_V#|Ad1r|_aH#E{XBx&O-~HR`u3 z>1vdE=1hcML@yRI5qeoW*0!@wCo68+u^v*yQi4T(e&HD-f0Xi-l$}-Vr0eMhdKKMB zuWrZ2b{yA^`F0%NjuUp$Yv|?(c}CRKj>SVdb{9GD{EsZ2imv`_{Gv+nxS=4gpeNB` z231lvS!fmNBv=uGFVWrf#)^m;0cQWSU_<@bzbfRigUQh(L|R!QbOk#!-_C;hZnB5m z$_~x%ViEUE@;yb=K;sycniz)KsDmcbq3kd`lO2Z-V+Z2-bObvPZ=;vf+vz(pEK8K- z%f`tnWwT{-WbjNKY@KYqY^&^c*+JPa za;y=k2uU1~8+@ic&`GoSg@^j@W6|YKF6{%*b{Hi6YrK)ABRjMmh z*QmCtcByu&_NeYu-KDxm^{8r}>M_-`s^?UPRNtt6S95BuTCX;$d3A!?tnRN)Q4dfL zQV&t5sWa4B>WS(l>P_kg)z7P6Q@^QxTm7E;g!)7EPn?WXa%xV?={X~3<5IaHTpE|b z4daG$`P>L@BsZ2T<;u7Uu9BP0&Eb69LT(Y)!~wUKyOP_$UCmv?ZQ*utd$_&at=#S0 zo!ma|aqda(0C$jkj(eGVgL{j6hkK7Z!F|L1!2QJi!u_E^8lsVDEEz(Tcca6Tc_Ko+oap9yH>YDw?}uc?h)NS-DA2ZbkFLZ z*S(-StUIFnLvPln>+|#@^rQ4=>nH1H>*wg_>F4Wf^mY1r{Q~_GeXD-CzD>VU->zS! zU#-7bzfr$k|B(Jg{pSX?!DJX>$Tt)iMi@pJ&Nb8-LWYYBorWETU4|PCHyLg=++%pq z@UY=g!+ygd!(qb_!z+g4hSv;V84X6K(QQmJCL2?Y1C2SxN~70UZwwe$7%wqyFm5z% zGHy10Y5dXnXPha{9+w$c5LXxHi`y9YK-|-DFT}kb_h#JNaqq@`8uxYF$++Kn#1me| zJNSWo2A{>}@VWdb{%n2>U&I&lQ~6SUI$zFv`DQ-Ihxx_)Qhph~fM%dg|t^H=d# z^VjfO`0Mzs{C)hB{EPfc{89cD{y6^{{{jCI{|WyY{{{aQ|4qCmK0AI)d{z9a_{-xr z$9KfI&`PscwK|7`qk3GxJ00+*mouq7lX3{DuDke-m4P>@iR;7zDcSenRc3XoA#LYnvR>kHY?3WbG+GPwwRO6Ip$n*p1Ht0(tMVAw7Jk+ zYMyQ`H_tFvnrEBmnCF@2o14t7=8fhX%}<)&H-BYOSxgp>rJp6)l4==f8Enb5n%51Ubeht`PA~ARcTdQHCCO~V2!hmwN9~4vz}`$v(C5HSnI6y z)_`@Xb+z?k>!sE;)Z?tc+Z?Ruz-)i4w-)q0cew+Oc`=j`&Pb*q^t* zU_Wd>Vt>Q_f&E+ikM^JKr|f?^u!B0}4uiw$NO25w40fbBG8|csagGv4nWMrn(=p3Y z?^xt$as(V<$707)$1=x-jUiDpvEviR zr;g7Zzd7TaL!9HC6P@Qcr#MTT4bEog66Y%CF6W)jyPfws?{_}ve9`%m^QiL`=W*w2 z&i9=kIzM)P>ip69v-6bmw?uiOKGBhwnCMPSN*s|mD)H>ZF^NTqlM_o4OB1IjRwb@Z zye#qV#77cOB!1%3y9T&2T{*5?SDvfbHPuz>Ds#pRy;H+IY13b)#=b?e;@x5wSjo#GzsPIG6vv)!ZJh3>KL z@$L=oZSI@gH@k0j-|oKCeYbm``*HVE?gQ?F?&sYvxR1L}xW91!;*oij9?qll7(MYG zmnX@S>`C