T
Tigerass 2.0
Gast
Sodale hat etwas länger gedauert war kurz weg
Ich habe dir mal hier Das in etwa so aufgebaut wie es ich machen würde. Das sollte dir die größte Hürde nehmen.
Zur erinnerung, Arrays fangen mit 0 an zu zählen, Also eine wurfel[n]=5 ist eine 6 (in meinem Programm).
Ich habe dir mal hier Das in etwa so aufgebaut wie es ich machen würde. Das sollte dir die größte Hürde nehmen.
Zur erinnerung, Arrays fangen mit 0 an zu zählen, Also eine wurfel[n]=5 ist eine 6 (in meinem Programm).
Code:
int wurfel[5];
void zeichnen()
{
static const char gfx[5][4] = {"OOO","XOO","OXO","OOX","XOX"}; //Grafik aller mögliche Kombinationen, die Ein Würfel Waagrecht haben kann
static const int db[6][3] = {{0,2,0},{1,0,3},{1,2,3},{4,0,4},{4,2,4},{4,4,4}}; //Datenbank für Übersetztung von Würfelwert zu Grafik (Schau sie dir an, du wirst verstehen)
for(int r=0; r<3; r++) //Alle Würfelzeilen durchgehen
{
for(int w=0; w<5; w++) //Alle würfel durchgehen
{
printf("%s", gfx[db[wurfel[w]][r]]); //Magie :D Lös es von innen her auf für besseres Verständnin, wandelt Würfelzahl mit der db in Grafik um
if(w<4){printf("|");} //Am ende kein | Symbol
}
printf("\n"); //Nächste Zeile
}
}
void wurfeln(const char conf[5])
{
for(int n=0; n<5; n++)
{
if(conf[n] == '1'){wurfel[n] = rand()%6;} //gewählte würfel neu würfeln
}
return;
}
int main(int argc, char **argv)
{
srand(time(0));
wurfeln("11111"); //initialisierung
zeichnen();
printf("3+4 Neu Wuerfeln\n");
wurfeln("00110"); //entweder
//wurfel[2] = rand()%6; wurfel[3] = rand()%6; //oder
//die oder variante ist besser, falls du jedes mal frägst ob Würfel x beibehalten werden soll, die entweder variante, wenn man auf einmal seine Wahl im Format 10101 eingibt.
//Werte die beibehalten werden sollen, einfach keinen neuen zufallswert zuweisen.
zeichnen();
system("pause");
return 0;
}
Zuletzt bearbeitet: