Java Programm für Schule

mjavagoni

Neues Mitglied
Hallo Zusammen,

Zuerstmal zur Bezahlung: Siehe unten!
Zu meiner Person: Momentan in einer Ausbildung zum Informatiker EFZ Richtung Systemtechniker.
Wir müssen in der Schule im ersten Lehrjahr (in dem ich mich gerade befinde) ein Würfelspiel in Eclipse programmieren.

Könnte mir einer helfen? Ich müsste es am Donnerstag abgeben. Wäre sehr dankbar

Aufgabe


Die Böse Eins für zwei Spieler programmieren.

Jeder Spieler darf max. fünfmal würfeln. Die Augenzahlen aus den einzelnen Würfen werden addiert. Wirft man jedoch eine Eins, werden die Augen der jeweiligen Runde ungültig. Wer als erster 100 Punkte hat, geht als Sieger hervor.


Zusätzlich :

Erstellen sie ein Klassendiagramm (UML) über alle Klassen ihres Projekts.


----

Ich würde demjenigen, der mir den Code bis am 15.06.2016 schreibt und mir schickt 100 Euro für seine Arbeit zahlen...

Freundliche Grüsse
Lucas
 

küng_

Neues Mitglied
Cromewell, ich währe sehr erfreut, wenn Du mir deine Lösung per PN Schicken könntest.
Gruss
 
Zuletzt bearbeitet:
X

Xyz1

Gast
So könntest du anfangen:
Java:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication;

import java.io.*;
import java.util.*;

/**
* @author DerWissende
*/
public class BoeseEins {

    public static void main(String[] args) throws IOException, InterruptedException {
        BoeseEins boeseEins = new BoeseEins();
    }

    private final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    private int index = 0;
    private final BoeseEinsSpieler[] spieler;
    private final Random wuerfel = new Random();

    public BoeseEins() throws IOException, InterruptedException {
        int i = readInt(
                "Bitte die Anzahl der Spieler");
        spieler = new BoeseEinsSpieler[i];
        for (int j = 0; j < spieler.length; j++) {
            spieler[j] = new BoeseEinsSpieler();
        }

        play();
    }

    private int next() {
        return 1 + wuerfel.nextInt(6);
    }

    private void play() throws InterruptedException {
        System.out.println("Der Spieler ist dran: " + index);
        final BoeseEinsSpieler spieler1 = spieler[index];
        System.out.println("Die Runde ist dran: " + spieler1.index);
        int i = 0;
        for (; i < 5; i++) {
            System.out.println("Der Wurf ist dran: " + i);
            int r = next();
            System.out.println("Es wurde gewuerfel: " + r);
            if (r == 1) {
                System.out.println("Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!");
                i = 5;
            } else {
                spieler1.wuerfe[i] = r;
            }
        }
        if (i == 5) {
            int sum = 0;
            for (int r : spieler1.wuerfe) {
                sum += r;
            }
            System.out.println("Die Summe betraegt: " + sum);
            spieler1.punkte += sum;
        }
        System.out.println("Insgesamt hat der Spieler Punkte: " + spieler1.punkte);
        if (spieler1.punkte >= 100) {
            System.out.println("Der Spieler hat gewonnen!!!!!");
            return;
        }
        spieler1.index++;
        index = (index + 1) % spieler.length;
        System.out.println("--- --- ---");
        Thread.sleep(15000);
        play();
    }

    private int readInt(String msg) throws IOException {
        System.out.println(msg + ":");
        String s = br.readLine();
        try {
            int i = Integer.parseInt(s);
            return i;
        } catch (NumberFormatException nfe) {
            return readInt(msg);
        }
    }

}

class BoeseEinsSpieler {

    int punkte = 0;
    int index = 0;
    int[] wuerfe = new int[5];

}

