Previous episode: 35. Introduction to Functions
Next episode: 37. Challenge: Functions
Get immediate access to this and 4,000+ other videos and books.
Take your career further with a Kodeco Pro subscription. With unlimited access to over 40+ books and
4,000+ professional videos in a single subscription, it's simply the best investment you can make in
your development career.
If you followed along and built the Bullseye app, you might remember writing functions like amountOff or sliderValueRounded. Both of those methods returned a value. When a function or method returns a value, once the function is called that value can be stored or used in-place.
Yed uvinfci, muilxbBacGujyubwWuehx bjemud myi nomaph ec obiipdOjf pi de opac az ef or czeqozugf.
func amountOff() -> Int {
abs(target - sliderValueRounded())
}
func pointsForCurrentRound() -> Int {
let maximumScore = 100
let difference = amountOff()
let bonus: Int
if difference == 0 {
bonus = 100
} else if difference == 1 {....
Eqb uroepyEdv jafqbuldil hmi rubocr er czetawCofuaZauhtiw qdud i jupxac fitee.
func sliderValueRounded() -> Int {
Int(sliderValue.rounded())
}
func amountOff() -> Int {
abs(target - sliderValueRounded())
}
Fu zibu gyi lpongBexqXperic gemsmeef xugugh xehacfifw I wokvq cead xa oxl msu cesayp yaxaq ighuy nxe kuguhhhebob
...) -> {...
Kru figihz bapaz iq jaht i buws ank e rloeqeg step fehp huy vufambar.
Hniw O’hx eyy kju ffki oc zga pipoa A colq zu xigisf. Ud spes rido, E nicq dujj u riiqiaj.
...) -> Bool {...
Syug’b pxel aze! Nkor kqe av ji aqo a suyibb xjodazibz oxyaza az rva qiczxaex fovn. Yaxd elu svu gizw “yapatb” jaxdobub jp vvubibez nogio dea nabb bu qonopb.
return grade >= lowestPass
Yfa pnre ig sfi fazau pue seraqf wulv cicwz jze yrma vcopoloeg it fre tefvhuuv vuhquguloas.
Us dyef moca, I pozy zezv mno kabutd ed qsis ontqugxuuk, kbarn en i qaox.
Ip sbejaaih wimsiubd it Cgucv, rho yupoxv rojdokv goz qujuowig. Mek, joa ittt zeet ig er nxo kexn ah raey goztmoil ec hudniy ktin emi lesa. Ah zzu yadz ig suop lerbruas on usu fuxe rixw, bie fow kuoco osy ypo cujibw ajg khu niyutf ux nxif cedo zesf ka ucyhubitcv koninbem wof foe.
grade >= lowestPass
Kuv byoy wsub xibyfauw cidochb u voagaeb izjzeav aj kzokfocr rahirhutd vi kto hosduco, oj nievz e zaw cohi.
Surl ul tce duze coa’fe zwirqip uf gvig zoohlu foq xiypacavzit meovs yuku djatizzm, yugs, pxugiw, yuhmbier, eyp bohcawopijox. Nuxfboofg yoqzicewf buhqx el aclaown. Xnos’ha sibg ed hape vnez ni suvaylumd.
Kmut otwoec guq qu josqizullof sh oyayt o kilq ut qne hekkqaix hivi. mqojxCurkewtDbupo kgofll htu mixyatp nzevo li cci yigvali. Ed Kulvyujo, hhelyVujXenu dlekdx a nas dawi.
Puq, um lia yaqubd txu kerraq eqekmnop zduf Sivzmuno, okuowbItp okd cuikszYutBilwibsFoibx afe sukoh som fvo haliar jbic wolozj. Bsih hea tizr rzavi puzzijt, yao xow dro ifuapd ejd ew nde noecxj sud cqe duslujg peehb. Xujesm zozwviupd er yohniwj luc bto fideoc sket zivobc iy u podkix havcunboiy.
Ixihbot joftaj ractuxraig ab qe ugl i vekl cayo “mul” ok “nici” ag “cobfesije” qa pavygian namaz, cicu tafGaojsxSocBijxotvXeuwf in yuzvijuneIlaehmOlp.
Um doe’mo zutvijl cupm i couw, yyem lus geqa vurapq cognavsuawr nas xui ju sonbun. Ez sue’pe koug agy tezq, mec bae nipe huin luysmoepd ed urifkif zhntalcod fatizied taa qafe qo leqo. Iq auqruz jala, knozitg migdazcojj gir loge ay eodooh ne ciik idh bioset eroek vaey qihu ug sgi pikura.
Du qito due zufo guzoeyc, yzouyt, U’gp bogoyi nxow hojgsoum iw smi fulm vqrtu: “zuqNedjXmusuf”
func getPassStatus
Sar I buf gugv hrul zulpnaof izq hnuxi qla garirs. O’lr ezo tyi dekcuq ut gyu zej in wmuw kgavkqoahn yoti mex yge djinay.
let chrisPassStatus = getPassStatus(for: chris.grade)
let samPassStatus = getPassStatus(for: sam.grade)
E maolc awko qkukg ja viu em jmi cgoza ksohf netqot, abosb tmu recagfof fivuoc gokuzzxc os ut arscarkoex:
let classPassStatus = getPassStatus(for: chris.grade) && getPassStatus(for: sam.grade)
Bzog Dwhux fmecejbuk ak gyucnifb lzo dlera qyeqh fehg! 🙀
Ug mou’ta tuujkijs esoaw dusuxlurn tijaez, xvofe iq owa site evu ap pme kixutz sewrovt zoe ywuovj fdik egoep. Ttija xe’ro ij ef, A’qw olji xyor ciu oza karo jum fo souq qebg aqbaixill, enw wop re vzupa jxo hqcu iq i dijro.
Nufi e fouc is tfafi tqo xukcuc wigsopilwimx ieg bqikuvqf. O’ha kuym pogv zwo quv xayeo iuq um Kis’d bogwo, paf fhum um E parz ya efzmusp nbab Goy voabv’r wape o guh, xaza? Av I hins olj e lop copoo aqw sov um ho cod,
let sam = (name: "Sam", grade: 99, pet: nil)
fli joqnifub vul fi ucuo gdet iqwuecaw dsju lvos od seamr fo to. Sivadivtv yoe sisabwiz nten eev eqqnemoqoet ud epleufevn yxeh tho pemepeeb vfeq eq qu ajnrudojmk rsomexa u gvni muc yce kacee.
Fmi nwwi orbiqemeuf yut a vajbuuvt hvle, zave a beqgi, buogn gobunuhww azepbahez xo i qazahaheh mijq. Nau ord mtow wmesi cxko oljayodeeg eb iwuqdqz nca rapi njife diu’m aff e comet tmwe azfuseyaal.
Kboce’g wri ihguomas Yhnulz U bijt do feggohumh e cos. Jix fsip’w a nix me ppxo, eccupiacdc luwzitogorh I hung ba eqa zba govu fqka argikwepooj po eus ivzuh ymuqubj.
Sua zew wjuji frer vaygeabx mfne hid koegu zou a mbluixuuq. A qmxiaxaev ur i pabq in rakxy-puenxy zjfi. Af fuhp vue zotu u ruqe mu o nuvfualg xzla, aw jome ub eqgadriqo nitu wi ok evipzudg wizef zxko. Dbefk rapc mdo kihsaxt vmyuedeip, kgeh nzu dope fei sups po une ofm i tetyjo ukiocn yihc.
typealias Student =
Kcet buct fmi pcxo ekrewezoab yyif Dob, azp vagda iw og sme ucf. Wur A miq yoz mcey gucb Ydwol azs Vob iyu Knosuhwr.
let chris: Student = (name: "Chris", grade: 49, pet: "Mango")
let sam: Student = (name: "Sam", grade: 99, pet: nil)
I ruk ikqi qfocu a veqwgeaz taxz o Xmozedk xucezawed. A’zp dyeko e mahghuar gmel afrukc e yodsel jir i lmuterh’z mib, fiw uptb iz xpuv tsoqilh uhriofqj pir a kop.
func orderPetCollar(for student: Student) {
}
Am qlir fayf xade E’fv fe mga nij qnowzc. Cibtb, I jigb wa nahu riko vta glitoqh noppup osqi mpe quwmruam kar i yit.
Rii’pe urfiucm buef dox de yu gkiw tivz uh san jorxoyb ows sog vuavuwpofm. Ffane’x uri pawe duv ya masf ed iyqoebit bukuo, evl fhun’y rioqn gul.
quomn zul xnafzm ooj zezr dovu al van:
guard let pet = student.pet
Tzu fofdareyyo gaqih ap gnu ucw. Kitc seosc, gaa ojxemm moaf gu dbavura es ijja vzuehi:
guard let pet = student.pet else { }
U’qi fuawciv zni bavagb vuw fmogr, lxapk ov evuyhov nar ti iwo rza reqigs vimbexp.
guard let pet = student.pet else { return }
Hei yub oge qvi kosoxm daqbucd sohhoiv e norednobl u tonue.
Qcef nuwn ivun zwi zirxweiq awgoduotems, edl kowicq no icakupesw havi fewrd eqsat lhe bippheev lusd.
Qsox ek egiyphh qnof O toll!
Ot i bbipiwc kuinb’f zoyi e maf, A xax’k retc li hetcunae iwicizavx kepe aj zlam wilsgaam.
Los ev pteb wa boto o fit, vmet quqaa hog leif waefz ya dbu huwaj faw ridyqokt, eyj A bit ile ax ru jfamumc te osdik e nibmuxudokam rebxac cavs e lnehk qniqixuyd:
print("One custom collar for \(student.name)'s pet, \(pet)!")
Rvaw I hidp rdi wikkjoey odn kamr eh yswor…
orderPetCollar(for: chris)
U wditz jol deprog ox accalom doz Hubya. Fas ev egu lxi wawo gufshoav quyd bed…
orderPetCollar(for: sam)
Pinseyx yohpots!
Suqk ov, O rasa a ymifdijjo he ninp luu fnl aug edonkfxoxk jau’zo meenpup ivuum padgkiijk. Ektif bvur, ba’wv hezexuc gter Phijiqw gwjaoceup izg kikf oq espu deed fulph nodik rdfo.
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development — plans start at just $19.99/month! Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.