Diskusia:Základy informatiky - jazyk C

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání

Algoritmus

  • chýbajú mi tam vlastnosti algoritmu, ako som ich mal definované v svojej prednáške
  • Obrázky musia byť pekné. určite nie rozmazané ani príliš zväčšené.
  • obr "Jednoduché opakovanie": to je trocha zavádzajúci obrázok, Do rozhodovania môže byt len 1 vstup
  • Príklad na riešenie kvadr. rovnice: tam je potrebné doplniť matematický rozbor úlohy.
  • Príklad pomocou vývojového diagramu - obrázok nech nie je orámovaný. Nech je čitateľný a dostatočne veľký. V príklade chýba analýza, kde sa povie ako sa úloha rieši.

Booleova algebra

  • namiesto elektrických schém použiť nejaký príklad. napr: AND: interval (a,b), OR: interval (-inf,a) OR (b,+inf). Niečo z informatiky alebo matematiky.
  • zdroják: premenné nech sú malé písmená.

Algoritmus

  • chýbajú mi tam vlastnosti algoritmu, ako som ich mal definované v svojej prednáške
  • Obrázky musia byť pekné. určite nie rozmazané ani príliš zväčšené.
  • obr "Jednoduché opakovanie": to je trocha zavádzajúci obrázok, Do rozhodovania môže byt len 1 vstup
  • Príklad na riešenie kvadr. rovnice: tam je potrebné doplniť matematický rozbor úlohy.
  • Príklad pomocou vývojového diagramu - obrázok nech nie je orámovaný. Nech je čitateľný a dostatočne veľký. V príklade chýba analýza, kde sa povie ako sa úloha rieši.

štruktúra kódu

  • pre príkazy preprocesora by som vytvoril samostatnú stránku, kde budú všetky príkazy #include, #define, #if, #ifdef, #ifndef, ...
  • v ďalších častiach by mali byť odkazy na stránky s podrovným opisom danej časti: napr. funkcie, premenné, operátory, ...
  • citujem "typ-určuje čo sa do danej premennej bude vkladať." typ - určuje typ premennej, či sa jedná o číslo, znak, pole, alebo iný typ
  • doplniť blokový príkaz, resp. blok, ktorý je definovaný v zložených zátvorkách. V prednáškach som to mal.

dátové typy, premenné

  • treba uviesť, že jazy C je typový jazyk, teda type premenných sú dané pri ich deklarácii. A typ premennej sa potom už nedá zmeniť.
  • Základné dátové typy - ten poslený stĺpec v tabuľke by som tam neuvázal. To sa hodí až pri formátovanom vstupe/výstupe
  • Integer. Citujem: "Integer sú celé čísla, ktoré neobsahujú zlomkovú zložku, na rozdiel od reálnych čísel (pohyblivá čiarka, v C-reči)." To je zlý strojový preklad. Preformulovať. Sformátovať zdroják
  • Char: "Char(znak) je najzákladnejší typ" Ak je niečo základné, môže to byť ešte základnejšie??
  • citujem: "Typ znaku je však celé číslo, pretože pod písmenom C sú uložené celé čísla namiesto znakov. " Zle formulované, stráca sa význam.
  • v texte je výraz ASCII. Treba to použiť takto: ... kódom je ASCII (American Standard Code for Information Interchange)
  • v tabuľke ASCII sú ešte dôležité znaky ako napr. nový riadok, tabulátor, medzera, ....
  • citujem: "Ak chcete získať znaky v jazyku C, použite funkciu printf () s% c". Správne by malo byť: použite funkciu printf() s s formátom vypisovaných hodnôt %s (ako je to použité v nasledujúcom zdrojovom kóde, riadok 8). A nie je to prevod na integer, ale celočíselá reprezentácia znaku c podľa tabuľky ASCII
  • float: odkiaľ máte, že je to presnosť na 7 desatinných miest?
  • príklad na float je zlý: podiel dvoch celých čísel je opäť celé číslo.
  • Premenné. Začať definíciu "Premmenná nie je...." nie je šťastné. Vždy začínajte premenná JE ....
  • previdlá pre pomenovanie premennej dajte ako odrážkový zoznam
  • obrázok s modrými blokmi odstrániť.
  • obrázok pod ním, tiež dať do preč.
  • statické premenné. napr tu: https://www.geeksforgeeks.org/static-variables-in-c/
  • auto variables : https://www.geeksforgeeks.org/storage-classes-in-c/ ; ten obrázok v tomto linku je veľmi dobrý. treba ho preložiť a použiť. Ďalšia dobrá referencia pre triedy úložiska v C: https://www.scaler.com/topics/storage-classes-in-c/.
  • Deklarácia a inicializácia premenných v jazyku C: v tom zdrojáku je prvý riadok niečo, či nie je kód. Treba to dať mimo zdroják

