Seite 1 von 1

Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: Sa Dez 06, 2014 6:02 pm
von MartyMcFly1976
Hallo !

Ich sitze grade an meinen Hausaufgaben und soll ein Programm schreiben das mit zufällig eine Würfelzahl ausgibt. Das funtioniert einwandfrei aber ich möchte das Programm etwas "pimpen" und habe zu jeder Zahl einen Würfel programmiert den ich über die Bildschirmausgabe nun auch Anzeigen möchte.

D.h. Der Zufallsgenerator wirft mir eine drei, dann sollte der Würfel mit der Nummer drei auch angezeigt werden.

Könnte mir da jemand mit einem Tip weiterhelfen ?

Hier mein bis jetzt geschriebenes Programm :

Code: Alles auswählen

#include <stdio.h>
#include"conio.h"
#include <stdlib.h>
#include <time.h>

int main(void)
{
int zufallszahl;
int summe=0;
int eingabe;

printf("\t\t\tWillkommen im W\x81 \brfelprogramm\n\n\n\n");

srand(time(NULL));
printf("\t\t\t Ihre W\x81 \brfelzahl ist %d\n\n",zufallszahl=rand()%6+1);
Bis hierhin funktioniert die Ausgabe der Zufallszahl und nun soll nur noch der passende Würfel Angezeigt werden !

Code: Alles auswählen

//Die Eins Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");

// Die zwei Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");

// Die drei Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");

// Die vier Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");

// Die fünf Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");

// Die sechs Anzeigen

printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xba \xba\n");
printf("\t\t\t\t\xba \xfe \xfe \xba\n");
printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");


getch();

return 0;
}
MfG und Danke schonmal für die Tips !

Marty

Edit by cloidneurx: Code-Tags

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 1:07 pm
von Bebu
Du brauchst ein Konstrollstruktur. Momentan läuft dein Programm einfach von oben nach unten durch und zeigt alle Würfelvarianten an.

Du kannst mit if-else oder mit case arbeiten.
Du kannst jetzt: Jede Anzeigevariante in eine eigene Funktion auslagern, oder eine Funktion schreiben, der du z.B. die Augenzahl mitgibst und dann funktionsintern das richtige Würfelbild ausgegeben wird. Eleganter ist Variante Zwei.

Gruß Bebu

Edit:

PS: Es gibt im Forum Code-Tags, dann kann man deinen Code auch leichter lesen.

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 3:56 pm
von MartyMcFly1976
Hallo !

Hmm, O.K. Danke für den Tip.

Ich hatte schon einen Taschenrechner mit der case Funktion programiert.

Das war aber ein menue was ich dann über ein Symbol zuordnen konnte + - * : ! dieses konnte ich dann einsetzen und die einzelnen case aufrufen. Jetzt hab ich aber nur den Würfelwurf und weiss nicht wo ich das Ergebnis rausziehen soll um es einem Würfel zuzuweisen !

O.K. Ich versuche das mal und dann poste ich es auch mit dem Code Tag !

MfG

Marty

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 4:37 pm
von MartyMcFly1976

Code: Alles auswählen

#include <stdio.h>
#include"conio.h"
#include<stdlib.h>
#include <time.h>

int main(void) 
{	
        int zufallszahl;
        int summe=0;
        int eingabe;
		int (wahl);

		printf("\t\t\tWillkommen im W\x81 \brfelprogramm\n\n\n\n");
        srand(time(NULL));
        printf("\t\t\t Ihre W\x81 \brfelzahl ist %d\n\n",zufallszahl=rand()%6+1);
		switch(wahl)

		
		{
		case 1: //Die Eins Anzeigen
		printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
		printf("\t\t\t\t\xba       \xba\n");
		printf("\t\t\t\t\xba       \xba\n");
		printf("\t\t\t\t\xba   \xfe   \xba\n");
		printf("\t\t\t\t\xba       \xba\n");
		printf("\t\t\t\t\xba       \xba\n");
		printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
		break;
		
				case 2:// Die zwei Anzeigen
				printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
				printf("\t\t\t\t\xba \xfe     \xba\n");
				printf("\t\t\t\t\xba       \xba\n");
				printf("\t\t\t\t\xba       \xba\n");
				printf("\t\t\t\t\xba       \xba\n");
				printf("\t\t\t\t\xba     \xfe \xba\n");
				printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
				break;
						
						case 3:// Die drei Anzeigen
						printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
						printf("\t\t\t\t\xba \xfe     \xba\n");
						printf("\t\t\t\t\xba       \xba\n");
						printf("\t\t\t\t\xba   \xfe   \xba\n");
						printf("\t\t\t\t\xba       \xba\n");
						printf("\t\t\t\t\xba     \xfe \xba\n");
						printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
						break;
						
								case 4:// Die vier Anzeigen
								printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
								printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
								printf("\t\t\t\t\xba       \xba\n");
								printf("\t\t\t\t\xba       \xba\n");
								printf("\t\t\t\t\xba       \xba\n");
								printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
								printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
								break;
								
										case 5:// Die fünf Anzeigen
										printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
										printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
										printf("\t\t\t\t\xba       \xba\n");
										printf("\t\t\t\t\xba   \xfe   \xba\n");
										printf("\t\t\t\t\xba       \xba\n");
										printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
										printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
										break;		
										
												case 6:// Die sechs Anzeigen
												printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
												printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
												printf("\t\t\t\t\xba       \xba\n");
												printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
												printf("\t\t\t\t\xba       \xba\n");
												printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
												printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
												break;
												}	
		getch();

		return 0;
}
So ich hab das nun mal so umgeschrieben !

