Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 7. 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
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Odpovedá na Štefan Pružinský
Libor Šimo (libcosenior):7.3.2014 8:41

Sám sa skús zamyslieť, čo by sa stalo, keby užívateľ napísal "ráno", ktoré by bolo správne?

Odpovedať
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
I.Love.Guitar:15.3.2014 14:59

Ahoj, som v programovaní prakticky nováčik a rád by som sa poďakoval autorovi týchto článkov. Super sa čítajú a dávajú človeku skutočne viac úžitku ako školské skriptá :) ..pri tom Mocninátorovi mi ale napadla jedna vec:
Ak by sa pozmenil úsek
int vysledek = a;
for (int i = 0; i < (n - 1); i++)
vysledek = vysledek * a;
za

int vysledek = 1;
for (int i = 0; i < n; i++)
vysledek = vysledek * a;

tak by to fungovalo aj pre nultú mocninu :)

Avatar
xxluky
Člen
Avatar
xxluky:22.4.2014 17:09

Zdravím.
Začínám programovat na těchto tutoriálech. Můžete mi někdo poradit, jak mohu zarovnat násobky čísel uvedených ve sloupcích pomocí PadLeft, jak je zmíněno výše a není názorně předvedeno? Nemůžu na to přijít. Metoda PadLeft chce string řetězec, v příkladu se ale používá int...

Díky za radu.

Avatar
xxluky
Člen
Avatar
Odpovedá na xxluky
xxluky:22.4.2014 17:12

Omlouvám se, už se to řešilo, nevšiml jsem si, bylo to ve skrytých komentářích níže.

Avatar
marian.hladik25:20.8.2014 9:42

Zdravím , cyklus
for (int i = 0; i < (n - 1); i++)
vysledek = vysledek * a;
funguje aj ako
for (int i = 1; i < b ; i++)
{
vysledek = vysledek * a;
}
Chcel by som sa s;)pýtať či bude 1 v i spôsobovať problémy. Alebo prečo sa primárne uvádza nula.;)

Avatar
Petr Gürth
Tvůrce
Avatar
Odpovedá na marian.hladik25
Petr Gürth:20.8.2014 9:54

Nula se tam dává většinou kvůli polím a kolekcím. Když máš pole např. o 3 číslech (5, 10, 15), tak první číslo (5) získáš pod indexem nula.

Avatar
pavel
Člen
Avatar
pavel:7.9.2014 21:10

Ahoj, chtěl bych poprosit o vysvětlení této věci:
například u té násobilky se výpočet i*j provede až v rámci metody Console.Write:

for (int j = 1; j <= 10; j++)
           {
               for (int i = 1; i <= 10; i++)
               Console.Write("{0} ", i * j);
               Console.WriteLine();
           }
Console.ReadKey();

Když bych výpočet ale z nějakého důvodu chtěl dát v těle cyklu samostatně (třeba abych pak mohl s výsledkem dál pracovat podle nějakých podmínek), funguje to jinak a vypíší se jen poslední výsledky (10, 20, 30...)

int vysledek = 0;
for (int j = 1; j <= 10; j++)
           {
               for (int i = 1; i <= 10; i++)
               vysledek = i * j;
               Console.Write("{0} ", vysledek);
               Console.WriteLine();
           }
Console.ReadKey();

Rád bych věděl, co se v cyklu děje jinak, protože podle mého laického chápání by to mělo dělat úplně totéž, co v prvním případě. Něco mi asi uniká.

Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovedá na pavel
Jan Vargovský:7.9.2014 21:17

Musíš si přidat další blok :)

Zkus jaký je rozdíl mezi

for(int i = 0; i < 5; i++)
Console.WriteLine("prvni příkaz");
Console.WriteLine("druhý příkaz");

a

for(int i = 0; i < 5; i++)
{
  Console.WriteLine("prvni příkaz");
  Console.WriteLine("druhý příkaz");
}
Avatar
pavel
Člen
Avatar
pavel:7.9.2014 21:22

Á, chybějící závorky :) Už to vidím. Měl jsem v těle toho druhého cyklu vlastně jen výpočet a proto se vypsal až poslední výsledek. Díky, vůbec jsem si toho nevšiml a hledal jsem v tom nějaké složitosti.

Avatar
theuerk
Člen
Avatar
theuerk:23.9.2014 16:21

Ahoj, mám malinký dotaz k tomuto:

for (int i = 0; i < (n - 1); i++)
        vysledek = vysledek * a;

jde mi o tu deklaraci v cyklu

int i =0;

, podle toho jak jsem to pochopil ji vykoná pouze na začatku a pak už jede pouze od podminky?

Odpovedať
Touha po dalším rozvoji
Posledné komentáre sú na spodnej časti poslednej stránky.
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.

Zobrazené 10 správy z 208.