Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.

1/1

Zdrojové soubory z výuky

Na této stránce jsou k dispozici zdrojové soubory, které jsem vytvářel při výkladu během výuky. Nejsou to ukázkové a bezchybné zdrojové soubory. Ba naopak, jsou to pracovní neučesané verze, které vznikaly interaktivně ve výuce, často s cílem ukázat, že "takto se to nemá".

20110207-Mon-dec2x.c
   1 /*
   2  * Soubor:  20110207-Mon-dec2x.c
   3  * Datum:   07.02.2011 10:23
   4  * Autor:   Marek Nožka, nozka <@t> spseol <d.t> cz
   5  * Licence: GNU/GPL 
   6  * Úloha:   program převede číslo z dekadické soustavy do osmičkové (oktalové),
   7  *          šestnáctkové(hexadecimální) a dvojkové (binární)
   8  ****************************************************/
   9 #define _ISOC99_SOURCE
  10 #define _GNU_SOURCE
  11 #include <stdio.h>
  12 
  13 /* ***************    Makra    ******************** */
  14 
  15 /* ***************   Funkce    ******************** */
  16 
  17 /****************************************************
  18  *               Hlavní program.
  19  ****************************************************/
  20 int main(void)
  21 {
  22     int cislo;
  23 
  24     scanf("%d", &cislo);
  25     printf("16: %X\n", cislo);
  26     printf("10: %d\n", cislo);
  27     printf(" 8: %o\n", cislo);
  28     printf(" 2: ");
  29 
  30     /* tisk posledních dvou byte-u */
  31     //int maska = 0x80;
  32     //int maska = 32768;
  33     int maska = 1 << 15;
  34     /* výpis hodnoty jednoho bitu, který je určen maskou */
  35     for (int i = 1; i <= 16; i++) {
  36         /*if ((cislo & maska) > 0) {
  37            putchar('1');
  38            } else {
  39            putchar('0');
  40            } */
  41         printf("%d", (cislo & maska) > 0 ? 1 : 0);
  42             if (i % 4 == 0) {
  43             if (i % 8 == 0) {
  44                 putchar('.');
  45             } else {
  46                 putchar(' ');
  47             }
  48         }
  49         //maska = maska >> 1;
  50         maska >>= 1;
  51     }
  52     putchar('\n');
  53 
  54     return 0;
  55 }
`--> stáhnout

Licence Creative Commons Valid XHTML 1.0 Strict Valid CSS! Antispam.er.cz Blog: Tlapicka.net