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

terrible1

Frischling

  • »terrible1« ist der Autor dieses Themas

Beiträge: 58

Wohnort: Freyung

Beruf: Schülern

  • Private Nachricht senden

21

14.03.2008, 20:54

Du hast i schon definiert, befor du es in dein Array eingefügt hast ;)
http://www.world-of-smilies.com/smiliegen/dyn_Nobody-l-is-l-perfect-r-0D-r-0A-r-28I-r-5C-r-27m-l-Nobody-r-29_Arial.ttf_center_26_8_x_b_a_c.gif

22

14.03.2008, 21:25

Ohne jetzt auf das Problem einzugehen: Was willst Du (OP) überhaupt mit einer derartigen Konstruktion erreichen?

Grüße... Heiko

terrible1

Frischling

  • »terrible1« ist der Autor dieses Themas

Beiträge: 58

Wohnort: Freyung

Beruf: Schülern

  • Private Nachricht senden

23

14.03.2008, 23:49

Weil ich einen Zufallsgenerator Programmiere und dann per eingabe Werte bestimmen will (z.B. wie oft kommt die zahl fünf in einem Raum von eins bis 50 bei 3123 Durchgängen vor ;))

P.S.: Die idee mit der Varible im Array geht bei meinem Compiler nicht :(
http://www.world-of-smilies.com/smiliegen/dyn_Nobody-l-is-l-perfect-r-0D-r-0A-r-28I-r-5C-r-27m-l-Nobody-r-29_Arial.ttf_center_26_8_x_b_a_c.gif

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

24

15.03.2008, 00:01

Zitat von »"terrible1"«

Weil ich einen Zufallsgenerator Programmiere und dann per eingabe Werte bestimmen will (z.B. wie oft kommt die zahl fünf in einem Raum von eins bis 50 bei 3123 Durchgängen vor ;))

P.S.: Die idee mit der Varible im Array geht bei meinem Compiler nicht :(


Ich würde das mittels eines structs lösen.

Was geht den effektiv nicht bei dir?

25

15.03.2008, 00:16

du kannst das entweder so lösen, wie du dir schon gedacht hast(was ziemlich speicherintensiv werden dürfte), das würde ich so lösen:

C-/C++-Quelltext

1
2
3
4
5
6
7
/*......*/
int NumNumbers=0;
cin>>NumNumbers;
int *Numbers=NULL;
Numbes=new int[NumNumbers];

/*.....*/


NumNumbers enhält dann die Anzahl an Variablen(=Durchgängen) die du haben willst, und anschließend wird ein entsprechend großes array erzeugt.

Oder (so würde ich das problem lösen)du stellst das ganze um, und erzeugst in einer schleife einfach deine zufallszahl, überprüfst, ob sie in deinem zahlenbereich liegt, und schreibst dann in ne Ergebnisvariable, wie viele Zahlen im richtigen bereich lagen.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
/*....*/
int NumNumbers=0;
cin>>NumNumbers;
int NumRightBumbers=0;
int Rand=0;
for(int i=0;i<NumNumbers;i++)
{
Rand=GetRandomNumber();
if(Rand<50&&Rand>1)
NumRightNumbers++;
}
/*...*/


Danach würde NumRightNumbers also enthalten, wie viele deiner x Versuche im Zahlenbereich zwischen 1 und 50 lagen(Vorausgesetzt GetRandomNumber() liefert die richtigen zahlen)...

terrible1

Frischling

  • »terrible1« ist der Autor dieses Themas

Beiträge: 58

Wohnort: Freyung

Beruf: Schülern

  • Private Nachricht senden

26

15.03.2008, 00:17

Der int x Array
http://www.world-of-smilies.com/smiliegen/dyn_Nobody-l-is-l-perfect-r-0D-r-0A-r-28I-r-5C-r-27m-l-Nobody-r-29_Arial.ttf_center_26_8_x_b_a_c.gif

27

15.03.2008, 00:26

compiler nehmen soweit ich weiß nur arrays mit statischen größen. deswegen muss man arrays mit größen die zur laufzeit entschieden werden umschreiben, indem man erst einen Pointer Erzeugt, und den dann auf einen mit new Erzeugten speicherbereich zeigen lässt.
Pseudocode:

Quellcode

1
2
Type *Array;
Array=new Type[GewünschteGröße];


danach kannst du mit Array genauso arbeiten, wie gewohnt.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

28

15.03.2008, 00:29

Zeig sonst mal deinen Coder her.

Das sollte so gehen.

Faule Socke

Community-Fossil

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

29

15.03.2008, 00:49

Ich weiss ja net und ich will ihn auch net runter machen, aber ich spreche aus erfahrung: keine großen experimente, bevor du das buch net gelesen hast. ansonsten gibt es auch massenweise gute tuts, klang aber da net so, als hättst du es verstanden und dann nützt es auch nichts, wenn wir dir eine lösung geben, wenn du sie nicht verstehst. les dir nochmal die kapitel über zeiger und dyn. speicher durch(ist eventuell bei klassen oder so mit drinne, ich kenne ja dein buch/tut net) ein anderes tut/buch könnte auch helfen, das ist nämlich tausendmal mehr wert, wie ein solches forum hier. kann natürlich auch sein, dass ich dich völlig missverstanden habe, dann will ich mich schonmal entschuldigen, falls das so rüberkam als hätt ich mich über dich gestellt oder so, das will ich ganz bestimmt net.

Socke

Viktor

Alter Hase

Beiträge: 533

Wohnort: Ludwigshafen

Beruf: Student

  • Private Nachricht senden

30

15.03.2008, 00:57

Zitat von »"terrible1"«

Weil ich einen Zufallsgenerator Programmiere und dann per eingabe Werte bestimmen will (z.B. wie oft kommt die zahl fünf in einem Raum von eins bis 50 bei 3123 Durchgängen vor ;))

P.S.: Die idee mit der Varible im Array geht bei meinem Compiler nicht :(


Dann probier es mit vectoren, die sind ja nicht auf die konstante größe des arrays beschränkt, sondern können variable sein.
was ich nur gerade komisch finde ist, dass ich in rund 20 programmen "variable" arraygrößen verwendet habe und es gab nie Probleme (um es konkreter zu machen: ich hatte mit der getline-methode die anzahl aller zeilen einer txt-datei bestimmt und die größe eines Arrays danach bestimmt. Das ist ja im prinziep ähnlich...)

Werbeanzeige