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 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.

Odpovedať
/* 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
Odpovedá 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.

Odpovedať
Neaktivní uživatelský účet
Avatar
Jaroslav Tomášek:10.3.2019 8:27

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

Odpovedať
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...

Editované
Avatar
Odpovedá 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 ;-)

Odpovedať
Neaktivní uživatelský účet
Avatar
luckas
Člen
Avatar
Odpovedá na Neaktivní uživatel
luckas:13.10.2019 22:05
vyskyty[a] = vyskyty[a] + 1;  ...zde
Avatar
Odpovedá 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.

Odpovedať
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...

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.