Java :: Aufgabe #6
10 Lösungen

Würfelspiel (mit Random)
Anfänger - Java
von Jurom
- 22.10.2012 um 10:45 Uhr
Das Programm soll ein einfaches Glücksspiel simulieren.
Lassen Sie 2 Zufallszahlen zwischen 1-6 ausgeben, die höhere Zahl gewinnt.
Wiederholen sie das Würfeln solange, bis der Anwender gewinnt.
Lassen Sie 2 Zufallszahlen zwischen 1-6 ausgeben, die höhere Zahl gewinnt.
Wiederholen sie das Würfeln solange, bis der Anwender gewinnt.
Lösungen:

//©2012 by Julius J. Hoffmann //written with Eclipse import java.util.*; //Importierung nötig für die Random-Klasse public class Undefault //Die "ausführende Klasse" { public static void main(String[] args) //Main-Methode { System.out.println("DiceRoll - Zufälliges Würfeln \n"); //Ausgabe des Strings int a = 0; //Initialisieren der Variablen a (Zahl d. Spielers) int b = 0; //initialisieren der Variablen b (Zahl d. AI) Random r = new Random(); //Anlegen des Random-Objektes while (a<=b) //Initiieren einer while-Schleife { //while{} läuft solange bis die Bedingung erfüllt ist a = r.nextInt(6)+1; //Erstellen einer Zufallszahl zwischen 0-5, dann Addition mit 1 b = r.nextInt(6)+1; // -||- (Random berechnet die 0 mit ein, so sind 6 Zahlen: 0-5) System.out.println("Du würfelst eine: "+ a); //Ausgabe des Spielerwurfes System.out.println("Der Gegner würfelt eine: "+ b); //Ausgabe des Computerwurfes if(a==b) System.out.println(a + "=" + b + " -> Gleichstand \n"); //Kontrolle auf Gleichstand -> Ausgabe else //wenn k. Gleichstand { if(a>b) //Kontrolle auf Sieg, Spieler System.out.println(a + ">" + b + " -> Du gewinnst! \n"); //Ausgabe des Strings else //wenn nicht System.out.println(a + "<" + b + " -> Du verlierst! \n"); //letzter mögl. Fall, Sieg d. Computer } //Ende der else-Anweisung (von a==b) } //Ende der while-Schleife, Besonderheit: wenn die Bedingung erfüllt ist, springt die while-Schleife direkt hierhin } //Ende main-Methode } //Ende Klasse

public class Würfelspiel { public static void main(String[] args) { int augenzahlSpieler = 0; int augenzahlComputer = 0; while(augenzahlSpieler <= augenzahlComputer) { augenzahlSpieler = (int)(6*Math.random()+1); augenzahlComputer = (int)(6*Math.random()+1); System.out.println("Der Spieler würfelt " + augenzahlSpieler); System.out.println("Der Computer würfelt " + augenzahlComputer); if(augenzahlComputer >= augenzahlSpieler) { System.out.println("Spiel startet neu."); System.out.println("-----------------"); } } System.out.println("Spieler hat gewonnen."); } }

import java.util.Random; public class Spiel { static Random ra; static int anwender, cpu; public static void main(String[] args) { ra = new Random(); do { anwender = ra.nextInt(6) + 1; cpu = ra.nextInt(6) + 1; System.out.println("Du hast eine " + anwender + " gewuerfelt. \n" + "Dein Gegner hat eine " + cpu + " gewuerfelt"); if(cpu < anwender) { System.out.println("Du hast gewonnen!"); } else { System.out.println("Du hast leider verloren!"); } } while(cpu >= anwender); } }

import java.util.Random; import java.util.Scanner; /* * Das Programm soll ein einfaches Glücksspiel simulieren. Lassen Sie 2 * Zufallszahlen zwischen 1-6 ausgeben, die höhere Zahl gewinnt. * Wiederholen sie das Würfeln solange, bis der Anwender gewinnt. */ public class würfelspiel { public static void main(String[] args) { Scanner s = new Scanner(System.in); Random r = new Random(); boolean isRunning = true; do { System.out.print("<ENTER zum Spielen><ENDE zum Beenden>"); String eingabe = s.nextLine(); if (!eingabe.contains("end")) { int mensch = r.nextInt(6)+1; int computer = r.nextInt(6)+1; System.out.println(compareNumbers(mensch, computer)+"\n"); } else { isRunning = false; } } while (isRunning); } public static String compareNumbers(int m, int c) { return ((m > c) ? "Mensch(" + m + ") gewinnt gegen Computer(" + c + ")" : "Computer(" + c + ") gewinnt gegen Mensch(" + m + ") "); } }

import java.util.Scanner; import java.awt.Toolkit; class Randy { public static void main (String [] args) { würfelspiel(); } static Scanner eingabe () { return new Scanner (System.in); } static void neurechnen () { String neu = "j"; String ende = "n"; System.out.println("Eine neue Runde? [j/n]"); String a = eingabe().next(); while (true) { if (neu.equalsIgnoreCase(a)) { System.out.println("Ich freue mich auf eine neue Runde mit Ihnen."); würfelspiel(); break; }else if (ende.equalsIgnoreCase(a)) { System.out.println("Auf Wiedersehen!"); } System.exit(0); } } static void würfelspiel () { int x , y; Toolkit fehlersound = java.awt.Toolkit.getDefaultToolkit(); x = (int) (Math.random () * 7); y = (int) (Math.random () * 7); if ( x == y ) { System.out.println("Zahl_1: " + x); System.out.println("Zahl_2: " + y); System.out.println(""); System.out.println("Gleichstand!"); neurechnen(); }else if ( x < y ) { System.out.println("Ihre Zahl: " + x); System.out.println("Meine Zahl: " + y); System.out.println(""); System.out.println("Ich habe gewonnen!"); neurechnen(); }else if ( x > y ) { System.out.println("Ihre Zahl: " + x); System.out.println("Meine Zahl: " + y); System.out.println(""); System.out.println("Sie haben gewonnen!"); neurechnen(); }else { fehlersound.beep(); System.err.println("Ein unbekannter Fehler ist aufgetreten!"); neurechnen(); } } }

