IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 3. diel - Typový systém druhýkrát: Dátové typy vo Swift

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Lukáš Kuchař:1.1.2019 17:27

Zdarec, hele není v odstavci trimmingCharac­ters() chybný příklad kódu? Ukázkový kód oproti textu nedává smysl. Popisuješ odstranění bílých znaků, ale v kódu požaduješ zadání čísla, což dle mě nedemonstruje odstranění bílých znaků. Nebo jsem to špatně pochopil?

Editované 1.1.2019 17:27
 
Odpovedať
1.1.2019 17:27
Avatar
Filip Němeček
Tvůrce
Avatar
Odpovedá na Lukáš Kuchař
Filip Němeček:1.1.2019 18:39

Ahoj, tento příklad má sloužit v případě, že uživatel při zadání čísla doplní mezery třeba, takže například zadá: " 3 ". Takže po trimu zbyde pouze 3 a tu lze parsovat do Int.

Kdybych to ukazoval na obyčejném textu typu: "Vítejte na webu ITNetwork", tak výstupem tohoto kódu bude: "Vítejtenawebu­ITNetwork", :-)

 
Odpovedať
1.1.2019 18:39
Avatar
Lukáš Kuchař:1.1.2019 18:54

OK, díky za info. Teď už tomu rozumím, jak jsi to popsal. Jinak díky za kurz. Vychází sice ze C#, ale chápu, že je zbytečné psát něco dvakrát. Absoloval jsem základní kurz C#, ale jako Apple nadšenec mě vždy zajímal Swift, tak jsem si koupil celý tvůj článek "Základní konstrukce jazyka Swift" a začínám od začátku v jiném jazyce. Klobouk dolů pánové před Vámi. Odvádíte skvělou práci. Díky za Váš web.

 
Odpovedať
1.1.2019 18:54
Avatar
Sergej Serenatenko:9.1.2019 18:54

Ahoj, moc děkuji za pěkný článek. Měl bych ale několik upřesňujících dotazů. a) Má na maximální hodnotu proměnné vliv architektura systému? 32bit vs 64bit? b) Jak je to prosím s Float64 je to prakticky stejný typ jako Double? A na co se používá hodnota Float80? Předpokládám, že má vyšší přesnost něž Float64, Je to jen překvapivé číslo?. :) c) chápu správně, že jestliže je číslo větší než je přesnost dojde k zaokrouhlení nebo oříznutí podle typu proměnné? Předem moc děkuju za odpověď.

Editované 9.1.2019 18:55
 
Odpovedať
9.1.2019 18:54
Avatar
Filip Němeček
Tvůrce
Avatar
Odpovedá na Sergej Serenatenko
Filip Němeček:12.1.2019 11:01

Ahoj, hele upřímně jsem nikdy nepodnikl deep dive do těchto specifičtějších odvětví desetinných čísel. každopádně architektura by neměla mít vliv na max. velikost proměnné, ale spíš na výkon (32bit Float má na 32bit systému stejnou velikost jako pointer a tudíž se s ním rychleji pracuje..) Double je vlastně alias pro Float64 (viz https://developer.apple.com/…wift/float64). Float80 má vyšší přesnost, každopádně jsem o něm do teď nevěděl. c) zde si nejsem jistý natolik, abych odpovídal :-)

 
Odpovedať
12.1.2019 11:01
Avatar
Odpovedá na Filip Němeček
Sergej Serenatenko:12.1.2019 12:26

Jasný, jsou to okrajové věci, byl jsem jen zvědavý, každopádně moc děkuju za odpověď.

 
Odpovedať
12.1.2019 12:26
Avatar
kinfo
Člen
Avatar
Odpovedá na Filip Němeček
kinfo:12.4.2020 18:50

zadal jsem tedy " 3 " a objevilo se toto
Fatal error: Unexpectedly found nil while unwrapping an Optional value
Current stack trace:
0 libswiftCore.so 0x00007f89cb80ce80 _swift_stdlib_re­portFatalError + 171
1 libswiftCore.so 0x00007f89cb7b291f + 4155679
2 libswiftCore.so 0x00007f89cb511afb + 1399547
3 libswiftCore.so 0x00007f89cb7695e1 + 3855841
4 libswiftCore.so 0x00007f89cb511afb + 1399547
5 libswiftCore.so 0x00007f89cb6a9eb0 specialized _fatalErrorMes­sage(_:_:file:li­ne:flags:) + 96
6 myswiftprogram 0x0000000000401d3c + 7484
7 libc.so.6 0x00007f89c9638740 __libc_start_main + 240
8 myswiftprogram 0x0000000000401439 + 5177

 
Odpovedať
12.4.2020 18:50
Avatar
Odpovedá na Filip Němeček
Miloš Chudý:5.1.2021 20:43

Ahoj Filipe. Výsledkem bude opět “Vítejte na webu ITNetwork”, protože ta funkce odmazává jen mezery před větou a za ní... Zkoušel jsem to několikrát...

 
Odpovedať
5.1.2021 20:43
Avatar
Juraj Prochaska:29.9.2021 0:52

Halo kedže si tykáme tak mi prosit ťa pavedz, čo do skurvenej riti je s tvojim alebo neviem koho Compilerom, že úlohu číslo 3 po lekcii 1a2 konkretne s s obsahom a obvodom kruhu nie je ani po presnom na chlp presnom skopirovani riešenia od vás zo stranky stiahnutého codu. Proste je to dojebané. Chcem len povedať ze 3.týžden na tom kysnem a už ma to sere

 
Odpovedať
29.9.2021 0:52
Avatar
LuckyChillda
Člen
Avatar
Odpovedá na Filip Němeček
LuckyChillda:5.12.2021 19:26

Ahoj, zkouším ten trimmingCharac­ters() tak jak je v příkladu a ty mezery tam stále zůstávají. Zůstávají i když vytvořím příklad s textem a to i v případě mezery na začátku. Dělám někde chybu?
Takto vypadá zápis.

print("Zadej text s mezerami")
let a = readLine()!
print("Text po funkci trim: " + a.trimmingCha­racters(in: .whitespacesAn­dNewlines))

Editované 5.12.2021 19:29
 
Odpovedať
5.12.2021 19:26
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!