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

1

22.04.2013, 11:23

Zufallsgenerator ?

Hallo,

ich versuche mich grade an einem Spiel in dem man gegen den Computer antreten kann.
Ich möchte sozusagen das Spiel "Risiko" in mein Spiel einbringen , heißt:

Ich bräuchte einen Zufallsgenerator der den Computer Zahlen ausspucken lässt.

Danke für deine Hilfe :)

patrick246

Treue Seele

Beiträge: 328

Wohnort: nahe Heilbronn/BW

Beruf: TG Profil Informatik-Schüler

  • Private Nachricht senden

2

22.04.2013, 11:31

Welche Programmiersprache?

Databyte

Alter Hase

Beiträge: 1 040

Wohnort: Na zu Hause

Beruf: Student (KIT)

  • Private Nachricht senden

3

22.04.2013, 11:46

Für c++ benutze doch die neue tolle std-komponente "random"
http://en.cppreference.com/w/cpp/numeric/random

und weils so kompliziert ist, hier nochmal eine tutorial
http://www.johndcook.com/cpp_TR1_random.html

Swoerm

Alter Hase

Beiträge: 451

Wohnort: 127.0.0.1

  • Private Nachricht senden

4

22.04.2013, 11:53

In C++ berechnet man eine Zufallszahl so:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <ctime>
using namespace std;

int main ()
{
while(true)
{
int Zufallszahl = rand()*time(0)%10+1;

cout << Zufallszahl << endl;
}

return 0;
}


Erklärung:

rand() berechnet eine Zufallszahl
time(0) kommt aus ctime und erhöht sich pro Sekunde um 1

10 steht für den Zahlenraum hier 1-10 wenn du +1 am Ende weglässt hast du 0-9 setzt du für 10 zum bsp. 100 ein bekommst du eine Zahl zwischen 1-100.
Wenn du rand() durch 41 ersetzt bekommst du einen Timer der von 1-10 zählt (Sekundenschritte).

Experimentiere am besten mal ein bisschen damit.

C-/C++-Quelltext

1
2
    /* Keep the compiler happy */
    return(0);

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

5

22.04.2013, 11:56

In Java und C# gibt es eigene Klassen die das übernehmen:

JAVA

C#

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

6

22.04.2013, 11:57

In C++ berechnet man eine Zufallszahl so:
(...)

Eher in C. C++11 kennt dafür komplett neue und deutlich bessere Varianten. Siehe die Antwort von Databyte.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Swoerm

Alter Hase

Beiträge: 451

Wohnort: 127.0.0.1

  • Private Nachricht senden

7

22.04.2013, 13:11

Zitat von »BlueCobold«
In C++ berechnet man eine Zufallszahl so:
(...)

Eher in C. C++11 kennt dafür komplett neue und deutlich bessere Varianten. Siehe die Antwort von Databyte.
Ja aber man kann es so machen.

C-/C++-Quelltext

1
2
    /* Keep the compiler happy */
    return(0);

valentin

Treue Seele

Beiträge: 212

Wohnort: Schweiz

Beruf: Schüler

  • Private Nachricht senden

8

22.04.2013, 13:15

Man kann auch ne Suppe mit ner Gabel essen. Deswegen macht man es trotzdem nicht.
visit me on deviantArt!
http://v-alentin.deviantart.com/

There is no programming language, no matter how structured, that will prevent programmers from making bad programs. //Larry Flon

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

22.04.2013, 16:31

Nichts desto trotz solltest du die verwendete Sprache dazu schreiben damit du eine passende Antwort erhalten kannst. Vielleicht war die passende Antwort aber auch schon dabei. Ansonsten ist Google wirklich hilfreich beim suchen solcher Dinge. Such doch einfach mal nach sowas wie "C++ random", oder statt C+ halt die von dir gewünschte Sprache.
Und Swoerm, wenn du schon C++ schreibst, solltest du es so lösen wie man es normal mit dieser Sprache lösen würde. Ich reg mich immer schon bei Büchern auf welche damit werben C++ zu nutzen und dann eine gepimpte Version von hässlichem C benutzen. Wenn ich mit einer Sache werbe muss ich sie auch nutzen;)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Swoerm

Alter Hase

Beiträge: 451

Wohnort: 127.0.0.1

  • Private Nachricht senden

10

23.04.2013, 22:20

Ich weiß das mein Programmierstil nicht der beste ist aber nichts desto trotz funktioniert meine Methode.
Ich bin ja auch noch Anfänger (Ich programmier erst n 3/4 Jahr) also nicht gleich aufregen wenn ich auch mal Fehler mach.

C-/C++-Quelltext

1
2
    /* Keep the compiler happy */
    return(0);

Werbeanzeige