Ich hab es nur einmal durchlaufen lassen - und bisher keine Fehler entdeckt,
Code:
run:
Bitte die Anzahl der Spieler:
2
Der Spieler ist dran: 0
Die Runde ist dran: 0
Der Wurf ist dran: 0
Es wurde gewuerfel: 4
Der Wurf ist dran: 1
Es wurde gewuerfel: 5
Der Wurf ist dran: 2
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 0
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 0
Der Wurf ist dran: 0
Es wurde gewuerfel: 4
Der Wurf ist dran: 1
Es wurde gewuerfel: 2
Der Wurf ist dran: 2
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 0
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 1
Der Wurf ist dran: 0
Es wurde gewuerfel: 5
Der Wurf ist dran: 1
Es wurde gewuerfel: 6
Der Wurf ist dran: 2
Es wurde gewuerfel: 3
Der Wurf ist dran: 3
Es wurde gewuerfel: 5
Der Wurf ist dran: 4
Es wurde gewuerfel: 3
Die Summe betraegt: 22
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 1
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 0
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 2
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 2
Der Wurf ist dran: 0
Es wurde gewuerfel: 2
Der Wurf ist dran: 1
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 0
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 3
Der Wurf ist dran: 0
Es wurde gewuerfel: 4
Der Wurf ist dran: 1
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 3
Der Wurf ist dran: 0
Es wurde gewuerfel: 2
Der Wurf ist dran: 1
Es wurde gewuerfel: 2
Der Wurf ist dran: 2
Es wurde gewuerfel: 4
Der Wurf ist dran: 3
Es wurde gewuerfel: 5
Der Wurf ist dran: 4
Es wurde gewuerfel: 4
Die Summe betraegt: 17
Insgesamt hat der Spieler Punkte: 17
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 4
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 4
Der Wurf ist dran: 0
Es wurde gewuerfel: 2
Der Wurf ist dran: 1
Es wurde gewuerfel: 4
Der Wurf ist dran: 2
Es wurde gewuerfel: 6
Der Wurf ist dran: 3
Es wurde gewuerfel: 6
Der Wurf ist dran: 4
Es wurde gewuerfel: 4
Die Summe betraegt: 22
Insgesamt hat der Spieler Punkte: 39
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 5
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 5
Der Wurf ist dran: 0
Es wurde gewuerfel: 3
Der Wurf ist dran: 1
Es wurde gewuerfel: 3
Der Wurf ist dran: 2
Es wurde gewuerfel: 3
Der Wurf ist dran: 3
Es wurde gewuerfel: 2
Der Wurf ist dran: 4
Es wurde gewuerfel: 4
Die Summe betraegt: 15
Insgesamt hat der Spieler Punkte: 54
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 6
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 22
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 6
Der Wurf ist dran: 0
Es wurde gewuerfel: 5
Der Wurf ist dran: 1
Es wurde gewuerfel: 5
Der Wurf ist dran: 2
Es wurde gewuerfel: 5
Der Wurf ist dran: 3
Es wurde gewuerfel: 4
Der Wurf ist dran: 4
Es wurde gewuerfel: 5
Die Summe betraegt: 24
Insgesamt hat der Spieler Punkte: 78
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 7
Der Wurf ist dran: 0
Es wurde gewuerfel: 5
Der Wurf ist dran: 1
Es wurde gewuerfel: 6
Der Wurf ist dran: 2
Es wurde gewuerfel: 4
Der Wurf ist dran: 3
Es wurde gewuerfel: 3
Der Wurf ist dran: 4
Es wurde gewuerfel: 5
Die Summe betraegt: 23
Insgesamt hat der Spieler Punkte: 45
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 7
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 78
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 8
Der Wurf ist dran: 0
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 45
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 8
Der Wurf ist dran: 0
Es wurde gewuerfel: 5
Der Wurf ist dran: 1
Es wurde gewuerfel: 5
Der Wurf ist dran: 2
Es wurde gewuerfel: 6
Der Wurf ist dran: 3
Es wurde gewuerfel: 6
Der Wurf ist dran: 4
Es wurde gewuerfel: 1
Es wurde eine Eins gewuerfelt, die Runde ist ungueltig!!!!!
Insgesamt hat der Spieler Punkte: 78
--- --- ---
Der Spieler ist dran: 0
Die Runde ist dran: 9
Der Wurf ist dran: 0
Es wurde gewuerfel: 5
Der Wurf ist dran: 1
Es wurde gewuerfel: 5
Der Wurf ist dran: 2
Es wurde gewuerfel: 2
Der Wurf ist dran: 3
Es wurde gewuerfel: 2
Der Wurf ist dran: 4
Es wurde gewuerfel: 2
Die Summe betraegt: 16
Insgesamt hat der Spieler Punkte: 61
--- --- ---
Der Spieler ist dran: 1
Die Runde ist dran: 9
Der Wurf ist dran: 0
Es wurde gewuerfel: 4
Der Wurf ist dran: 1
Es wurde gewuerfel: 2
Der Wurf ist dran: 2
Es wurde gewuerfel: 5
Der Wurf ist dran: 3
Es wurde gewuerfel: 5
Der Wurf ist dran: 4
Es wurde gewuerfel: 6
Die Summe betraegt: 22
Insgesamt hat der Spieler Punkte: 100
Der Spieler hat gewonnen!!!!!
BUILD SUCCESSFUL (total time: 4 minutes 51 seconds)

