Informatik2_Pr/farben.c
2025-04-25 13:22:23 +02:00

59 lines
1.5 KiB
C

#include <stdio.h>
#include <string.h>
int farbeIndex(const char *farbe) {
if (strcmp(farbe, "gruen") == 0) return 0;
if (strcmp(farbe, "rot") == 0) return 1;
if (strcmp(farbe, "violett") == 0) return 2;
return -1;
}
int main(){
static const int farben[3][3] = {
{1, 2, 3},
{2, 5, 6},
{3, 6, 9}};
char einlesen;
char ersteEingabe[20], zweiteEingabe[20];
int ersteFarbe = -1,zweiteFarbe = -1;
do {
printf("Erste Grundfarbe (Gruen Rot Violett): ");
scanf("%s", ersteEingabe);
ersteFarbe = farbeIndex(ersteEingabe);
if (ersteFarbe == -1) {
printf("Unbekannte Grundfarbe %s (Neue Eingabe machen)\n", ersteEingabe);
}
} while (ersteFarbe == -1);
do {
printf("Zweite Grundfarbe (Gruen Rot Violett): ");
scanf("%s", zweiteEingabe);
zweiteFarbe = farbeIndex(zweiteEingabe);
if (zweiteFarbe == -1) {
printf("Unbekannte Grundfarbe %s (Neue Eingabe machen)\n", zweiteEingabe);
}
} while (zweiteFarbe == -1);
switch (farben[ersteFarbe][zweiteFarbe]) {
case 1:
printf("Gr\x81n");
break;
case 2:
printf("Gelb");
break;
case 3:
printf("Blau");
break;
case 5:
printf("Rot");
break;
case 6:
printf("Purpur");
break;
case 9:
printf("Violett");
break;
}
}