Blog C# za 30 minút

C# za 30 minút

Základy C# – premenné, prvý program, podmienky, cyklus. To sa dozvieš v tomto článku a v priloženom videu na konci.

Premenné

Premenné slúžia na uchovanie informácii (dát) počas behu programu. Premenná v sebe uchováva hodnotu, alebo odkaz na objekt. Tým sa rozlišujú dva typy premenných. Tie, ktoré uchovávajú hodnotu sa nazývajú value typy a tie, ktoré uchovávajú odkaz na objekt sa nazývajú referenčné typy

C# je striktne typový jazyk. Pri písaní premenných musíme vždy napísať akého je premenná typu, alebo to musí byť zjavné z pravej strany a musíme zadať názov pre premennú. Vysvetlíme si.

V tomto príklade vidíme, že typ premennej je int. Tento typ slúži pre uchovanie čísel. Viac neskôr. Tento typ je zadefinovaný v c# (niektoré typy – tie referenčné vieme aj vyrobiť). Tento typ je primitívny dátový typ. Teda je možné priradiť mu priamo hodnotu, ktorú si uchová. Ako viem, že je primitívny – je to napísané v dokumentácii a hlavne je tento typ napísaný malými písmenami.

Referenčný dátový typ má podľa konvencie vždy začať s veľkými písmenami, aby sme vedeli hneď rozlíšiť s čím pracujeme.

Ako priradím informáciu tejto premennej? Urobím to pravou stranou, ktorá začína ak pridám rovná sa. Za rovná sa zadám niečo, čo vyprodukuje int – to niečo sa nazýva výraz (expression).

Výraz môže byť napríklad zavolanie metódy, ktorá vráti int. Alebo matematická operácia, ktorá vráti int, alebo priame priradenie informácie.

Priradenie hodnoty:

int number = 25;

Priradenie hodnoty pomocou matematickej operácie:

int number = 2 + 5;

Priradenie hodnoty pomocou zavolania metódy:

int number = GiveMeNumber();

Podmienky if, if-else, boolenovské výrazy, zložené podmienky

Základom každého algoritmu je podmienka. Ak niečo, tak niečo, alebo niečo iné. Napríklad ideš kúpiť vajíčka do obchodu:

Je obchod otvorený? Ak áno, tak idem do obchodu, ak nie, tak nikde nejdem. Je vajíčko v poriadku? Ak áno, tak si ho vezmem do košíku. Mám dosť vajíčok? Ak áno, tak končím s naberaním, ak nie naberiem ďalšie vajíčko a podobne.

V jave vieme podmienky spájať alebo ich nechať samostatne. Čo to znamená? Vysvetlime si na príklade:

if (number > 10)
{
    Console.WriteLine($"number {number} is > 10");
}

if (number < 10)
{
    Console.WriteLine($"number {number} is < 10");
}

V tomto príklade sa pýtame. Je číslo väčšie ako 10? Ak áno, tak vypíšem do konzoly text. Potom kód pokračuje vo vykonávaní ďalej a na ďalších riadkoch mám ďalšiu podmienku. Je číslo menšie? Ak áno vypíšem na konzolu. Pýtali sme sa dvakrát. Vieme ale kód upraviť a podmienky spojiť pomocou if else. To využiješ ak podmienky spolu súvisia. Na konci môžeme mať a nemusíme mať else blok. Ak sa tu tento blok nachádza, tak za ním nesmie a nemôže nasledovať ďalší if else blok.

if (number &gt; 10)
{
    Console.WriteLine($"number {number} is &gt; 10");
}
else if (number < 10)
{
    Console.WriteLine($"number {number} is < 10");
}
else
{
    Console.WriteLine($"number {number} is = 10");
}

Cyklus while, do while

Cyklus while ak si preložíme to slovo do slovenčiny znamená pokým – kým platí podmienka, tak niečo rob. Cyklus do while znamená, rob niečo kým platí podmienka. Znie to rovnako, ale je to jemne odlišné.

Do vnútra cyklu while vojdeme len ak platí podmienka. Do cyklu do while vojdeme hneď. Raz sa určite vykoná vnútro cyklu. Potom na konci bloku bude podmienka. Ak je podmienka splnená, tak sa opäť vrátim na začiatok bloku a znovu vykonám kód v bloku.

int counter = 0;
while (counter < 10)
{
    Console.WriteLine("counter: " + counter);
    counter++;
}

Do while sme si vraveli, že najprv vykonám kód z cyklu a až potom vyhodnotím podmienku.

bool next = true;
do
{
    int number = Calculate();
    if (number == 0)
    {
        next = false;
    }
} while (next);

Polia

Pole je zoskupenie jeden a viac prvkov. Prvok sa tu myslí hodnoty – referenčné alebo primitívne. Pole môže obsahovať len jeden typ prvkov. Ak je pole int-ov, tak len int môžem vložiť do poľa a podobne.

Každý prvok poľa má index. Index slúži na presné identifikovanie prvku v poli. V poliach začíname prvky – teda indexi počítať od 0.

Ak mám pole dĺžky 10, tak má tieto indexi: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Prvý element (prvok)  má index 0.

Ak hovorím o elementoch – prvkoch, tak mám na mysli hodnotu, ktorá je uchovaná v poli na danom indexe.

