NOVINKA: Začni v IT jako webmaster s komplexním akreditovaným online kurzem Tvůrce WWW stránek. Zjisti více:
NOVINKA: Staň se datovým analytikem od 0 Kč a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Diskuze – Lekce 7 - Cykly v C# .NET - for a while

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Nejnovější komentáře jsou na konci poslední stránky.
Avatar
Odpovídá na Pavel Navrátil
Matúš Olejník:1.3.2019 13:47

Pretože tu

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

máš na konci bodkočiarku, takže ti zbehne cyklus naprázdno a potom sa len a vynásobí samým sebou. Takže riešenie je odstrániť tú bodkočiarku.

Odpovědět
/* I am not sure why this works but it fixes the problem */
Avatar
Tomáš Palaščák:4.3.2019 19:48

Ahoj, měl bych dotaz, nevíte v čem je problém? Jaktože jedno funguje a druhý hází chybu?

while ((pole[i] > promenna) && (i >= 0)) //index je mimo hranice pole

while ((i >= 0) && (pole[i] > promenna))

Díky za odpověď:)

Avatar
Odpovídá na Tomáš Palaščák
Neaktivní uživatel:4.3.2019 19:52

Nic nevím jistě, ale řekl bych, že když víš, že jedno neplatí a potřebuješ, aby platilo oboje, prostě to druhé už přeskočíš. Ale jak říkám, je to jenom můj osobní pohled na věc.

Odpovědět
Neaktivní uživatelský účet
Avatar
Jaroslav Tomášek:10.3.2019 8:27

Díky moc za článek! :)

Odpovědět
Jetzt geht'z mein weitergehendes Om.
Avatar
Peter Jeck
Člen
Avatar
Peter Jeck:17.3.2019 22:55

Zase zabavna lekcia a nie nudna prednaska :) Diki moc za kurz.

Avatar
luckas
Člen
Avatar
luckas:13.10.2019 21:26

Ahoj, chci zjednodusit program, ale stale se nemohu dopracovat k vysledku... Prosim, o radu jak to upravit, aby to fungovalo...dekuji ...hlasi mi to chybu index je mimo hranice pole...
int i, a = 0;
string s = "";
int[] pole = new int[100];
int[] vyskyty = new int[100];
int[] cisla = { -2, -1, 0, 1, 2 };

Random r = new Random();
for (i = 0; i < cisla.Length; i++) {
pole[i] = r.Next(3)-2;
s = s + pole[i] + ", ";
}
for (i = 0; i < cisla.Length; i++) {
if (pole[i] >= -2 && pole[i] <= 2) {
vyskyty[a] = pole[i];
vyskyty[a] = vyskyty[a] + 1;
a++;
}
s = s + "\n" + cisla[i] + " padlo " + vyskyty[a] + " krat" + "\n";
}
Console.Write­Line(s);

V pripade, ze bych to zadal viz. nize, bylo by to prilis zdlouhave....

//for (i = 0; i < pocetHodu; i++) {
// if (pole[i] == -2) {
// vyskyty[0] = vyskyty[0] + 1;
// }
//}
//for (i = 0; i < pocetHodu; i++) {
// if (pole[i] == -1) {
// vyskyty[1] = vyskyty[1] + 1;
// }
//}
atd...

Editováno 13.10.2019 21:27
Avatar
Odpovídá na luckas
Neaktivní uživatel:13.10.2019 21:32

Na kterém řádku tuto chybu dostaneš? Mimochodem, příště prosím použij tlačítko na vložení kódu (mezi smajlíkem a tučným), ať se to líp čte ;-)

Odpovědět
Neaktivní uživatelský účet
Avatar
luckas
Člen
Avatar
Odpovídá na Neaktivní uživatel
luckas:13.10.2019 22:05
vyskyty[a] = vyskyty[a] + 1;  ...zde
Avatar
Odpovídá na luckas
Neaktivní uživatel:13.10.2019 22:34

Jestli ti to projde přes řádek nad tím bez problému, je to minimálně divné.

A jsi si jistý, že chceš provést zrovna tohle?
Vygeneruješ 5 čísel (-2 až 0) (a dáš je do výstupu oddělená čárkami).
Hledáš mezi nimi čísla od -2 do 2 (včetně).
Do výstupu přidáš (ještě pořád v cyklu) číslo, které zrovna testuješ, a k tomu

  • pokud prošlo testem (je mezi -2 a 2), jeho samo zvětšené o 1
  • jinak poslední číslo, které prošlo, zvětšené o 1.

Vypíšeš výstup.

Odpovědět
Neaktivní uživatelský účet
Avatar
luckas
Člen
Avatar
luckas:16.10.2019 21:50

Mám vygenerovat 10 čísel v rozsahu např (-2 až 2). A spočítat jejich četnost, že např. číslo 1 se vyskytuje 2 krát, atd... bohužel nemohu se dopracovat k tomu jak vypsat, že číslo - 2 se vyskytuje např. 3 krát .... havaruje mi to na tom, že index buňky pole je zaporne cislo...

Nejnovější komentáře jsou na konci poslední stránky.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 208.