Diskuze: Kalendář
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Ja by som to riešil asi takto:
#include <stdio.h>
typedef enum {
nedela, pondelok, utorok, streda, stvrtok, piatok, sobota
} DEN;
// algoritmus nájdený na stránke: http://rosettacode.org/wiki/Day_of_the_week
int den_v_tyzdni(int den, int mesiac, int rok)
{
int nastavenie, mm, rr;
nastavenie = (14 - mesiac) / 12;
mm = mesiac + 12 * nastavenie - 2;
rr = rok - nastavenie;
return (den + (13 * mm - 1) / 5 + rr + rr / 4 - rr / 100 + rr / 400) % 7;
}
int main()
{
DEN den;
char *nazvy[] = { "nedela", "pondelok", "utorok", "streda", "stvrtok", "piatok", "sobota"};
int dd, mm, rrrr;
printf("Zadajte datum vo formate dd mm rrrr: ");
scanf("%d%d%d", &dd, &mm, &rrrr);
den = den_v_tyzdni(dd, mm, rrrr);
printf("Bol(a) to %s.\n", nazvy[den]);
return 0;
}
Ak chceš niečomu rozumieť, musíš sa aj niečo naučiť.
Začínajúci nezvykne hneď riešiť výčtový typ.
Písal som to v Code:Blocks a tam to funguje bez problémov.
Zobrazeno 6 zpráv z 6.