Polia majú pevne definovanú dĺžku pri inicializácii. Pole nevieme inak rozšíriť. To znamená, že ak inicializujem pole, tak mu musím definovať dĺžku.

int[] arrayOfInts = new int[10];

Alebo ho rovno naplním hodnotami. Prvé pole má dĺžku 2 a druhé dĺžku 4.

int[] arrayOfInts2 = {10,10};
int[] arrayOfInts3 = {10,100,11,1};

For cyklus

Pre pochopenie for cyklu si na pomoc zavoláme pole.

Vypíšme si hodnoty pola pomocou for cyklu. Dĺžku polí zistíme pomocou .Length, ktorú napíšeš za názov premennej daného poľa. 

int[] ints = new int[] { 10, 5, 15};

for (int i = 0; i < ints.Length; i++)
{    
    Console.WriteLine(ints[i]);   
}

Z čoho sa skladá for cyklus?

  1. kľúčové slovo for
  2. vo vnútri for sú tri príkazy oddelené bodkočiarkou for(príkaz1; príkaz2; príkaz3)

Prvá časť príkaz1 sa spustí vždy raz na začiatku keď sa v behu programu narazí na príkaz for. V tejto časti býva hlavne inicializácia premennej, ktorá slúži ako počítadlo iterácií – behov cyklu.

for (int i = 0; prikaz2; prikaz3)

Druhá časť prikaz2 sa spustí pred každým behom cyklu. Tu bude niečo, čo na konci vráti true alebo false. Tu býva podmienka, či sa má vojsť do vnútra cyklu – či zbehne jedna iterácia cyklu. Po každej iterácii sa vždy spýtame na podmienku, či sa má pokračovať.

for (int i = 0; i < ints.Length; )

Posledná tretia časť príkaz3 sa spustí vždy na konci jednej iterácie cyklu. Keď prebehne všetko čo je vo vnútri for cyklu, tak vykonáme posledný príkaz a následne sa vykonáva pýtanie sa, či podmienka stále platí.

Tu býva hlavne inkrementácia počítadla iterácií – behu cyklu.

for (int i = 0; i < ints.Length; i++)

Prvé programy

V tomto článku si sa pozrel pod surface ako sa vraví – pod povrch programovacieho jazyka c#. Dôležité je to, že ak sa naučíš aspoň tieto základy budeš vedieť písať prvé vlastné programy.

 

Video C# za 30 minút

Ak máš chuť, pozri si aj video, ktoré som pre teba pripravil na mojom YouTube kanály, kde sa dozvieš to čo je napísané a ešte o trochu viac.

Online video kurz

Ak ti je stále málo a rád by si sa naučil zo C# viac môžeš navštíviť 2 online video kurzy, ktoré sa zaoberajú programovacím jazykom C#. Kurzy nájdeš na learn2code.sk

C# pre začiatočníkov

C# pre mierne pokročilých

Záver

Páčil sa ti článok? Daj mi vedieť.

Moje kurzy: https://www.learn2code.sk/instruktori/jaroslav-beno

Ak sa ti článok páči, tak tu máš viac:

Klikaj na jaroslavbeno.sk – viac blog článkov!

Stolový kalendár a programovanie?

youtube

facebook

instagram.

linkedin.

Ja som Jaro a my sa vidíme, počujeme ak Boh dá nabudúce.

Čaves.

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Cloud Administrátor / REMOTE

Máš pocit, že chceš ísť ďalej? Možno práve v tomto období je ten správny čas. Hľadáme Cloud Administrátora.Práca je...

Integračný Administrátor

Poď sa učiť od profesionálov! Pre medzinárodnú spoločnosti, ktoré sa venujú vývoju databáz hľadáme integračného administrátora.Práca je REMOTE, na...

PL/SQL Developer – REMOTE

Čo tak par mesiacov zamakať z domu a užívať si slobodu? Pre jednu z najväčších spoločnosti, ktoré sa venujú...

.NET Core Developer / REMOTE

Svoju budúcnosť máš vo svojich rukách, skús to teraz ako .NET Core developer. Ide o startup projekt, ktorý vyvíja...

.NET/PLSQL Architect

Rozmýšľaš o práci ako .NET/PLSQL Architect? Je tu možnosť na zmenu, možno hľadáme práve teba.Práca je v nadnárodnej softvérovej...

.NET/C# Developer

Možnosť zmeniť prácu je práve teraz, hľadáme .NET/C# Developera.Práca je v nadnárodnej softvérovej spoločnosti s kanceláriou v Bratislave. Je...

Java Software Architect

Medzinárodná IT spoločnosť, ktorá vyvíja softvér pre banky a poisťovne v západnej Európe hľadá človeka na pozíciu Java Software...

Multibank – študentský projekt FIIT STU, TP CUP 2020

Študentský projekt v súťaží TP Cup - Multibank si dal za cieľ vytvoriť aplikáciu, ktorá vám dá...

Stanovisko Slovensko.Digital k prehodnoteniu projektov eGovernmentu

Doteraz boli veľké štátne IT projekty vedené podobne, ako ich neslávne známy...

How to spot and defend against adversaries’ movements in your network

Dátum: 6 - 7. OKTÓBER 2020 Miesto konania: Ponteo Activity Park, Rusovce...

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.