• Liebe User, bitte beachtet folgendes Thema: Was im Forum passiert, bleibt im Forum! Danke!
  • Hallo Gemeinde! Das Problem leidet zurzeit unter technischen Problemen. Wir sind da dran, aber das Zeitkontingent ist begrenzt. In der Zwischenzeit dürfte den meisten aufgefallen sein, dass das Erstellen von Posts funktioniert, auch wenn das Forum erstmal eine Fehlermeldung wirft. Um unseren Löschaufwand zu minimieren, bitten wir euch darum, nicht mehrmals auf 'Post Reply' zu klicken, da das zur Mehrfachposts führt. Grußworte.

C++ Frage

RaUpE-8472-

Guest
Abend die Dam'

Ich habe die einfache Aufgabe eine Zufallszahl zwischen 1 und 10 ziehen zu lassen. Bei einer 2 abbrechen zu lassen und danach das arithmetische Mittel (Summe geteilt durch die Anzahl) errechnen zu lassen: mein Problem: random(num) gibt Random integers von "0" beginnend an. Nun gut habs so gelöst dass ich einfahc imm er einen drauf addiere. Desweiteren schmeisst Random(num) immer wieder die gleich Zahl raus. Wenn ich sch schreibe random(11) kommt immer die "7" wenn ich schreib random(90) kommt zB immer die 50.
hab bisher folgenedes:


#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
void main ()
{
float x=0;
float y=0;
float z=0;
float a;
while (x !=2)
{
x=random (9)+1;
cout <<x;
getch ();
y=y+1;
z=z+y;
}
a=z/y;
cout <<a;
getch ();
}

arithmetisches Mittel ist imemr: 1.5 egal wie oft ich das prog ausführe. Hab das auch schon mit Klasse und Destruktor gemacht, aber irgendwie hat das auch nix genützt

hlp pleas0r
 
Mitglied seit
18.07.2001
Beiträge
2.152
Reaktionen
2
Ort
Nürnberg
natuerlich spuckt random fuer den gleichen initialwert immer die gleiche zahl raus. deshalb uebergibt man ja auch als initialwert den aktuellen timestamp.
 
Mitglied seit
18.07.2001
Beiträge
2.152
Reaktionen
2
Ort
Nürnberg
hier nen beispiel aus der msdn (http://msdn.microsoft.com)

Code:
/* RAND.C: This program seeds the random-number generator
 * with the time, then displays 10 random integers.
 */

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

void main( void )
{
   int i;

   /* Seed the random-number generator with current time so that
    * the numbers will be different every time we run.
    */
   srand( (unsigned)time( NULL ) );

   /* Display 10 numbers. */
   for( i = 0;   i < 10;i++ )
      printf( "  %6d\n", rand() );
}
 

Scheinkultur

Guest
Header File

stdlib.h

Category

Math Routines

Syntax

#include <stdlib.h>
#include <time.h>
void randomize(void);

Description

Initializes random number generator.

randomize initializes the random number generator with a random value.

Return Value

None.

----

MfG
 

RaUpE-8472-

Guest
wie wend ich das an. schreib ma nen syntaktisches beispiel bitte

dangöö
 

RaUpE-8472-

Guest
ok habs. wen es interessiert: einfach ein randomize(); vor die schleife setzen
 
Oben