Meiern mit Java

OlDirty

Mitglied
Es sollte folgende Aufgabe gelöst werden:

Verzweigungen und Wahrheitswerte

In einem Würfelspiel werden zwei Würfel verwendet. Aus den beiden Augenzahlen der Würfel soll die Punktzahl des Wurfes nach folgenden Regeln errechnet werden.

Die Reihenfolge der Augenzahlen soll immer die größere Augenzahl zuerst und dann die kleinere nennen.
2, 1 heißt "unschlagbar" und ergibt 1000 Punkte.
Zeigen beide Würfel die gleiche Augenzahl a, spricht man von einem Pasch. Dieser Pasch wird mit 100 * a Punkten bewertet. 5, 5 ergibt also 500 Punkte.
Für alle anderen Kombinationen wird die größere Augenzahl als Zehnerziffer und die andere als Einerziffer einer zweistelligen Zahl interpretiert. 3, 4 und 4, 3 ergeben also 43 Punkte.


Vorlage sieht wie folgt aus:
Java:
/**
 * Java 1 Aufgabe 3
 * Wurfbewertung
 *
 * @author <Ihr Name>
 */
class WurfBewertung {
    
    /**
     * Berechnet die Punkte für das Würfelspiel lt. Aufgabenstellung.
     * o Die Reihenfolge der Augenzahlen soll immer die größere Augenzahl 
     * zuerst und dann die kleinere nennen.
     * 
     * 2, 1 heißt "unschlagbar" und ergibt 1000 Punkte.
     * 
     * Zeigen beide Würfel die gleiche Augenzahl a, spricht man von einem Pasch.
     * Dieser Pasch wird mit 100 * a Punkten bewertet. 
     * 5, 5 ergibt also 500 Punkte.
     * 
     * Für alle anderen Kombinationen wird die größere Augenzahl als Zehnerziffer
     * und die andere als Einerziffer einer zweistelligen Zahl interpretiert. 
     * 3, 4 und 4, 3 ergeben also 43 Punkte.
     * 
     * @param args Augenzahlen der beiden Würfel
     */
    public static void main( String[] args) {
        int a = Integer.parseInt(args[0]);
        int b = Integer.parseInt(args[1]);
        
        System.out.println("Eingabe: "+a+" "+b);
        
        /* hier muss Ihr Proagrammteil hin. */

Kann mir da vielleicht jemand helfen, bin total überfragt :(
 
Zuletzt bearbeitet von einem Moderator:

Solor

Aktives Mitglied
also zuerst schaust du mal, ob a größer, gleich, oder kleiner ist.
Wenn es gleich ist, ist es einfach, dann sind deine punkte ja einfach 100 * a.
Wenn es kleiner bzw größer ist, multiplizierst du die größere Zahl mit 10 und addierst die kleinere Zahl.
Zum Schluss überprüfst du noch, ob deine Punktzahl bei 21 liegt (das wäre der Fall "unschlagbar") und setzt deine punkte dann eben auf 1000.
 

Landei

Top Contributor
Erst einmal den großen roten Hinweis mit den Java-Tags beachten.

Du hast dann verschiedene Fälle, die du abfragen musst. Ich würde dir empfehlen, erst einmal beide Werte zu ordnen:

Java:
...
int bigger = 0;
int smaller = 0;

if (a > b) {
   bigger = a;
   smaller = b;
} else {
   bigger = b;
   smaller = a; 
}

//Profi-Version mit ternärem Operator:
int bigger = a > b ? a : b;
int smaller = a > b ? b : a;

Dann halt die Fälle auseinanderklamüsern

Java:
if (bigger == 2 && smaller == 1) {
   //tu was
} else if (/*Wie testet man auf Pasch???*/) {
   //tu was
} else {  //Normalfall
   //tu was
}
 
T

TryToHelp

Gast
Java:
if (a==b) { // so testet man auf pasch kannst auch bigger==smaller nehmen
   //tu was
}
 
S

Spacerat

Gast
Ist nicht eigentlich 42 der höchste Wurf und dann erst 21 oder ist Meiern doch was anderes als Hamburger Pasch?
[Java]public int evaluatePoints(int wa, int wb) {
if(wa < 1 || wa > 6 || wb < 1 || wb > 6) {
throw new IllegalArgumentException("Mit solchen Wuerfeln spiele ich nicht!");
}
int a = Math.max(wa, wb);
int b = Math.min(wa, wb);

if(a == b) {
return a * 100;
}
if(a == 4 && b == 2) {
return 1000;
if(a == 2) {
return 750;
}
return a * 10 + b;
}[/code]
[EDIT]:oops: Waren das etwa Hausaufgaben?[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
T

TryToHelp

Gast
Ist nicht eigentlich 42 der höchste Wurf und dann erst 21 oder ist Meiern doch was anderes als Hamburger Pasch?
[EDIT]:oops: Waren das etwa Hausaufgaben?[/EDIT]

Hä was ist Hamburger Pasch, ne Meier ist sowas wie Mäxchen und da ist nur die 21 hoch, dannach der 6,5,4,3,2,1 Pasch und dann 65,64,63,62,61,54,... und nach manchen Regeln hat man mit 31 doppelt verloren :-D

und ja waren würde ich sagen Hausaufgaben
 
S

Spacerat

Gast
Hamburger Pasch? Schau dir meine Methode an. Zur Not hilft auch Google bzw. Wikipedia.
Meiern ? Wikipedia
Frag' mich nur, warum der Name "Hamburger Pasch" seit Werner nicht mehr so geläufig ist. Vllt. liegts auch daran, das in Kneipen, wo man so etwas spielte, damals noch "echte Kerle" saßen, die mit solch verniedlichenden Namen wie "Mäxchen" nichts anfangen konnten. :lol:
 
Zuletzt bearbeitet von einem Moderator:

Solor

Aktives Mitglied
wikipedia hat gesagt.:
Gliederungspunkt Variationen:
-Die 42 ist nicht eingereiht, sondern folgt erst nach der 21 und stellt damit den höchstmöglichen Wurf dar: 31, 32, 41, 43, 51, 52, 53, 54, 61, 62, 63, 64, 65, 11, 22, 33, 44, 55, 66, 21, 42. Sie wird dann „Doppelmeier“ oder „Doppelmäxchen“ bzw. „Hamburger!“ genannt. Bezeichnet jemand sie als „42“, so hat er sofort verloren.
Da stehts ja ;)
 
Zuletzt bearbeitet:

ARadauer

Top Contributor
[EDIT]:oops: Waren das etwa Hausaufgaben?[/EDIT]
naja egal, wer sowas nicht schaft fliegt sowieso, schade eigentlich... die lehrer machen sich die mühe um interessante beispiele zu finden und die studies posten es einfach in ein form... wer keine lust hat zu programmieren soll bwl studieren ;-)

Java:
  if(a == 2) {
    return 750;
  }
trotzdem kann man drüber diskutieren.. das gefällt mir persönlich nicht.
dieser ausdruck beschreibt 21, weil du vorher sortiert und die pasch abgefragt hast.
aber die fachlichkeit der anforderung spiegelt sich für mich nicht wirklich im code wieder...
wie würde man es erklären. 21 ist das höchst, dann die pasch und dann der rest wo immer die höchste zahl zählt...

ich würds so schreiben..

Java:
public int evaluatePoints(int wa, int wb) {
		if (wa < 1 || wa > 6 || wb < 1 || wb > 6) {
			throw new IllegalArgumentException("Mit solchen Wuerfeln spiele ich nicht!");
		}
		int a = Math.max(wa, wb);
		int b = Math.min(wa, wb);

		//21
		if(a == 2 && b == 1){
			return 1000;
		}
		//pasch
		if (a == b) {
			return a * 100;
		}
		//rest..
		return a * 10 + b;

	}
das 42 oder 31 was besonderes ist spielen wir nicht..
 
T

TryToHelp

Gast
@ARadauer, ja deine Lösung sieht gut aus ;-)
@Spacerat, ja hätte ich machen können, ich entschuldige mich, das ich nicht erst google befragt habe oder deinen Code angeschaut habe, schande über mich. Also Hamburger Pasch war hier meines wissens nach nie geläufig, aber auch Meiern kenne ich nur durch Werner und ist hier garnicht geläufig, wenn man jemanden fragt, würde er es sicherlich nicht kennen. Hier heißt es schon immer Mäxchen, und es gibt noch so schöne viele Regelabwandlungen (z.B. ohne anschauen und dann mit sagen, dann reicht die selbe augenzahl oder mehr ohne würfeln, so kann man einen Pasch durchreichen,...)
 

OlDirty

Mitglied
"naja egal, wer sowas nicht schaft fliegt sowieso, schade eigentlich... die lehrer machen sich die mühe um interessante beispiele zu finden und die studies posten es einfach in ein form... wer keine lust hat zu programmieren soll bwl studieren."

Weil ich ja keine Lust zum Programmieren habe studiere ich auch Chemietechnik!!!

Doch unsere FH ist der Meinung, dass wir irgendwann in unserem Leben (nach nur einem Semester Java-Grundlagen) Zeit damit verbringen irgendwas zu schreiben.

Ich denke bei einem Stundenlohn von 25-30€ gibt es da Leute, die das 100x schneller und besser machen als wir, die nur die absoluten Basics lernen.
 

Solor

Aktives Mitglied
Das soll jetzt nicht bös gemeint sein, aber selbst das kriegt man schon mit basics hin. Ein paar if-else Verzweigungen; das war es ja dann auch schon.
Und übrigens: Es gibt hier eine Zitat-Funktion ;)
 

OlDirty

Mitglied
Das soll jetzt nicht bös gemeint sein, aber selbst das kriegt man schon mit basics hin. Ein paar if-else Verzweigungen; das war es ja dann auch schon.
Und übrigens: Es gibt hier eine Zitat-Funktion ;)

