-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpraxisteil3.java
More file actions
73 lines (58 loc) · 1.88 KB
/
Copy pathpraxisteil3.java
File metadata and controls
73 lines (58 loc) · 1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import java.util.ArrayList;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
ArrayList<Spieler> player = new ArrayList<Spieler>();
JTextField inputName = new JTextField();
JTextField inputNumber = new JTextField();
inputNumber.setText("");
Object[] inputFields = { "Name", inputName, "Schätzwert", inputNumber };
String[] buttons = { "Ok" };
// Spieler einlesen
int counter = 1;
for (int i = 0; i < 5; i++) {
JOptionPane.showOptionDialog(null, inputFields, "Schätzspiel: Spieler " + counter,
JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, buttons, buttons[0]);
player.add(new Spieler(inputName.getText(), Integer.parseInt(inputNumber.getText())));
inputName.setText("");
inputNumber.setText("");
counter++;
}
// Lösung einlesen
String input = JOptionPane.showInputDialog(null, "Lösung", "Lösung eingeben", JOptionPane.DEFAULT_OPTION);
// Eingabe mit Lösungen vergleichen
int[] differenzen = new int[5];
for (int i = 0; i < 5; i++) {
differenzen[i] = Math.abs(player.get(i).getSchaetzwert() - Integer.parseInt(input));
}
int min = differenzen[0];
for (int i = 0; i < 5; i++) {
if (differenzen[i] < min) {
min = differenzen[i];
}
}
// Gewinner verkünden bei 1 Gewinner
String[] gewinner = new String[5];
for (int i = 0; i < 5; i++) {
if (min == differenzen[i]) {
gewinner[i] = player.get(i).getName();
}
}
int count = 0;
for (int i = 0; i < 5; i++) {
if (gewinner[i] != null) {
count++;
}
}
String winner = gewinner[0];
if (count == 1) {
JOptionPane.showMessageDialog(null, "Gewonnen hat: " + winner, "Gewinner", JOptionPane.PLAIN_MESSAGE);
}
else {
for (int i = 1; i < count; i++) {
winner += ", " + gewinner[i];
}
JOptionPane.showMessageDialog(null, "Gewonnen hat: " + winner, "Gewinner", JOptionPane.PLAIN_MESSAGE);
}
}
}