Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
1/1
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á".
1 /*
2 * Soubor: 20120105-Thu-matice-obrazek.c
3 * Datum: 05.01.2012 08:27
4 * Autor: Marek Nožka, nozka <@t> spseol <d.t> cz
5 * Licence: GNU/GPL
6 * Úloha:
7 * Popis:
8 ****************************************************/
9 #define _ISOC99_SOURCE
10 #define _GNU_SOURCE
11 #include <stdio.h>
12 #include <stdbool.h>
13
14 #define RADKU 128
15 #define SLOUPCU 128
16
17
18 /****************************************************
19 * Hlavní program.
20 ****************************************************/
21 int main(void)
22 {
23 int i, j;
24 char barva;
25 char matice[RADKU][SLOUPCU];
26
27 /* - je černá
28 * + je bílá */
29
30 /* naplním matici daty */
31 for (i = 0; i < RADKU; i++) {
32 // barva = i % 2 == 0 ? '+': '-';
33 if (i % 2 == 0) {
34 barva = '+';
35 } else {
36 barva = '-';
37 }
38 for (j = 0; j < SLOUPCU; j++) {
39 matice[i][j] = barva;
40 }
41 }
42
43 /* uložím matici do obrázku */
44 FILE *soubor;
45 soubor = fopen("matice.xpm", "w");
46 fprintf(soubor, "! XPM2\n%d %d 2 1\n",RADKU,SLOUPCU);
47 fprintf(soubor, "- c #000000\n");
48 fprintf(soubor, "+ c #ffffff\n");
49 for (i = 0; i < RADKU; i++) {
50 for (j = 0; j < SLOUPCU; j++) {
51 fputc(matice[i][j], soubor);
52 }
53 fputc('\n', soubor);
54 }
55
56 fclose(soubor);
57
58
59 return 0;
60 }