ich muss derzeit für die Schule ein Lottoprogramm schreiben, es funktioniert alles aber ich habe noch etwas Probleme mit der Ausgabe.
Hier der Quellcode:
Code:
//Headerdateien
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <windows.h>
using namespace std;
//************************************************** ************************************************
//Prototypen
void tippen(int*);
void ausgeben(int*);
void ziehen(int*);
void sortieren(int*);
void auswerten(int*,int*);
bool doppelt(int*,int);
void gotoxy(int x, int y);
//************************************************** ************************************************
//************************************************** ************************************************
//Hauptprogramm
int main()
{
//Variablen und Arrays deklarieren
int ar_tipp[6];
int ar_ausgeben[6];
int ar_lotto[6];
char wiederholen;
int zeichen;
system("cls");
//Funktionsaufruf "Tippen"
for(int i=1;i<=8;i++)//Ecke Links oben
{
gotoxy(15,i);//position des Koersers
zeichen= 201;
cout<<zeichen<<"\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 12);
gotoxy(15,1);
cout<<"xxx xxxx xxxxxxxxx xxxxxxxxx xxxx " <<endl;
gotoxy(15,2);
cout<<"xxx xx xx xxxxxxxxx xxxxxxxxx xx xx "<<endl;
gotoxy(15,3);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,4);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,5);
cout<<"xxx xx xx xx xx xx xx " <<endl;
gotoxy(15,6);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,7);
cout<<"xxxxxxx xx xx xx xx xx xx " <<endl;
gotoxy(15,8);
cout<<"xxxxxxx xxxx xx xx xxxx "<<endl;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 14);
gotoxy(30,11);
cout<<"Willkommen zum Lottospiel."<<endl;
gotoxy(25,13);
cout<<"Bitte geben sie 6 von 49 Zahlen ein"<<endl;
tippen (ar_tipp);
ziehen (ar_lotto);
auswerten (ar_tipp, ar_lotto);
cout<<"\nMoechten sie nochmal spielen? -J/N"<<endl;
cin>>wiederholen;
if(wiederholen=='j')
{
main();
}
return 0;
}
//************************************************** ************************************************
//Unterprogramme
//Unterprogramm "Tippen" usw.
void tippen(int* ar_tipp)
{
for(int i=0; i<6; i++)
{ gotoxy(2, i+15);
cout<<i+1<<". Tipp: ";
cin>>ar_tipp[i];
if(ar_tipp[i]<1 || ar_tipp[i]>49)
{
gotoxy(5,22);
cout<<"Der gewuenschte Tipp ist nicht gueltig"<<endl;
i--;
}
if(doppelt(ar_tipp,i))
{
gotoxy(5,22);
cout<<"Die Zahl wurde bereits schon eingegeben! Bitte Eingabe wiederholen."<<endl;
i--;
}
}
system("cls");
ausgeben(ar_tipp);
}
//************************************************** ************************************************
//Unterprogramm "Ausgeben" usw.
void ausgeben(int* ar_ausgeben)
{
int temp1;
int zeichen;
for(int i=1;i<=8;i++)//Ecke Links oben
{
gotoxy(15,i);//position des Koersers
zeichen= 201;
cout<<zeichen<<"\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 12);
gotoxy(15,1);
cout<<"xxx xxxx xxxxxxxxx xxxxxxxxx xxxx " <<endl;
gotoxy(15,2);
cout<<"xxx xx xx xxxxxxxxx xxxxxxxxx xx xx "<<endl;
gotoxy(15,3);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,4);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,5);
cout<<"xxx xx xx xx xx xx xx " <<endl;
gotoxy(15,6);
cout<<"xxx xx xx xx xx xx xx"<<endl;
gotoxy(15,7);
cout<<"xxxxxxx xx xx xx xx xx xx " <<endl;
gotoxy(15,8);
cout<<"xxxxxxx xxxx xx xx xxxx "<<endl;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 14);
gotoxy(30,11);
cout<<"Willkommen zum Lottospiel."<<endl;
gotoxy(25,13);
cout<<"Bitte geben sie 6 von 49 Zahlen ein"<<endl;
cout<<"\nIhr Tipp:"<<endl;
for(int i=0; i<6; i++)
{
for(int j=0; j<6;j++)
{
if(ar_ausgeben[j]>ar_ausgeben[j+1])
{
temp1=ar_ausgeben[j];
ar_ausgeben[j]=ar_ausgeben[j+1];
ar_ausgeben[j+1]=temp1;
}
}
}
for(int k=0; k<6;k++)
{
cout<<k+1<<". Zahl= "<<ar_ausgeben[k]<<"\n"<<endl;
}
}
//************************************************** ************************************************
//Unterprogramm "Ziehen" usw.
void ziehen(int* ar_lotto)
{
srand((unsigned)time(NULL));//Zufallszahlengenerator starten.
for(int i=0;i<6; i++)
{
ar_lotto[i]=rand()%49+1;
if(doppelt(ar_lotto,i))
{
i--;
}
}
sortieren(ar_lotto);
}
//************************************************** ************************************************
//Unterprogramm "Sortieren" usw.
void sortieren(int* ar_lotto)
{
int temp;
int zeichen;
for(int l=0; l<1; l++)
{
cout<<"Lottozahlen:";
{
for(int i=0; i<6; i++)
{
for(int j=0; j<6;j++)
{
if(ar_lotto[j]>ar_lotto[j+1])
{
temp=ar_lotto[j];
ar_lotto[j]=ar_lotto[j+1];
ar_lotto[j+1]=temp;
}
}
}
}
for(int k=0; k<6;k++)
{
cout<<"\n"<<k+1<<". Zahl= "<<ar_lotto[k]<<endl;
}
}
}
//************************************************** ************************************************
//Unterprogramm "Auswerten" usw.
void auswerten(int* ar_tipp,int* ar_lotto)
{
int k=0;
for(int i=0; i<6; i++)
{
for(int j=0; j<6; j++)
{
if(ar_tipp[i]==ar_lotto[j])
{
k++;
}
}
}
cout<<"\n Sie haben "<<k<<" richtige Zahlen";
}
//************************************************** ************************************************
//Unterprogramm "Doppelt" usw.
bool doppelt(int* ar_zahlen ,int i)
{
if(i>0)
{
for(int j=0; j<=i-1; j++)
{
if(ar_zahlen[j]==ar_zahlen[i])
{
return(true);
}
}
}
return(false);
}
void gotoxy(int xpos, int ypos)
{
COORD scrn;
HANDLE hOuput = GetStdHandle(STD_OUTPUT_HANDLE);
scrn.X = xpos; scrn.Y = ypos;
SetConsoleCursorPosition(hOuput,scrn);
}
//True oder false
Es geht um diese Stelle:
********************
//Unterprogramm "Sortieren" usw.
void sortieren(int* ar_lotto)
{
int temp;
int zeichen;
for(int l=0; l<1; l++)
{
cout<<"Lottozahlen:";
{
for(int i=0; i<6; i++)
{
for(int j=0; j<6;j++)
{
if(ar_lotto[j]>ar_lotto[j+1])
{
temp=ar_lotto[j];
ar_lotto[j]=ar_lotto[j+1];
ar_lotto[j+1]=temp;
}
}
}
}
for(int k=0; k<6;k++)
{
cout<<"\n"<<k+1<<". Zahl= "<<ar_lotto[k]<<endl;
}
}
}
Ich hätte gern die Lottozahlen Rechts neben den getippten Zahlen. Ich habe mir vorgestellt das dies mit gotoxy(); möglich wäre, jedoch klappt das nicht so wie ich es mir denke. Könnt ihr mir vielleicht helfen?
Ok, war mir neu oO
Habs halt so in Büchern gelernt, allerdings lehren die ja auch nur den Standard und der stellt sowas nicht bereit, ist ja ne Windows API.
Promocode ? bei 400 G1 ausgabe 02/17/2011 - WarRock - 11 Replies Hallo
wie manche wissen wurde mein account gehackt und meine 1800 G1^ausgegeben es sind zwei sachen dabei die 499 G1 betragen
meine Frage bei warrock steht das wenn man über 400 G1 ausgibt
dann gibt es ein Promocode umsonst aber ich finde da gar nichts
wo finde ich die den oder geht das überhaupt noch ?
ja der suopport bucht die G1 nicht zurück
Sound ein/ausgabe? 01/31/2011 - Technical Support - 4 Replies Hallo liebes e*pvp Forum,
ich hatte gestern ein kleines problem. Immer als ich meinen PC hochgefahren habe hat er mir gesagt "HTLDR fehlt" das hab ich jetzt behoben, allerdings hab ich jetzt NICHTS mehr auf dem PC. Ich hab mir jetzt das wichtigste wieder runtergeladen und Internet drauf gemacht. Mein erstes Problem besteht dadrinn das er mir am anfang sagt das ich keinen Arbeitsspeicher habe. Bei mir ist das so: ich mach den PC an dann kommt ein schwarzer Bildschirm dann Listet er mir...
E*PvP ~//Gamers News//~ *Ausgabe 1* 01/09/2011 - Main - 3 Replies Hallo,
Nach einiger Zeit und etwas nachdenken, bin ich auf die Idee gekommen speziell für Elitepvpers News zu erstellen, zusammen zu fassen und zu gestalten.
Nun werde ich euch hier "Gamers News" zu sehen bekommen, die ich ab jetzt jede 2 Woche bereitstellen werde. Ich hoffe es ist erlaubt und findet bei jedem Gefallen. Genug geredet. Viel Spaß bei Gamers News Ausgabe Nummero eins!
http://www.lupiupload.de/images/2011/01/09/e45dcb 93e627605e597c2d738eaad7ecd45b1ff2.png
The Elder Scrolls...
Login Sie nehmen Ausgabe !! 05/30/2010 - Metin2 Private Server - 3 Replies Of course,
My problem is this:
We are open server. We pull start. Şekilkde normally enters the game, try to enter again after 10 minutes when you take input remains. How can I solve this always the case.
thanks
D2NT - Ausgabe formatieren 04/20/2010 - Diablo 2 Programming - 2 Replies Heyho, ich wollte mal die Ausgabe des ntbots ein bisschen formatieren und zwar das angezeigt wird, welches item wo mit welchem ilvl gefunden wurde.
Ich bräuchte allerdings Hilfe bei den if-Abfragen denn irgendwie will der bot nicht so wie ich will:
if(_item.quality > 4 && _checkeditem.Status < 2 && _item.itemtype != 4 && (_item.itemtype < 76 || _item.itemtype > 81))
NTC_SendLogToOOG(NTC_LOG_ITEM, "(" + _area.name + ")" + " Aufgehoben: " + NTC_ItemQualityToMGRColor +...