Programovanie

dzI/O

Programovanie

naučím ťa programovať...

v2.43 08.09.2017 20:48

O programovaní

úvod do programovania

Algoritmy

ako riešiť úlohy...

Objektové programovanie

všetko je objekt...

Táto časť infobázy sa momentálne pripravuje...
Buď prosím trpezlivý...

O programovaní

úvod do programovania

v1.22 24.08.2017 01:49

Možno si myslíš, že programovanie je náročná činnosť a vyžaduje si nejaké špeciálne zručnosti...

Ale nie je to celkom tak...

Snáď každý z nás programuje denne a ani si to neuvedomuje...
Chceš si pripraviť praženicu?
alebo...
Vymeniť koleso na automobile?
Tak vlastne programuješ ;)
Vykonávaš proces, ktorý sa skladá z nejakých krokov tak aby si splnil určitú úlohu...

No a ak ten proces dokážeš aj opísať tak si vlastne programátor...

My programátori sa zaoberáme tým, že sa snažíme dospieť k určitému cieľu...

No a počítačoví programátori vlastne len vysvetľujú počítaču čo má urobiť (ako dospieť k cieľu) tak aby tomu rozumel...

Používame na to špeciálne jazyky, ktoré boli vytvorené pre nás ľudí a počítač na základe nejakého kúzla vie čo má robiť...

Rozmýšľať a písať v takomto jazyku je akoby si rozmýšľal a písal v cudzej reči...

Naučíš sa pravidlá a princípy daného jazyka a potom už len smelo tvoríš niečo čo voláme programy...

Niekedy tomu nadávame aj software ;)

Je to poväčšinou užitočná pomôcka pre iných ľudí, ktorá im zvykne zjednodušovať ich prácu...

Robí to, čo vymyslel programátor...

Z môjho pohľadu tvorí dušu počítača ak za jeho telo považujeme tú krabičku, ktorú máme na stole...

Rád by som ťa naučil všetkému čo viem o programovaní a tomto je táto infobáza...

Algoritmy

ako riešiť úlohy...

v1.57 24.08.2017 00:56

Úvod do algoritmov

čo je algoritmus...

Vlastnosti algoritmov

aké sú algoritmy...

Etapy algoritmizácie úloh

postup pri riešení úloh

Príklad algoritmu

na vytvorenie predstavy...

Úvod do algoritmov

čo je algoritmus...

v1.36 24.08.2017 00:54

Čo je to algoritmus?
Predstav si, že máš vyriešiť nejakú úlohu...

Úloha je zadefinovaná pomocou zadania...
Algoritmus je postup riešenia takejto úlohy...
Skladá sa z krokov, ktoré sú postupne vykonávané a definujú riešenie úlohy rozdelené na jednotlivé čiastky...
V tejto časti sa dozvieš aké vlastnosti má algoritmus, aký je postup pri riešení úloh ale ukážeme si aj nejaký algoritmus...

Vlastnosti algoritmov

aké sú algoritmy...

v1.31 21.11.2016 21:01

Konečnosť (Rezultatívnosť)
Každý algoritmus musí skončiť po vykonaní konečného počtu krokov. Tento počet krokov môže byť ľubovoľne veľký (podľa rozsahu a hodnôt vstupných údajov), ale pre každý jednotlivý vstup musí byť konečný. Postupy, ktoré túto podmienku nespĺňajú, sa môžu nazývať výpočtové metódy. Špeciálnym príkladom nekonečnej výpočtovej metódy je reaktívny proces, ktorý priebežne reaguje s okolitým prostredím.
Determinizmus
Každý krok algoritmu musí byť jednoznačne a presne definovaný; v každej situácii musí byť úplne zrejmé, čo a ako sa má vykonať, ako má vykonávanie algoritmu pokračovať. Pretože bežný jazyk zvyčajne neposkytuje úplnú presnosť a jednoznačnosť vyjadrovania, boli pre zápis algoritmov navrhnuté programovacie jazyky, v ktorých má každý príkaz jasne definovaný význam. Vyjadrenie algoritmu v programovacom jazyku sa nazýva program.
Vstup
Algoritmus zvyčajne pracuje s nejakými vstupmi, veličinami, ktoré sú mu odovzdané pred začatím jeho vykonávania, alebo v priebehu jeho činnosti. Vstupy majú definované množiny hodnôt, ktoré môžu nadobúdať.
Výstup
Algoritmus má aspoň jeden výstup, veličinu, ktorá je v požadovanom vzťahu k zadaným vstupom, a tým tvorí odpoveď na problém, ktorý algoritmus rieši.
Efektivita
Všeobecne požadujeme, aby algoritmus bol efektívny, v tom zmysle, že požadujeme, aby každá operácia požadovaná algoritmom, bola dostatočne jednoduchá na to, aby mohla byť aspoň v princípe prevedená v konečnom čase iba s použitím ceruzky a papiera.
Všeobecnosť (hromadnosť)
Algoritmus nerieši jeden konkrétny problém (napr. „ako vypočítať 3×7“), ale rieši všeobecnú triedu obdobných problémov (napr. „ako vypočítať súčin dvoch celých čísel“).

Etapy algoritmizácie úloh

postup pri riešení úloh

v1.17 21.11.2016 21:05