Leider hab ich das nächste Problem mit Visual Studio.... Ich kann es nicht mehr überschreiben. Es nimmt keine Änderung mehr an die ich am Programm mache.

G.Marty

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 4:46 pm
von Bebu
Bezüglich Visual Studio kann ich dir jetzt nicht auf die schnelle helfen, aber im Programm steckt ein Denkfehler. Woher soll switch deine Zufallszahl kennen?

Lösungstipp: Variable nutzen...

Das mit den Codetags ist perfekt. Du solltest aber über das einrücken nachdenken. Warum rückst du jedes case weiter ein? Die sind gleichberechtigt und hängen nicht voneinander ab.

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 5:00 pm
von MartyMcFly1976
Das Problem mit dem Visual Studio hab ich gelöst ! Man das nervt wenn stundenlang probiert wird und dann sowas !

Programm aud der Liste gelöscht und neu erstellt :-)

So nun hab ich das nochmal sauber neu gerichtet und die "VARIABLE ZUFALLSZAHL" eingesetzt !

Funktioniert super !

Code: Alles auswählen

#include <stdio.h>
#include"conio.h"
#include<stdlib.h>
#include <time.h>

int main(void) 
{	
        int zufallszahl;
        int summe=0;
        int eingabe;

		printf("\t\t\tWillkommen im W\x81 \brfelprogramm\n\n\n\n");
        srand(time(NULL));
        printf("\t\t\t Ihre W\x81 \brfelzahl ist %d\n\n",zufallszahl=rand()%6+1);
		switch(zufallszahl)

		
			{
			case 1: //Die Eins Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba   \xfe   \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;
		
			case 2:// Die zwei Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba \xfe     \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba     \xfe \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;
						
			case 3:// Die drei Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba \xfe     \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba   \xfe   \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba     \xfe \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;
						
			case 4:// Die vier Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;
								
			case 5:// Die fünf Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba   \xfe   \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;		
										
			case 6:// Die sechs Anzeigen
			printf("\t\t\t\t\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xba       \xba\n");
			printf("\t\t\t\t\xba \xfe   \xfe \xba\n");
			printf("\t\t\t\t\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n\n\n");
			break;
			}	
		getch();

		return 0;
}


Danke dir für die Unterstützung mit deinen Tips !

Funktioniert 1a ! Sehr geil !

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 5:29 pm
von Bebu
Kann man. Aber was soll das bringen? Scanf ist dazu da, eine Eingabe beim User abzufragen. Bei einem Würfelprogramm etwas sinnlos, außer du willst den User das Würfeln auf Tastendruck auslösen lassen.

Bei mir funktioniert es schon :P
In dieser Zeile steckt ein Fehler:

Code: Alles auswählen

switch(1,2,3,4,5,6)
Deine Zufallszahl steht in einem Int namens Zufallszahl. Nochmal die Frage: Woher soll diese Switchanweisung wissen, dass sie ausgerechnet mit dem Wert von Zufallszahl vergleichen soll, wenn du es ihr nicht sagst?

Code: Alles auswählen

switch(zufallszahl)
Switch besitzt keine Kristallkugel und sucht auch nicht nach Variablen die im Umfeld stehen. Du musst explizit sagen, womit swich vergleichen soll.

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: So Dez 07, 2014 6:38 pm
von MartyMcFly1976
Hallo !

JA das hab ich gefunden mit dem 1,2,3,4,5,6 und gegen zufallszahl getauscht und oben reingeschrieben das es funktioniert :P :P !

Danke für deine Hilfe so stell ich mir das vor wenn ich was im Forum frage bzw. Poste !

Wünsche dir einen ruhigen Wochenstart !

MfG

Marty

Re: Ausgabe einer Kompletten printf Datei nach Würfelwurf !

Verfasst: Di Dez 09, 2014 1:16 pm
von Xin
MartyMcFly1976 hat geschrieben:JA das hab ich gefunden mit dem 1,2,3,4,5,6 und gegen zufallszahl getauscht und oben reingeschrieben das es funktioniert :P :P !
Für mich war es recht verwirrend, Bebus Antworten zu lesen.

Bitte ändere vorherige Posts nur so, dass ihr ursprünglicher Inhalt erhalten bleibt und vor allem, dass nachfolgende Posts nicht unverständlich werden. Danke. :-)