import java.util.Random; public class mainprogram { public static void main ( String args[] ) { int max = 6; int min = 1; int random = 0; int player1 = randInt(min, max); int computer = randInt(min, max); if (player1 > computer) { System.out.println("Spieler 1 gewinnt mit: " +player1); } if (computer > player1){ System.out.println("Computer gewinnt mit: " +computer); } if (player1 == computer) { System.out.println("Gleichstand! Beide würfeln: " +player1); } } public static int randInt(int min, int max) { Random rand = new Random(); int randomNum = rand.nextInt((max - min) + 1) + min; return randomNum; } }
Ausgabe:
Konsolenausgabe:
Spieler 1 gewinnt mit: 5
Konsolenausgabe:
Computer gewinnt mit: 4

// trainyourprogrammer // Aufgabe 6 import java.util.Random; public class Wuerfel { public static void main(String[] args) { Random zufall1 = new Random(); Random zufall2 = new Random(); int wuerfelComputer = zufall1.nextInt(6); int wuerfelAnwender = zufall2.nextInt(6); System.out.println(); System.out.println("Der Computer wuerfelt: " + wuerfelComputer); System.out.println("Sie wuerfeln: " + wuerfelAnwender); System.out.println(); if(wuerfelComputer > wuerfelAnwender || wuerfelComputer == wuerfelAnwender) { while(wuerfelComputer > wuerfelAnwender || wuerfelComputer == wuerfelAnwender) { if(wuerfelComputer > wuerfelAnwender) { System.out.println("Der Computer gewinnt!"); wuerfelComputer = zufall1.nextInt(6); wuerfelAnwender = zufall2.nextInt(6); System.out.println(); System.out.println("Der Computer wuerfelt: " + wuerfelComputer); System.out.println("Sie wuerfeln: " + wuerfelAnwender); System.out.println(); if(wuerfelAnwender > wuerfelComputer) { System.out.println("Sie haben gewonnen!"); } } else { System.out.println("Unentschieden! Neue Runde!"); wuerfelComputer = zufall1.nextInt(6); wuerfelAnwender = zufall2.nextInt(6); System.out.println(); System.out.println("Der Computer wuerfelt: " + wuerfelComputer); System.out.println("Sie wuerfeln: " + wuerfelAnwender); System.out.println(); if(wuerfelAnwender > wuerfelComputer) { System.out.println("Sie haben gewonnen!"); } } } } else { System.out.println("Sie haben gewonnen!"); } } }

public class Main { public static void main(String[] args) { int userNumber; int aiNumber; do { userNumber = (int) (Math.floor(Math.random() * 6) + 1); aiNumber = (int) (Math.floor(Math.random() * 6) + 1); } while (userNumber < aiNumber); } }
Konsolenausgabe:
5
2

package de.patrick260.trainYourProgrammer.exercise_6; import java.util.Random; public class WuerfelspielMitRandom { public static void main(String[] args) { Random r = new Random(); int a = r.nextInt(6); int b = r.nextInt(6); while (a < 1 || b < 1) { a = r.nextInt(6); b = r.nextInt(6); } int rounds = 1; System.out.println("Du hast eine " + a + " gewürfelt!"); System.out.println("Dein Gegner hat eine " + b + " gewürfelt!"); while (a <= b) { if (a != b) { System.out.println("Dein Gegner hat gewonnen!"); } else { System.out.println("Unentschieden!"); } rounds++; a = r.nextInt(6); b = r.nextInt(6); while (a < 1 || b < 1) { a = r.nextInt(6); b = r.nextInt(6); } System.out.println("Du hast eine " + a + " gewürfelt!"); System.out.println("Dein Gegner hat eine " + b + " gewürfelt!"); } System.out.println("Du hast nach " + rounds + " Runden gewonnen!"); } }

/** Short dice game against the computer. You win when your number is greater! */ import java.util.Random; class DiceGame { public static void wait(int ms) { try { Thread.sleep(ms); } catch (Exception ex) { System.out.println("Error during waiting time!"); } } public static void main(String[] args) { boolean win = false; int counter = 0; Random random = new Random(); System.out.println("Lets\'s play a dice game!"); wait(1000); System.out.println("You win when your number is greater than mine!"); wait(1000); while (!win) { int myNumber = random.nextInt(6) + 1; int yourNumber = random.nextInt(6) + 1; System.out.println("Your number is: " + yourNumber); wait(1000); System.out.println("My number is: " + myNumber); wait(1000); if (yourNumber > myNumber) { System.out.println("You won!"); wait(1000); if (counter == 1) { System.out.println("I won " + counter + " round, before you won 1 round!"); } else { System.out.println("I won " + counter + " rounds, before you won 1 round!"); } win = true; } else { counter++; System.out.println("I won!"); wait(1000); System.out.println("Let\'s play another round!"); System.out.println(""); wait(1000); } } } }