diff --git a/kwrechner/kwrechner.cpp b/kwrechner/kwrechner.cpp index e48d7ef..864ac25 100644 --- a/kwrechner/kwrechner.cpp +++ b/kwrechner/kwrechner.cpp @@ -42,7 +42,7 @@ int datum::getJahr() bool datum::schaltjahrBestimmen(int jahr) { bool sjahr = 0; if (!((jahr % 4) || !(jahr % 100)) || !((jahr % 4) || (jahr % 400))) - bool sjahr = 1; + sjahr = 1; return sjahr; } @@ -118,21 +118,21 @@ int datum::kwBerechnen() int offset = 0; int kw = 0; - if (wochentagErste < 4) + if (wochentagErste < 4) offset = wochentagErste - 2; else offset = (8 - wochentagErste) % 7; - kw += 1; + kw += ((tage + offset) / 7); if (kw == 0) kw = 53; - if (kw == 53) + else if (kw == 53) { datum datum1(1, 1, jahr + 1); - if (datum1.kwBerechnen() == 1 && datum1.wochentag() < 4) + if (datum1.wochentag() < 4) kw = 1; } @@ -142,7 +142,7 @@ int datum::kwBerechnen() int main() { - datum datum2(30, 12, 2019); + datum datum2(7, 3, 2016); int w = datum2.kwBerechnen(); cout << "kw: " << w; } \ No newline at end of file