Škôlka jazyka C
http://skolka-jazyka-c.freespace.sk/

Poznámka k prvej lekcii
http://skolka-jazyka-c.freespace.sk/viewtopic.php?f=56&t=638
Stránka 1 z 1

Autor:  popolvar [ 19 Júl 2013, 15:05 ]
Predmet príspevku:  Poznámka k prvej lekcii

Ahoj, Libcosenior !
Prechádzajúc prvou lekciou som do bodky opísal príklad z odstavca 1.7, lenže výsledok nezodpovedal predpokladu. Až po zmene v jednom riadku kódu sa dostavil Tebou predpokladaný efekt.
Pripájam dva obrázky.

Prílohy:
Ashampoo_Snap_2013.07.18_13h58m15s_002_.png
Ashampoo_Snap_2013.07.18_13h58m15s_002_.png [ 14.52 KiB | Zobrazené 1904 krát ]
Ashampoo_Snap_2013.07.19_13h43m44s_001_.png
Ashampoo_Snap_2013.07.19_13h43m44s_001_.png [ 13.79 KiB | Zobrazené 1904 krát ]

Autor:  libcosenior [ 19 Júl 2013, 21:40 ]
Predmet príspevku:  Re: Poznámka k prvej lekcii

Ďakujem za upozornenie. (už som to v lekcii opravil)
Ten chybný riadok:
Kód:
   putchar(c >= 'a' && c<= 'z' ? c + 'A' + 'a' : c);

mal byť takto:
Kód:
   putchar(c >= 'a' && c<= 'z' ? c + 'A' - 'a' : c);

Pričom 'A' má dekadickú hodnotu 65 a 'a' hodnotu 97, teda rozdiel medzi nimi je -32 a z matiky vieme, že + - je mínus
Bola tam chyba v operátore.
Je síce pravda, že sa dá zapamätať číslo rozdielu medzi malým a veľkým písmenom, ale jednoduchšie je to riešiť rozdielom medzi nimi.
Teda prevod z veľkých písmen na malé by bol:
Kód:
   putchar(c >= 'A' && c<= 'Z' ? c + 'a' - 'A' : c);

ale to už je jasné z predchádzajúceho.

Stránka 1 z 1 Všetky časy sú v GMT + 1 hodina
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/