Die hab ich irgendwie übersehen :)

Wir hatten bis jetzt 3 Vorlesungen je 90min von denen vielleicht 90 Minuten wirklich Stoff waren und nicht Infos und Sonstiges zur Vorlesung selbst...

Und für einen "Chemikant" der sich zwar ein bischen mit Widows, Hardware und Office-Programmen auskennt ist jede Art von Programmieren absolutes Neuland.

Anwenden : gern !

Schreibe : nur weil wir dazu "gezwungen" werden :(
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Probleme mit drucken aus Java Java Basics - Anfänger-Themen 3
Gokul Java chart library suggestion for web application? Java Basics - Anfänger-Themen 2
D wie kann ich gcc aus einer .java datei heraus aufrufen? Java Basics - Anfänger-Themen 2
S Text Formatierung in Java Java Basics - Anfänger-Themen 2
B Erste Schritte yaml parsen in Java Java Basics - Anfänger-Themen 19
C Methoden Umlaute in Java Java Basics - Anfänger-Themen 18
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 45
W Methoden java map ersatz für c++map Java Basics - Anfänger-Themen 3
M Erste Schritte Java Primzahltester Java Basics - Anfänger-Themen 4
A csv Reader für Java? Java Basics - Anfänger-Themen 27
K Java - Enums Java Basics - Anfänger-Themen 30
tomzen Java Unterstützung für exel dateien installieren. Java Basics - Anfänger-Themen 2
Rookar java.lang.NoClassDefFoundError: org/json/JSONException Java Basics - Anfänger-Themen 2
Rookar Mit Button andere java öffnen Java Basics - Anfänger-Themen 4
F Java Object to Hashmap ? Java Basics - Anfänger-Themen 6
I Backend in Java und Ansicht von Dateien in statische HTML Seiten? Java Basics - Anfänger-Themen 15
R Input/Output Verwendung des Euro-Zeichens in Java Java Basics - Anfänger-Themen 7
I Push Nachrichten von JAVA EE App an Mobile App Java Basics - Anfänger-Themen 3
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
G Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
G Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
julian-fr Wie kann ich am besten Java lernen? Java Basics - Anfänger-Themen 17
A Java-Properties und -RessourceBundles Java Basics - Anfänger-Themen 5
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
C was heisst es wenn java ']' erwartet ? Java Basics - Anfänger-Themen 2
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
J Java Testklasse Java Basics - Anfänger-Themen 5
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
W Java-Code mit Array Java Basics - Anfänger-Themen 14
W Java-Code Java Basics - Anfänger-Themen 2
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
W Java code- TicTac toe Java Basics - Anfänger-Themen 51
Ostkreuz Java Docs Java Basics - Anfänger-Themen 9
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32

Ähnliche Java Themen

Neue Themen


Oben