Lupuz.de: Artikel-Portal / Magazin

Zurück   Postpla.net - die Forum Community > PC, Internet und Technik > Coder's Area

Problem: Kniffel -> kl. Straße

Anzeigen:

Thema geschlossen
 
Themen-Optionen
MaDMaGGoT
Alt 02.06.2005, 12:27   #1
Unglücklich Problem: Kniffel -> kl. Straße

Moin moin freaks ^^

ich hab hier zur zeit ein kleines problem mit einem von mir erstellten quellcode in c++:

also ich bin gerade dabei das weltbekannte spiel kniffel zu programmieren nur habe ich keine ahnung wie ich die kleine straße hinbekommen soll.

ich habe 5 verschiedene zahlen die per "rand" erstellt werden.
beim betätigen eines buttons soll dann ein vergleich zwischen den zahlen erfolgen und wenn die kombination einer kleinen straße gleicht soll halt die punktezahl ausgegeben werden.

leider weiss ich nicht wie ich die ganzen zahlenkombinationen vergleichen soll. wenn mir jemand weiterhelfen könnte wäre das ganz nett.

mfg madmaggot
 
 
Nach oben
cyanide
Alt 02.06.2005, 17:31   #2
Standard

hi, du kannst einen mengentyp benutzen
 
 
Nach oben
Sidolin
Alt 02.06.2005, 17:56   #3
Standard

Naja, gibt sicher elegantere Lösungen, aber probier doch einfach die drei möglichkeiten (1234, 2345, 3456) durch. Einfach ne schleife, und gut.

Edit: Vielleicht die Zahlen per qsort sotieren, dann schauen, ob ne eins dabei is, wenn ja, ob zwei drei vier (geht ja leicht, da immer die jeweils nächste dann die zwei bzw. drei oder vier sein muss) und das gleiche dann halt mit 2 und 3, wenn nicht, dann isses keine kl. straße...
 
 
Nach oben
Wodar Hospur
Alt 05.06.2005, 16:00   #4
Standard

so hier einfach mal die lösung, bei fragen einfach melden

Code:
void __fastcall TForm1::Button2Click(TObject *Sender)
{
     int wuerfel[6]; //die eigentlichen würfel
     int sort[6];    //ein zwischenergebnis
     int wuerfelr[6]; //refernenzen, zum sortieren
     int i=0,b=0;    //schleifenvaiablen

     Memo1->Lines->Clear();

     for(i=0;i<=6;i++)
     {
        wuerfelr[i]=1+i;     //referenzen werden reingeschrieben
     }
     for(i=0;i<=6;i++)
     {
         sort[i]=0;         //arrays werden auf null gesetzt
         wuerfel[i]=0;
     }

     wuerfel[0]=StrToFloat(Edit1->Text);//werte aus editfeldern einlesen
     wuerfel[1]=StrToFloat(Edit2->Text);
     wuerfel[2]=StrToFloat(Edit3->Text);
     wuerfel[3]=StrToFloat(Edit4->Text);
     wuerfel[4]=StrToFloat(Edit5->Text);

     for(i=0;i<=6;i++)
     {
        for(b=0;b<=5;b++)
        {
           if(wuerfel[b]==wuerfelr[i])
           {
              sort[i]=wuerfelr[i];    //sortiert und doppelte einträge werden
                                      //aussortiert
           }
        }
     }
     for(i=0;i!=6;i++)
     {
        Memo1->Lines->Add(sort[i]);  //testausgabe zum überprüfen des sortierens
     }
     for(i=0;i!=3;i++)
     {
        if(sort[i]*sort[i+1]*sort[i+2]*sort[i+3]!=0)   //eigentliche überprüfung
        {
            Memo1->Lines->Add("kleine Straße");
        }
     }

}
 
 
Nach oben
Ähnliche Themen, die dich vielleicht interessieren
Thema Autor Forum Antworten Letzter Beitrag
Problem -> Test Maxwell Postplanet-Kneipe 17 11.03.2008 21:10
Problem mit Nähe TMS30 Liebe, Sex und Zärtlichkeit 2 12.08.2007 11:44
Warum überquerte das Huhn die Straße? Jason Evil Fun und Rätsel-Planet 7 22.10.2005 00:08
Problem mit ICS und Dateifreigabe dErJaSa Internet und Netzwerke 0 26.09.2005 11:21
Warum überquerte das Huhn die Straße? Jason Evil Postplanet-Kneipe 2 03.05.2001 13:01
Anzeigen:
Thema geschlossen

Themen-Optionen



Alle Zeitangaben in WEZ +2. Es ist jetzt 04:34 Uhr.


Lupuz.de - wir können auch anders!
©1998 - 2008, Lupuz:Information-Network
Powered by vBulletin Version 3.7.1 (Deutsch), Jelsoft Enterprises Ltd.
Grüne Links?

SEO by vBSEO 3.1.0 ©2007, Crawlability, Inc.