Nazwa dnia tygodnia z tablicy znaków
Projekt: wieczny kalendarz - Podstawy C++ (C++)
Numer dnia zamieniamy na nazwę. Nazwy trzymamy w tablicy dwuwymiarowej znaków (każda nazwa to wiersz znaków). Indeks 0 to poniedzialek.
#include <iostream>
using namespace std;
bool przestepny(int r) {
return (r % 4 == 0 && r % 100 != 0) || r % 400 == 0;
}
int dniMiesiaca(int m, int r) {
int dni[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (m == 2 && przestepny(r)) {
return 29;
}
return dni[m - 1];
}
int dzienTygodnia(int d, int m, int r) {
int suma = 0;
for (int y = 1; y < r; y++) {
suma += przestepny(y) ? 366 : 365;
}
for (int mc = 1; mc < m; mc++) {
suma += dniMiesiaca(mc, r);
}
suma += d - 1;
return suma % 7;
}
int main() {
char nazwy[7][13] = {"poniedzialek", "wtorek", "sroda", "czwartek",
"piatek", "sobota", "niedziela"};
int w = dzienTygodnia(28, 6, 2026);
cout << "28.06.2026 to " << nazwy[w] << endl;
return 0;
} Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Podstawy C++ · Zaloguj się, aby zapisać postęp na koncie.