Das Wuerfelprogramm
Verfasst: Mo Jan 30, 2012 1:57 pm
Hallo Zusammen
Ich moechte gerne ein Wuerfelprogramm schreiben, bei dem man die Art des Wuerfels, die laenge des berechnens und die Anzahl wuerfel eingeben kann, es dann die Wuerfe einzeln ausgibt und sie man dann nach belieben am schluss alle wuerfel zusammenzählen kann. Das Würfeln an sich habe ich hinbekommen, nur das Zusammenzählen funktioniert noch nicht. Ich habe versucht, in der For-Schleife, bei der ich das Wuerfeln in einem Array mitzähle, das einzelne Ergebnis in einem zweiten Array zu speichern. Ich kopiere das komplette Programm da ich echt nicht weiss, was ich falsch mache.....
Code:
Ich bin echt kurz vor der Verzweiflung....könnt Ihr mir helfen?
Gruss
Gabe
Ich moechte gerne ein Wuerfelprogramm schreiben, bei dem man die Art des Wuerfels, die laenge des berechnens und die Anzahl wuerfel eingeben kann, es dann die Wuerfe einzeln ausgibt und sie man dann nach belieben am schluss alle wuerfel zusammenzählen kann. Das Würfeln an sich habe ich hinbekommen, nur das Zusammenzählen funktioniert noch nicht. Ich habe versucht, in der For-Schleife, bei der ich das Wuerfeln in einem Array mitzähle, das einzelne Ergebnis in einem zweiten Array zu speichern. Ich kopiere das komplette Programm da ich echt nicht weiss, was ich falsch mache.....
Code:
Code: Alles auswählen
/* Projekt: Steuerung
Name: Gabriel Bühler
Datum: 30.01.2012
Version: 1.0
Beschreibung: Dies hier ist mein Steuerungsprojekt. Es geht um Würfeln mit verschiedenen Würfeln.
Mit diesem Programm ist es möglich, verschiedene Würfelarten auszuwählen (nach Wunsch auch selber zu definieren zwischen 1 und 5000), zu Würfeln und die
Endergebnisse zusammenzuzählen. Zusätzlich ist eine Hilfe und eine Erklärung über verschiedene Würfelarten vorhanden.
Quellen: Google Bilder, Proggen.org, datasource.de, computerbase.de
*/
#include <iostream>
#include <stdlib.h>
#include <stdio.h> // Die zwei Bibliotheken werden für den Zufallsgenerator verwendet.
#include <windows.h>// Diese Bibliothek ist für den Timer zuständig
#include <conio.h> // Bibliothek um den Bildschirm zu loeschen und das Programm neu zu starten
using namespace std;
int main()
{
char vorauswahl; //Falls man einen vordefinierten Wuerfel moechte, kann man hier auch einen vordefinierten Wuerfel nehmen
int eigenwahl; //FaLlls man eine eigene Wuerfelart eingeben moechte
int wuerfelart; // Variable für die Wuerfelgroesse
int zeit; // Variable fuer den Timer
int wuerfelanzahl; //Variable fuer die Wuerfelanzahl
int wurf =1; // Anzahl Wuerfe um den Ueberblick zu behalten, welcher Wurf gerade dran ist
int menue;
int ergebniszaehler[6000]; //Der Array, der die Werte der ausgegebenen Zahlen speichert
int zaehler = 1; // Die einzelnen Speicherstaende des Arrays
char antowrt; // Die Antwort, ob das Programm die Würfelzahlen zusammenzaehlen soll oder nicht
char antwort; //Antwort, ob man zurück ins Menü möchte
// Die Summe der zusammengezählten wuerfe
menue:
cout << "***********************************************************************" << endl;
cout << "*Hallo und Willkommen zum Wuerfelprogramm *" << endl;
cout << "*Bitte waehlen sie zwischean folgenden Menuepunkte: *" << endl;
cout << "*1: Hilfe *" << endl;
cout << "*2: Wuerfelarten *" << endl;
cout << "*3: Wuerfeln starten *" << endl;
cout << "*4: Beenden *" << endl;
cout << "***********************************************************************" << endl;
cin >> menue;
switch (menue)
{
case 1:
{
do
{
cout << "***********************************************************************" << endl;
cout <<"* HILFE *" << endl;
cout <<"* Das Wuerfelprogramm ist eigentlich sehr simpel. Eine Simulation *" << endl;
cout <<"* Fuehrt ein Wuerfeln aus, bei dem SIE alles bestimmen koennen *" << endl;
cout <<"* (Wuerfelart, dauer des Wurfes, Anzahl der Wuerfel). Sie koennen zwi-*" << endl;
cout <<"* Vordefinierten Wuerfeln waehlen oder selber einen Wuerfel bestimmen.*" << endl;
cout <<"* Nach wunsch koennen sie anschliessend die Summe der ausgegeben *" << endl;
cout <<"* Wuerfelzahlen zusammenzaehlen lassen. Anschliessend koennen sie das *" << endl;
cout <<"* Programm beenden oder nochmals ausfuehren lassen. Viel spass :) *" << endl;
cout <<"***********************************************************************" << endl;
cout <<" Moechten sie zurück zum Menue (j/n)?";
cin >> antwort;
}while(antwort == 'n');
system("cls");
goto menue;
}
case 2:
{
do
{
cout << "***********************************************************************" << endl;
cout << "* WUERFELARTEN *" << endl;
cout << "* Es gibt verschiedenste Wuerfel zum vorwaehlen: *" << endl;
cout << "* D6: Ein normaler 6-Seitiger wuerfel, der am haeufigsten verwendet *" << endl;
cout << "* wird. *" << endl;
cout << "* D20: Ein Wuerfel der in Rollenspielen wie DnD genutzt wird *" << endl;
cout << "* D10: Auch ein Rollenspiel-Wuerfel fuer Dnd und andere. *" << endl;
cout << "* Sie koennen auch einen eigenen Wuerfel definieren. *" << endl;
cout << "***********************************************************************" << endl;
cout <<" Moechten sie zurück zum Menue (j/n)?";
cin >> antwort;
}while(antwort == 'n');
system("cls");
goto menue;
}
case 3:
{
do
{
cout << "***********************************************************************" << endl;
cout << "* WUERFELN *"<< endl;
cout << "***********************************************************************" << endl;
do
{
cout << "Beginnen wir mit dem Wuerfeln" << endl;
cout << " Was fuer eine art Wuerfel moechten sie haben? (6 = 6-Seitiger, 20 = 20-Seitiger, 1 = 10 Seitiger, n = selber auswaehlen" << endl;
cin >> vorauswahl;
if ( vorauswahl == '6')
{
wuerfelart = 6;
}
else if (vorauswahl == '1')
{
wuerfelart = 10;
}
else if (vorauswahl == '2')
{
wuerfelart = 20;
}
else if (vorauswahl == 'n')
{
cout << "Welche wuerfelart moechten sie denn? (nicht hoeher als 5000)" << endl;
cin >> eigenwahl;
wuerfelart = eigenwahl;
}
else
{
cout << " Bitte geben sie ein Befehl aus der Auswahl ein";
}
} while(wuerfelart > 5000);
cout << "Sie haben " << wuerfelart << " gewaehlt" << endl;
cout << " Wie lange sollen die einzelnen Wuerfe dauern? (in Millisekunden)" << endl;
cin >> zeit;
cout << "Wieviele Wuerfel moechten sie?" << endl;
cin >> wuerfelanzahl;
for (int i = 1; i <= wuerfelanzahl; i++)
{
Sleep(zeit);
//int zaehler = 1;
// Variable, die ausgibt welcher Wurf gerade dran ist
srand( time( NULL ) ); // Ab hier Beginnt der Zufallsgenerator, der die Würfelzahlen ausgeben wird.
int wuerfeln[wurf];
wuerfeln[wurf ] = rand() % wuerfelart + 1; // Variable für den Zufallsgenerator
cout << "Der " << wurf << " Wuerfel ist " << wuerfeln[wurf] << endl;
ergebniszaehler[zaehler] = wuerfeln[wurf]; // Das ist der Zaehler der einzelnen Wuerfelergebnisse, um die dann am Schhluss des Programmes ausführen zu lassen.
wurf = wurf + 1;
zaehler = zaehler + 1;
}
cout << "Moechten sie die Summe der zusammengezaehlten Wuerfe? (j/n)" << endl;
cin >> antwort;
if (antwort == 'j')
{
cout << "Folgende Zahlen kamen raus:" << endl;
for (int i = 0; i <=zaehler; i++)
{
zaehler = 0;
cout << ergebniszaehler[zaehler];
zaehler = zaehler + 1;
}
}
cout <<" Moechten sie zurueck zum Menue (j/n)?";
cin >> antwort;
} while(antwort == 'n');
system("cls");
goto menue;
}
}
cin.get();
system("PAUSE");
return 0;
}
Gruss
Gabe