Formulácia úlohy
Prvým predpokladom, aby sme danú úlohu mohli riešiť na počítači, je jej jasná a jednoznačná formulácia a identifikácia, ako aj ujasnenie cieľa, ktorý sledujeme riešením príslušnej úlohy. Za tým nasleduje tzv. formulácia problému, napr. matematickými prostriedkami (modelom), čiže problém musíme formalizovať pomocou nejakej sústavy vzťahov medzi premennými a konštantami. Formalizovanie konkrétnej úlohy si spravidla vyžaduje individuálny prístup, adaptáciu štandardných postupov, príp. nový typ modelu. Na formalizáciu možno použiť aj iný spôsob ako matematický, môže to byť napr. grafický model. Pre riešenie úloh na počítači je však matematická formulácia najvhodnejšia.
Analýza úlohy
V tejto etape je potrebné nájsť algoritmus riešenia úlohy. Zisťuje sa, či úloha je riešiteľná, či má jedno alebo viac riešení, načrtávajú sa možnosti riešenia a rozhoduje sa o druhu metód. Vytypovaná metóda riešenia musí zabezpečovať dosiahnutie požadovaných výsledkov (výstupné informácie), ale zároveň musí presne určiť, ktoré vstupné údaje budú potrebné. Úloha sa zovšeobecňuje a uskutočňuje sa prvá predstava o algoritmickej riešiteľnosti.
Zostavenie riešiaceho algoritmu
Po správnej formulácii a analýze úlohy nasleduje etapa syntetickej činnosti, v ktorej sa popíše logika a postup riešenia úlohy. Výsledkom tejto etapy je riešiaci algoritmus. Do tejto etapy môžeme zahrnúť aj programovanie úlohy. Pod pojmom programovanie rozumieme činnosť, pomocou ktorej sa uskutočňuje prevod úlohy z ľudského vedomia do formy vhodnej pre spracovanie na počítači. Výsledkom tejto činnosti je program. Program je algoritmus v takej forme, ktorej rozumie počítač, t. j. program je zápis algoritmu v niektorom programovacom jazyku.

Príklad algoritmu

na vytvorenie predstavy...

v1.34 24.08.2017 00:56

Ako vymeniť obsah dvoch pohárov, kde v jednom je voda a v druhom vodka...
Predstav si situáciu, že máš dva poháre, kde v jednom je voda a v druhom vodka...

Úlohou je vymeniť obsah týchto pohárov...
Postup (algoritmus) :
1. Zober tretí pohár...
2. Do prázdneho tretieho pohára prelej vodu z prvého pohára...
3. Do prázdneho pohára v ktorom bola voda nalej vodku z druhého pohára...
4. Do prázdneho pohára v ktorom bola vodka prelej vodu z tretieho pohára...
5. Odlož prázdny tretí pohár...
A máme hotovo ;)

Objektové programovanie

všetko je objekt...

v1.55 08.09.2017 20:48

Úvod do objektového programovania

čo je objektové programovanie...

Škatuľky

o čom to celé je...

Úvod do objektového programovania

čo je objektové programovanie...

v1.46 24.08.2017 00:44

Všade okolo nás sú objekty...
Objekt je niečo s čím sa stretávame v živote...

Môže sa jednať o nejakú hmotnú vec ale aj o niečo abstraktné...

Objekt je teda napríklad:
Pes, ktorý šteká na dvore...
Lietadlo, ktoré pristálo na letisku...
Človek na ktorého práve pozeráš...
Myšlienka, ktorá ti preletela hlavou...
Čas, ktorý kráča niekam do nenávratna...
Prosto čokoľvek čo existuje v realite či ríši fantázie a vieš o tom niečo povedať...
Objekt je možné opísať...

Zadefinovať aké má vlastnosti a čo je schopný vykonať...
Stačí len zodpovedať nasledujúce otázky o objekte:
AKÝ JE? (aké má vlastnosti)
ČO ROBÍ? (aké má metódy resp. funkcie)
Takáto špecifikáciu objektu sa volá Trieda...

Systém sa teda skladá z objektov...

A programátor píše program tak, že definuje triedy na základe ktorých vzniknú v systéme objekty, ktoré medzi sebou interagujú...

Škatuľky

o čom to celé je...

v1.10 08.09.2017 20:48

Hra sa so škatuľkami
Všetko čo my programátori robíme je, že sa hráme so škatuľkami...

Škatuľky máme na to aby sme v nich čosi ukryli...

Niečo dôležité...

To niečo sú dáta - informácie...

V jednej škatuľke sa môže skrývať nejaké číslo a v inej zas konkrétny text...

To sú škatuľky jednoduché...

A potom sú tu špeciálne škatuľky, ktoré obsahujú v sebe viacero dát vo forme objektu...

Objekt je niečo čo má v sebe ďalšie škatuľky plus dokáže s týmito škatuľkami v sebe rôzne manipulovať...

Takže to zhrniem...

Škatuľka slúži na uchovanie niečoho a je konkrétneho typu aby bolo jasné čo sa s obsahom škatuľky môže robiť...

Napríklad ak škatuľka obsahuje číslo tak dané číslo je možné sčítať s iným číslom, ktoré môže byť v inej škatuľke...

Ak sa stretneš s pojmom atribút, vlastnosť či premenná tak vedz, že sa jedná o takúto škatuľku...