Operátory

  • chýba rozdelenie na unárne, binárne a ternárne operátory. V tom texte sú zmiešané unárne a binárne operátory.
  • chýbajú logické operátory OR, AND
  • chýba priorita operátorov
  • Operátor a následné priradenie: v zdrojáku namiesto tých bodiek, dať to celé do komentára
  • Miskuidné operátory: sizeof vracia počet bytov, nie bitov.


vstupno/výstupné operácie

  • treba povedať, že v C, keďže vychádza z OS UNIX všetko považuje sa súbor. Teda súbor je klávesnica, monitor, tlačiareň. Tieto súbory majú špecifické názvy a sú priradené ku konkrétnemu hardvéru. V C je toto priradenie urobené cez prúdy stdin, stdout, stderr.
  • text rozdeliť na:
    • načítanie/výpis znaku
    • načítanie/výpis riadku
    • formátovaný výpis/načítanie
  • pri konktérnych funkciách doplniť link na špecifikáciu konkrétnych funkcií.
  • Funkcie gets(), puts(): v texte máte uvedenú funkciu get() !!. Funkcia gets() vracia NULL ak sa nepodarí načítať. Treba to v kóde ošetriť.


Podmienky

  • rozdeliť syntax na
    • zjednodušený zápis (if)
    • kompletný zápis (if-else)
  • Základný syntax: text ohľadne zložených zátvoriek nie je šťastne naformulovaný. Zložené zátvorky nám vyhradzujú blok kódu.
  • vysveltenie príkazov: chýba sémantika
  • Príklad: (ten ktorý tam máte). nie je povedané čo riešite.
  • switch-case:
    • syntax uviesť v celku, nie vo viacerých blokoch
    • chýba sémantika


Cykly

  • obrázky: nie farebné, len slovesnké
  • namiesto "Vstupom riadený cyklus" dajte cykly s podmienkou na začiatku.
  • Cyklus for:
    • sémantika je vlastne vysvetlená v tom vývojáku
    • teba povedať, že veštry 3 časti sú nepovinné
  • "Hello World skrz cyklus for" je nie moc dobrá formulácia. Správne: "Výpis 10x Hello world s použitím cyklu for"
  • While cyklus. Správne: Cyklus while
    • najskôr definovať syntax, potom sémantiku, potom príklad
    • citujem "Cyklus while pozostáva z troch príkazov ako cyklus for - inicializačný výraz, testovací výraz, aktualizačný výraz". Nie je pravda. Cyklus while má len podmienku.
  • Do while cyklus. Správne: Cyklsu do-while
  • "Program tabuľky pre dané číslo pomocou cyklu do while" nie je jasné, čo chcete povedať



Polia

  • hodil by sa nejaký obrázok, ktorý by ilustroval, že prvky pola sú v pamäti uložené za sebou
  • pri deklarácii poľa musí byť povedané, že veľkosť je konštanta (nie premenná) - aj pri 2rozmerných
  • chýbajú operácie ktoré sa môžu/nemôžu s poľom robiť. Napr. ako celé pole vynulujem? Ako porovnám 2 polia?, ako pridadím pole? ....

Funkcie

  • "Každý program C má najmenej jednu funkciu, ktorá je hlavná ()" -> ktorá sa volá main()... mne sa to zdá že je to len preložené translatorom. Mám pravdu?
  • toto tu chce celé prekopať:
  • rozdelenie funkcií:
    • bez/s návratovej hodnoty
    • bez/s parametrami
  • použitie funkcií:
    • definícia/deklarácia funckie
    • zavolanie funkcie

Súbory

  • "mód" nie je po slovensky správne. Správne je režim
  • treba tam aspoň do nejakej tabuľky uviesť funkcie, ktoré majú súvis so súbormi
  • v tom príklade sú použité aj iné funkcie (fputc, rewind, ...). Treba to pred príkaldom spomenúť a doplniť link na danú funkciu

Štruktúry

  • súhrnne treba spísať povelené a nepovolené operácie (porovnenie, priradenie, ...)
  • treba explicitne vysvetliť ako pristupujem k položnám štruktúry (oprerátor bodka), ako načítam štruktúru, ako ju vypíšem