NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Funkce, kterou se snažíš použít je dostupná pouze pro registrované uživatele. Buďto se přihlas nebo si zdarma vytvoř nový účet.

Diskuze: Problem s prevodem programu z VB do C#

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
Ondrej Zadrapa:24.6.2020 11:00

Caute, mam takovy drobny problem, mam potiz s prevodem jednoho programu z VB do C#, nevim, co delam spatne, ale nefunguje mi tak, jak by mel

Zkusil jsem:

static void Main(string[] args)
        {
            int pocetDelitelu = 0;
            Console.Write("Zadej cele cislo: "); int celeCislo = int.Parse(Console.ReadLine());
            for(int i = 2; i <= celeCislo - 1; i++)
            {
                if (celeCislo % i == 0) Console.Write(i + " "); pocetDelitelu++;
            }
            if (pocetDelitelu == 0)
            {
                Console.WriteLine("Cislo je prvocislem.");
            }
            Console.ReadKey();
        }

Chci docílit: Aby mi to pri zadani 13, nebo jakehokoliv cisla bez delitelu ohlasilo vetu "Cislo je prvocislem.", ve VB mi to v tomhle formatu jde uplne v pohode, tady kdyz zadam 13, 17, nebo 29, tak to zobrazi akorat prazdny radek. Predem dik za radu.

 
Odpovědět
24.6.2020 11:00
Avatar
Bozz
Člen
Avatar
Odpovídá na Ondrej Zadrapa
Bozz:24.6.2020 11:17

if (celeCislo % i == 0) Console.Write(i + " "); pocetDelitelu++;

Když kód v těle IF neobalíš do {} tak se ti podmíněně spustí jen jeden příkaz (Console write) a další se provede vždy.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
+1
24.6.2020 11:17
Avatar
zelvicek
Člen
Avatar
Odpovídá na Ondrej Zadrapa
zelvicek:24.6.2020 14:19

Rád bych ti poradil obecně použitelný postup, který dokáže vyřešit >80% problémů, které zde na fóru máš. Jedná se o debugging (=česky asi krokování). Je to technika, kdy vývojář může detailně sledovat, jaké příkazy jsou vykonávány, jak jsou měněny různé proměnné, atp. Nevím, jaké vývojové nástroje používáš, ale zdarma dostupné Visual Studio či Visual Studio Code debugging zvládají výborně. Problémy, které ti, při vývoji aplikací, vzniknou, dokážeš vyřešit rychleji než dotazem na fóru. Navíc se lecčemu přiučíš.

 
Nahoru Odpovědět
+2
24.6.2020 14:19
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 3 zpráv z 3.