1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Zufallsgenerator

  • Krackmoe
  • 30. November 2007 um 14:45
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • Krackmoe
    Punkte
    260
    Beiträge
    36
    • 30. November 2007 um 14:45
    • #1

    Wenn ich einen Zahlenbereich haben will von 1-10... mach ich dann einfach Math.random()*10 ?

  • Optima MUW
    Punkte
    216
    Beiträge
    42
    • 30. November 2007 um 15:10
    • #2

    Nicht ganz, das würde dir Zufallszahlen von 0..10 liefern, da Math.rand einen Wert zwischen 0 und 1 liefert.

    Code
    (Math.random()*9) + 1

    Das liefert Werte von 1..10

  • Krackmoe
    Punkte
    260
    Beiträge
    36
    • 30. November 2007 um 15:13
    • #3

    Ok Danke ;)

    Gibts eigentlich einen Grund, warum man das nicht einfach in die Klammer reinschreiben kann? ^^

  • MaxAuthority
    Punkte
    3.165
    Beiträge
    626
    • 30. November 2007 um 15:28
    • #4
    Zitat von Krackmoe

    Ok Danke ;)

    Gibts eigentlich einen Grund, warum man das nicht einfach in die Klammer reinschreiben kann? ^^

    Weil die java api das anscheinend (wie die meisten anderen) nicht unterstuetzt.

  • a9bejo
    Punkte
    4.697
    Beiträge
    913
    • 30. November 2007 um 17:26
    • #5

    java.util.Random.

    PHP
    int anIntegerBetweenOneAndTen = new java.util.Random().nextInt(9) + 1;
  • Krackmoe
    Punkte
    260
    Beiträge
    36
    • 30. November 2007 um 23:22
    • #6

    Er soll 10 Runden zu je 3 Versuchen machen.

    Er schreibt mir manchmal obwohl ich die Zahl noch nicht erraten habe, an das die Zahl richtig war.
    z.B. ich geb 4 ein dann sagt er mir heiß, und: gratuliere sie haben die richtige zahl, die richtige zahl = 5

    Oder manchmal muss ich 2 Zahlen eingeben, obwohl eigentlich nur eine Zahl eingelesen werden sollte in einer Zeile.

    Java
    import java.util.*;
    
    
    class  ratespiel3 {
    
    
      public static void main( String[] args ) {
    
        int random=1;
        int zahl = 0;
        int versuch = 0;
        Scanner s = new Scanner(System.in);
        boolean ok = false;
        int count = 1;
        int gewonnen = 0;
    
        for ( int i = 0; i <5;i++) {
            random = (int)(Math.random()*10)+1;    
            System.out.println();
            System.out.println("Runde " + count + ":");        
            System.out.println("Geben Sie eine Zahl ein: ");
    
            for ( int j = 0; j<3; j++) {
    
                zahl = s.nextInt();
    
                if ( zahl >= random + 3 || zahl <= random - 3)
                    System.out.println("kalt");
                if ( zahl == random + 2 || zahl == random - 2)
                    System.out.println("warm");
                if ( zahl == random + 1 || zahl == random - 1)
                    System.out.println("heiss");
                if ( zahl == random) {
                    ok = true;
                    gewonnen = gewonnen + 1;
                }
    
            } // end while        
                if (ok){
                    System.out.println("gratuliere");
                    System.out.println("sie haben gewonnen");
                }
                if ( zahl != random){
                    System.out.println("die richtige zahl war: " + random);
                }    
                count = count + 1;
    
    
        } // end for
    
        System.out.println(gewonnen);
    
      }
    }
    Alles anzeigen
  • Erklärbär
    Punkte
    661
    Beiträge
    130
    • 1. Dezember 2007 um 05:36
    • #7

    soweit ich das sehe, wird die variable ok nicht wieder mit false initialisiert. du musst in der äusseren for-schleife das flag reinitialisieren.

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum