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

Diskusia – 6. diel - Cykly v C# .NET - for a while

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
..
Člen
Avatar
..:9.7.2012 12:02

Nebylo by lepší použít v tomto příkladě cyklus do - while??

 
Odpovedať
9.7.2012 12:02
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na ..
David Hartinger:9.7.2012 12:09

Ahoj, také by to šlo a ušetřilo by to přiřazení do pokracovat, ale nechtěl jsem tím začátečníkům motat hlavu :)

Odpovedať
9.7.2012 12:09
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Kit:20.10.2012 13:20

Došel jsem k závěru, že cykly jsou v moderních programovacích jazycích téměř zbytečné. Téměř vždy se dá vybrat vhodná datová struktura, která má požadovanou funkcionalitu v sobě již zabudovánu.

Odpovedať
20.10.2012 13:20
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
malli
Člen
Avatar
malli:29.11.2012 22:05

Mám takový začátečnický dotaz. V minulém díle se psalo, že proměnná "vysledek" se deklaruje na začátku, protože kdyby se proměnná deklarovala vícekrát, došlo by k chybě. V posledním příkladu zde je ale deklarace proměnné "vysledek" v cyklu while a přesto se žádná chyba neobjeví. Děkuji za vysvětlení.

 
Odpovedať
29.11.2012 22:05
Avatar
Зайчик
Člen
Avatar
Odpovedá na malli
Зайчик:29.11.2012 23:32

nevím jestli jsem to dobře pochopil ... ale nemůžeš si vytvořit dvě proměnné stejného názvu... alias

int vysledek;
// kod
int vysledek = 0;

ale

int vysledek;
// kod
vysledek = 0;

Pokud dobře koukám nikde se tam vytvoření stejné proměnné nekoná. Ale jen se přepisuje hodnota té proměnné.

Odpovedať
29.11.2012 23:32
Коммунизм для нашего будущего!
Avatar
Kit
Tvůrce
Avatar
Odpovedá na Зайчик
Kit:29.11.2012 23:40

Některé moderní programovací jazyky neumožňují ani přepisování hodnot proměnných. Zkusil jsem to propašovat i do ostatních jazyků a mám s tím velmi dobré zkušenosti. Některé programy to hodně zjednodušilo.

Odpovedať
29.11.2012 23:40
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Зайчик
Člen
Avatar
Odpovedá na Kit
Зайчик:29.11.2012 23:46

S přepisem proměnné má pascal docela problém... teda aspoň v IDE "Free Pascal" jak jednou zadám do proměnné hodnotu, tak po dalším přepisu už to na mě křičí. To je docela za trest, třeba na kalkulačku sem dneska ve škole musel dělat 6 proměnných... jen na +,-,/,*. Takže díky bohu za Céčkové verze programovacích jazyků.

Odpovedať
29.11.2012 23:46
Коммунизм для нашего будущего!
Avatar
Kit
Tvůrce
Avatar
Odpovedá na Зайчик
Kit:29.11.2012 23:50

V XSLT hodnotu proměnné nepřepíšeš. Prostě to nelze.

Odpovedať
29.11.2012 23:50
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
malli
Člen
Avatar
Odpovedá na Зайчик
malli:30.11.2012 8:28

Díky za reakci, ale šlo mi trochu o něco jiného. Jde o to, že deklarace proměnné je uvnitř cyklu while,

while (pokracovat == "ano")
   {
       kod
       float vysledek = 0;
       kod
   }

takže když cyklus while proběhne např. 10x, tak i proměnná se defacto 10x deklaruje. Jak je možné, že nedojde k chybě?

 
Odpovedať
30.11.2012 8:28
Avatar
Kit
Tvůrce
Avatar
Odpovedá na malli
Kit:30.11.2012 9:04

Proměnná vysledek je lokální proměnná cyklu. Vlastně je deklarována pouze 1×. Jinak to ani napsat nejde, protože tu deklaraci mimo cyklus dát nemůžeš.

Odpovedať
30.11.2012 9:04
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
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ý!