From aace8845a8d3fdcc5bd5a8027431366e72693764 Mon Sep 17 00:00:00 2001 From: suciptofo95159 Date: Mon, 28 Apr 2025 23:58:07 +0200 Subject: [PATCH] =?UTF-8?q?funktioniert=20aber=20hat=20keine=20Eingabe?= =?UTF-8?q?=C3=BCberpr=C3=BCfung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jahrtag.c | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 jahrtag.c diff --git a/jahrtag.c b/jahrtag.c new file mode 100644 index 0000000..3164898 --- /dev/null +++ b/jahrtag.c @@ -0,0 +1,77 @@ +#include + +void textAusgabe() { + printf("0 Ende\n" + "1 Tagesnummer zu einem Datum bestimmen\n" + "2 Datum zu einer Tagesnummer bestimmen\n"); +} + +void eingabeDatum(int *tag, int *monat, int *jahr) { + printf("Gib dein Datum (tt.mm.jjjj) ein: "); + scanf("%d.%d.%d", tag, monat, jahr); +} + +void eingabeTag(int *tag, int *jahr) { + printf("Gib Tagesnummer und Jahr (nr,jahr) ein: "); + scanf("%d,%d", tag, jahr); +} + +int eingabeWahl() { + int input; + printf("Deine Wahl: "); + scanf("%d", &input); + return input; +} + +int istSchaltjahr(int jahr) { + return (jahr % 4 == 0 && (jahr % 100 != 0 || jahr % 400 == 0)); +} + + +int main() { + int input, tag, monat, jahr, TagImJahr,schalt; + + int monat_tage[2][13] = { + { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }, + { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } + }; + input = 1; + + do{ + textAusgabe(); + input = eingabeWahl(); + + switch(input) { + case 0: + printf("Programm beendet.\n"); + break; + case 1: + eingabeDatum(&tag, &monat, &jahr); + schalt = istSchaltjahr(jahr); + TagImJahr = 0; + + for(int i = 1;i monat_tage[schalt][i]) { + tag -= monat_tage[schalt][i]; + i++; + } + monat = i; + printf(".... %d. Tag im Jahr = %d.%d.%d\n", TagImJahr, tag, monat, jahr); + + } + } while (input != 0); + return 0; +} \ No newline at end of file