Eventuell mal schauen, 1.) Methoden einführen, 2.) Wer fängt an?, 3.) Ausgabe so "leserlich"?.

Grüße

Achso, 5 EUR wäre mir das schon wert...
 

Meniskusschaden

Top Contributor
Na ja, dieser Thread scheint doch von Beginn an auf Schummelei ausgelegt gewesen zu sein. Da hätte ich jetzt in ethischer Hinsicht keine allzu große Erwartungshaltung aufgebaut.;)
 
X

Xyz1

Gast
Tut mir leid, wenn ihr verarscht wurdet. Meins kann er so nicht abgeben, weil es Softwaretechnisch Schrott ist.

----

Ich hab es (noch) nicht stochastisch durchgerechnet, aber derjenige, der Anfängt, hätte rechnerisch 'nen kleinen Vorteil, 100 oder mehr früher zu erreichen - oder?

Weiterhin gibt es noch zwei Variationen des Spiels "Böse Eins"... Es kann beliebig oft gewürfelt werden - wenn keine Eins fällt - und Zeit und/oder "Durchläufe" können begrenzt/reglementiert werden...

Beide Varianten hab ich nicht umgesetzt, dafür beliebig viele Spieler.

Der Benutzer sollte aber zur Interaktioneingabe aufgefordert werden, wenn "er" würfeln soll.
 

Cromewell

Top Contributor
Ich hab es (noch) nicht stochastisch durchgerechnet, aber derjenige, der Anfängt, hätte rechnerisch 'nen kleinen Vorteil, 100 oder mehr früher zu erreichen - oder?
Jap, ist ja bei vielen Spielen so.
Weiterhin gibt es noch zwei Variationen des Spiels "Böse Eins"... Es kann beliebig oft gewürfelt werden - wenn keine Eins fällt - und Zeit und/oder "Durchläufe" können begrenzt/reglementiert werden...
Der TE meinte ja, das es max. 5 Versuche gibt, bevor die Runde zu ende ist.

Achso, und zu dem Abgeben - die mussten es wohl schon am 15. abgeben :D
 

Tobse

Top Contributor
Ich hab es (noch) nicht stochastisch durchgerechnet, aber derjenige, der Anfängt, hätte rechnerisch 'nen kleinen Vorteil, 100 oder mehr früher zu erreichen - oder?
Sehe ich wie Cromewell. Wenn der zweite Spieler nicht auchnoch ein Untentschieden rausholen kann wenn der Erste die 100 knackt hat der 1. einen Vorteil.

Achso, und zu dem Abgeben - die mussten es wohl schon am 15. abgeben :D
Das wird ein weiterer Grund sein, warum der TE und sein Mitschüler kein Interesse an diesem Thread mehr haben...
 

Neue Themen


Oben