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

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

 
Odpovědět
5.6.2022 20:20
Avatar
Alesh
Tvůrce
Avatar
Odpovídá 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. :-)

 
Odpovědět
5.6.2022 20:45
Avatar
Odpovídá 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ěď.

 
Odpovědět
5.6.2022 20:50
Avatar
Odpovídá 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();
}
 
Odpovědět
30.7.2022 12:56
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

 
Odpovědět
12.8.2022 11:28
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 :-)

 
Odpovědět
29.10.2022 10:27
Avatar
Petra Hogenauer:11.11.2022 14:48

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

 
Odpovědět
11.11.2022 14:48
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();
        }
    }
}
 
Odpovědět
13.1.2023 10:59
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.

Odpovědět
17.1.2023 1:43
Š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.

 
Odpovědět
28.1.2023 16:03
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 205.