Anzeige:
Ergebnis 1 bis 9 von 9

Thema: [C] Zufallszahl begrenz erzeugen

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    377

    [C] Zufallszahl begrenz erzeugen

    Ist das möglich?
    Ich möchte mit C eine Zufallszahl innerhalb eines bestimmten Bereichs (Bsp. zwischen 0 und 100) erzeugen.

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

    int zahl;


    int main(void)
    {

    zahl = srand();

    printf("%d\n", zahl);


    return 0;

    Hab ich probiert, aber bei dedem Aufruf kommt die Selbe Zahl heraus und ich weiß nicht wie ich die Zufallszahl begrenzen kann.

    mfg nul
    Amilo D - 2,8 Ghz - ATI Radeon 9000
    Debian GNU/Linux 3.1 (Sarge)

  2. #2
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    377
    Tschuldigung, nicht srand(), rand() wollte ich schreiben, also hier noch mal der kurze Code:

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

    int zahl;


    int main(void)
    {

    zahl = rand();

    printf("%d\n", zahl);


    return 0;
    }
    Amilo D - 2,8 Ghz - ATI Radeon 9000
    Debian GNU/Linux 3.1 (Sarge)

  3. #3
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Zufallszahlen sind immer zwischen 0 und 1

    also noch *100 rechnen, oder sowas ähnliches

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: [C] Zufallszahl begrenz erzeugen

    Original geschrieben von nul
    Hab ich probiert, aber bei dedem Aufruf kommt die Selbe Zahl heraus und ich weiß nicht wie ich die Zufallszahl begrenzen kann.
    Der Random Generator wird hier immer mit dem selben Seed initialisiert, daher bekommst du die selben Zufallszahlen.

    Wenn du mehrere hintereinander ausgibs, bekommst du zufällige Werte.
    Wie das Begrenzen geht, steht in der Man Page von rand
    man 3 rand

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  5. #5
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von peschmae
    Zufallszahlen sind immer zwischen 0 und 1
    Nope

    RETURN VALUE
    The rand() function returns a value between 0 and RAND_MAX. The
    srand() returns no value.
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  6. #6
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    tja, sachen gibst

    das hab ich von java ... (<- hoffentlich stimmt wenigstens das ;-))

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  7. #7
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    377
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>

    int j;
    int x;


    int main(void)
    {

    srand( (unsigned) time(NULL) );
    j = 1+(int) (10.0*rand()/(RAND_MAX+1.0));
    printf("%d\n", j);

    srand( (unsigned) time(NULL) );
    x = 1+(int) (10.0*rand()/(RAND_MAX+1.0));
    printf("%d\n", x);


    return 0;
    }

    soweit hab ichs gebracht, aber wie ihr sicher gleich seht gibt mir dieser code 2mal die gleiche Zahl aus. Ich muss aber in einer einzigen Funktion mindestens 5 Zufallszahlen generieren.
    Wie bekomm ich das hin???
    Amilo D - 2,8 Ghz - ATI Radeon 9000
    Debian GNU/Linux 3.1 (Sarge)

  8. #8
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    lass das zweite srand weg

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  9. #9
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    377
    super, Danke, jetzt passts

    mfg nul
    Amilo D - 2,8 Ghz - ATI Radeon 9000
    Debian GNU/Linux 3.1 (Sarge)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •