Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Too_noobish

Treue Seele

  • »Too_noobish« ist der Autor dieses Themas

Beiträge: 165

Wohnort: Wels - Aut

  • Private Nachricht senden

1

15.08.2007, 15:36

Zufälligen Wert/String aus Datei lesen

Hallo!

Ich versuch gerade ein kartenspiel zu proggen und um nicht immer dieselben karten zu bekommen, sollten einfach eine bestimmte anzahl an zufälligen karten ausgewählt werden. ich hab das schon mit srand (timeGetTime ()) / (rand()%xy) versucht, nur ist das extrem umständlich, da ich ja zuerst jeder karte einen bestimmten wert zuweisen muss und dann den zufällig erzeugten wert mit den werten der karte vergleichen muss.
deshalb würde ich gerne die ganzen kartennamen in eine datei schreiben und dann daraus eine zufällige auswählen.

mfg
Too_noobish
www.mymuesli.com !!

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

Too_noobish

Treue Seele

  • »Too_noobish« ist der Autor dieses Themas

Beiträge: 165

Wohnort: Wels - Aut

  • Private Nachricht senden

3

15.08.2007, 15:43

wie geht das? also einfacher?

bin halt noch ein anfänger...

also einen zufallsstring aus einer datei wählen und den dann verwenden
www.mymuesli.com !!

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

15.08.2007, 15:45

Worauf ich hinaus wollte: du hast keine Frage gestellt und auch nicht erkennen lassen, worin jetzt genau das Problem liegt.

Too_noobish

Treue Seele

  • »Too_noobish« ist der Autor dieses Themas

Beiträge: 165

Wohnort: Wels - Aut

  • Private Nachricht senden

5

15.08.2007, 15:52

sorry, das ich mich unklar ausgedrückt habe.

wie kann man einen zufälligen wert aus einer datei lesen, in meinem fall also einen namen einer karte z.b. herz zwei, und diesen dann weiter verwenden?

ich hab mir das so vorgestellt:

zuerst gibts eine liste in der alle kartennamen drinnenstehen.
danach wird per zufall eine dieser karten ausgewählt und dann sozusagen an den spieler ausgeteilt.

wenn man im eigentlichen programm jeder zahl einen bestimmten wert zuweist und dann jeden dieser werte mit der zufalls zahl vergleicht, ob zufallszahl und karte (also der wert der karte; mit wert mein ich, dass z.b herz zwei den wert 0 hat usw.) übereinstimmen, wird der quelltext ja extrem unübersichtlich.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <cstdlib>
#include <iostream>
#include <windows.h>

using namespace std;

int main()
{
int Zufallszahl;
    
    srand (timeGetTime ());
    
    Zufallszahl = (rand()%51);
    
    switch (Zufallszahl)
    {
           case ('0'):
           {
                cout << "heZwei" << endl;
           } break;
           
           case ('1'):
           {
                cout << "heDrei" << endl;
           } break;
           
           case ('2'):
           {
                cout << "heVier" << endl;
           } break;
           
           case ('3'):
           {
                cout << "heFünf" << endl;
           } break;
           
           case ('4'):
           {
                cout << "heSechs" << endl;
           } break;
           
           case ('5'):
           {
                cout << "heSieben" << endl;
           } break;
           
           case ('6'):
           {
                cout << "heAcht" << endl;
           } break;
           
           case ('7'):
           {
                cout << "heNeun" << endl;
           } break;
           
           case ('8'):
           {
                cout << "heZehn" << endl;
           } break;
           
           case ('9'):
           {
                cout << "heBube" << endl;
           } break;
           
           case ('10'):
           {
                cout << "heDame" << endl;
           } break;
           
           case ('11'):
           {
                cout << "heKoenig" << endl;
           } break;
           
           case ('12'):
           {
                cout << "heAs" << endl;
           } break;
           
           default: 
           {
                    cout << "andere Karte" << endl;
           }
    }
               
    cout << "ende" << endl;

    system("PAUSE");
    return EXIT_SUCCESS;
}


das sollte ja auch einfacher gehen.
www.mymuesli.com !!

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

15.08.2007, 16:05

Du könntest auch einfach ein Array von Strings nehmen.

Was willst du eigentlich hiermit erreichen:

C-/C++-Quelltext

1
case ('10'):


Was sollen die einfachen Anführungszeichen?
Weißt du, was die in C++ bedeuten?
Und wozu die Klammern?

Too_noobish

Treue Seele

  • »Too_noobish« ist der Autor dieses Themas

Beiträge: 165

Wohnort: Wels - Aut

  • Private Nachricht senden

7

15.08.2007, 16:11

ja, eigentlich vollkommener schwachsinn was ich da gemacht hab. jetzt komm ich auch langsam drauf^^. ok, ich werd mir was neues überlegen.

kann geschlossen / gelöscht oder was auch immer werden :)
www.mymuesli.com !!

Werbeanzeige