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
Pavel Neuhausl:5.6.2022 20:20

Možná už se na to někdo ptal, ale nebylo by dobré u

Console.WriteLine("Přejete si zadat další příklad? [ano/ne]");
pokracovat = Console.ReadLine();

Použít toto?

Console.WriteLine("Přejete si zadat další příklad? [ano/ne]");
pokracovat = Console.ReadLine().ToLower();

Aby nenastaly problémy, když někdo napíše Ano či nE? Jsem začátečník, tak doufám, že to, co jsem napsal dává smysl.

Avatar
Alesh
Tvůrce
Avatar
Odpovedá na Pavel Neuhausl
Alesh:5.6.2022 20:45

Tak určitě... na druhou stranu musíš brát v potaz to, že se jedná o výukovou lekci úplných základů, není tedy nutné se to snažit úplně vyšperkovat, to by dokonce mohlo být naopak kontraproduktivní, protože zas by se někdo začal ptát proč to tam je, jestli to tam musí být apod. :-)

Avatar
Odpovedá na Alesh
Pavel Neuhausl:5.6.2022 20:50

Ano. To chápu. Já jsem teda taky úplný začátečník. Začal jsem před pár dny. A dost mě to baví. Řeším teď, že se přihlásím do kurzu.
Díky za odpověď.

Avatar
Odpovedá na Libor Pavlík
Jaroslav Drobek:30.7.2022 12:56

Asi by to šlo udělat kratším kódem, než uvedu, ale nechtělo se mi ztrácet čas:

string s;
for (int j = 1; j <= 10; j++)
{
    for (int i = 1; i <= 10; i++)
    {
        s = string.Format($"{i * j}");
        Console.Write("{0} ", s.PadLeft(5));
    }
    Console.WriteLine();
}
Avatar
Marek Němec
Člen
Avatar
Marek Němec:12.8.2022 11:28

Nedělá Math.Pow(a, b); to samá jako ten algoritmus s for (bla bla){bla bla}?
jestli je tam nějaký rozdíl nebo to je rychlejší tak mi prosím odpovězte děkuji

Avatar
vit.kadlec
Člen
Avatar
vit.kadlec:29.10.2022 10:27

Ahoj, jen prosím prkotina - nekonzistentní výklad mezi lekcemi s jedním příkazem u cyklu for - kde u jednoho příkazu za cyklem není potřeba {} a stejně tam je a pak u for (int i=0; i < 3; i++)
{ Console.Write­Line("Knock"); } - u if viz předchozí díl. Ti co to úplně neznají pak v tom budou hledat něco víc a mate je to. Jinak moc super - baví mě ty lekce :-) . Osobně bych dával {} vždy, málokdy následuje jen jeden příkaz. nebo se pletu :-)

Avatar
Petra Hogenauer:11.11.2022 14:48

Kalkulacka mi sla.
Nechapu druhe cviceni. spravnaOdpoved a odpoved? jaky smysl tam ma vazba To.Lower?

Avatar
Martin Pěnička:13.1.2023 10:59

Mocninátor jsem trochu vylepšil, akorát to neumí záporné exponenty. Bylo by super to vylepšit. Zatím jsem dal v případě nulového exponentu ošetřil int vysledek = 1.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OnlineApp
{
    class Program
    {
        static void Main(string[] args)
        {

            Console.WriteLine("Mocninátor");
            Console.WriteLine("==========");
            Console.WriteLine("Zadejte základ mocniny:");
            int a = int.Parse(Console.ReadLine());
            Console.WriteLine("Zadejte exponent:");
            int n = int.Parse(Console.ReadLine());
            Console.WriteLine();
            int vysledek = 1;
            for (int i = 1; i <= n; i++)
            {
                Console.WriteLine("Kontrola cyklu exponentu: " + i);
                vysledek = vysledek * a;
            }
            Console.WriteLine("Výsledek: {0}", vysledek);
            Console.WriteLine("Děkuji za použití mocninátoru");
            Console.ReadKey();
        }
    }
}
Avatar
Zbyněk Faistauer:17.1.2023 1:43

Mocninátor je hezký příklad na testování typu proměnné výsledek. Pro jednoduchost úvah testujme 10n. S typem int si vystačíme do 109 (tedy 1 000 000 000) jelikož jeho max hodnota je 2 147 483 647 , pak už to nepočítá a proměnná ve stacku asi přeteče nebo co a výsledek na konzoli ITnetwork obsahuje nesprávnou hodnotu, ale ne chybovou hlášku! Upravíme-li typ proměnné na long vystačíme si do 1018 a dál se chová stejně špatně. Typ decimal vydrží do 1028 a 1029 už nevyčíslí nesmysl, ale vyhodí error. Zajímavé je chování typu double. To nad svůj rozsah 10308 vyčíslí jako výsledek nekonečno. Hurá. Dál už je asi hranice vesmíru.

Odpovedať
Štěstí přeje připraveným.
Avatar
Adam Bartl
Člen
Avatar
Adam Bartl:28.1.2023 16:03

Zvolil bych lepší příklad, než-li mocniny na vysvětlení problematiky. Myslím si, že to bude zádrhel u většiny v této kapitole.

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.