|
|
@ -0,0 +1,192 @@ |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
*/ |
|
|
|
package com.ugsbo.entscheider; |
|
|
|
|
|
|
|
import java.util.Scanner; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
/** |
|
|
|
* @author bruec |
|
|
|
* |
|
|
|
*/ |
|
|
|
public class Entscheider { |
|
|
|
|
|
|
|
/** |
|
|
|
* @param args |
|
|
|
*/ |
|
|
|
public static void main(String[] args) { |
|
|
|
System.out.println("Herzlich Willkommen!"); |
|
|
|
String a = fragen(); |
|
|
|
System.out.println(a); |
|
|
|
if(a != "Na dann halt nicht. Tschüssi.") { |
|
|
|
System.out.println("Auf Wiedersehen. Frag mich gerne nochmal wenn du mal wieder nicht weisst, ob du in die Vorlesung gehen solltest oder nicht."); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
//testbar |
|
|
|
//Eingaben -> alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl |
|
|
|
public static String ergebnis(int alter, int lernen, int gelb, int apfel, int mot, int harry, int fruehstueck, int anzahl) { |
|
|
|
int erg = (((alter + lernen + gelb) * apfel) / (mot + harry + fruehstueck)) - anzahl; |
|
|
|
String hilfe = ""; |
|
|
|
if (erg < 5) |
|
|
|
hilfe = "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen."; |
|
|
|
if (erg >= 5 && erg < 15) |
|
|
|
hilfe = "Naja, dann geh halt nach Hause und ruh dich aus."; |
|
|
|
if (erg >= 15) |
|
|
|
hilfe = "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin."; |
|
|
|
|
|
|
|
return hilfe; |
|
|
|
} |
|
|
|
//nicht testbar |
|
|
|
public static String fragen() { |
|
|
|
// Eingangsfrage |
|
|
|
System.out.println( |
|
|
|
"Du willst also wissen ob du in die Veranstaltung gehen sollst oder nicht? Gib 1 für Ja ein 0 für Nein."); |
|
|
|
int a = getAnInteger(); |
|
|
|
if (a == 1 || a == 0) { |
|
|
|
if (a == 1) { |
|
|
|
System.out.println("Dann werde ich dir jetzt ein paar Fragen stellen"); |
|
|
|
} else { |
|
|
|
return("Na dann halt nicht. Tschüssi."); |
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
a = pruefen(a); |
|
|
|
if (a == 1) { |
|
|
|
System.out.println("Dann werde ich dir jetzt ein paar Fragen stellen"); |
|
|
|
} else { |
|
|
|
return ("Na dann halt nicht. Tschüssi.") ; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
// zweite Frage |
|
|
|
System.out.println("Wie alt bist du?"); |
|
|
|
int alter = getAnInteger(); |
|
|
|
if (alter > 0) { |
|
|
|
System.out.println(alter); |
|
|
|
} else { |
|
|
|
while (alter <= 0) { |
|
|
|
System.out.println("Versuches es nochmal. Du musst mindestens 1 sein."); |
|
|
|
alter = getAnInteger(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// dritte Frage |
|
|
|
System.out.println("Auf einer Skala von 1 bis 10 wie motiviert bist du?"); |
|
|
|
int mot = getAnInteger(); |
|
|
|
if (mot >= 1 && mot <= 10) { |
|
|
|
System.out.println(mot); |
|
|
|
} else { |
|
|
|
mot = skalaTest(mot); |
|
|
|
System.out.println(mot); |
|
|
|
} |
|
|
|
|
|
|
|
// vierte Frage |
|
|
|
System.out.println("Hast du gefrühstückt? Bei Ja bitte 1 und bei Nein bitte 0"); |
|
|
|
int fruehstueck = getAnInteger(); |
|
|
|
if (fruehstueck == 1 || fruehstueck == 0) { |
|
|
|
System.out.println(fruehstueck); |
|
|
|
} else { |
|
|
|
fruehstueck = pruefen(fruehstueck); |
|
|
|
System.out.println(fruehstueck); |
|
|
|
} |
|
|
|
|
|
|
|
// fuenfte Frage |
|
|
|
System.out.println("Hast du jemals ein Harry Potterbuch gelesen? Bei Ja bitte 1 und bei Nein bitte 0"); |
|
|
|
int harry = getAnInteger(); |
|
|
|
if (harry == 1 || harry == 0) { |
|
|
|
System.out.println(harry); |
|
|
|
} else { |
|
|
|
harry = pruefen(harry); |
|
|
|
System.out.println(harry); |
|
|
|
} |
|
|
|
|
|
|
|
// sechste Frage |
|
|
|
System.out.println("Wie viele Äpfel hast du heute schon gegessen?"); |
|
|
|
int apfel = getAnInteger(); |
|
|
|
if (apfel > 0) { |
|
|
|
System.out.println(apfel); |
|
|
|
} else { |
|
|
|
while (apfel <= 0) { |
|
|
|
System.out.println("Versuches es nochmal. Die Zahl muss positiv sein."); |
|
|
|
apfel = getAnInteger(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// siebte Frage |
|
|
|
System.out.println("Wie viele Veranstaltungen hattest du heute schon?"); |
|
|
|
int anzahl = getAnInteger(); |
|
|
|
if (anzahl > 0) { |
|
|
|
System.out.println(anzahl); |
|
|
|
} else { |
|
|
|
while (anzahl <= 0) { |
|
|
|
System.out.println("Versuches es nochmal. Die Zahl muss positiv sein."); |
|
|
|
anzahl = getAnInteger(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// achte Frage |
|
|
|
System.out.println("Was würdest du statt der Vorlesung machen? Lernen? Bei Ja bitte 1 und bei Nein bitte 0"); |
|
|
|
int lernen = getAnInteger(); |
|
|
|
if (lernen == 1 || lernen == 0) { |
|
|
|
System.out.println(lernen); |
|
|
|
} else { |
|
|
|
lernen = pruefen(lernen); |
|
|
|
System.out.println(lernen); |
|
|
|
} |
|
|
|
if (lernen == 1) |
|
|
|
System.out.println("Wenn du das sagst, aber lueg dich doch bitte nicht selbst an."); |
|
|
|
|
|
|
|
// neunte Frage |
|
|
|
System.out.println("Wuerdest du dir ein gelbes Auto kaufen? Bei Ja bitte 1 und bei Nein bitte 0"); |
|
|
|
int gelb = getAnInteger(); |
|
|
|
if (gelb == 1 || gelb == 0) { |
|
|
|
System.out.println(gelb); |
|
|
|
} else { |
|
|
|
gelb = pruefen(gelb); |
|
|
|
System.out.println(gelb); |
|
|
|
} |
|
|
|
|
|
|
|
// Auswertung |
|
|
|
|
|
|
|
String antwort = ergebnis(alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl); |
|
|
|
return antwort; |
|
|
|
|
|
|
|
} |
|
|
|
//nicht testbar |
|
|
|
public static int skalaTest(int answer) { |
|
|
|
System.out.println("Try again. Nur Werte zwischen 1 und 10 sind erlaubt."); |
|
|
|
int b = getAnInteger(); |
|
|
|
if (b >= 1 && b <= 10) { |
|
|
|
return b; |
|
|
|
} |
|
|
|
skalaTest(b); |
|
|
|
return -1; |
|
|
|
} |
|
|
|
//nicht testbar |
|
|
|
public static int getAnInteger() { |
|
|
|
Scanner in = new Scanner(System.in); |
|
|
|
while (true) { |
|
|
|
try { |
|
|
|
return in.nextInt(); |
|
|
|
} catch (InputMismatchException e) { |
|
|
|
in.next(); |
|
|
|
System.out.println("Das ist kein Integer. Try again."); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//Nicht testbar |
|
|
|
public static int pruefen(int answer) { |
|
|
|
System.out.println("Try again. Nur 1 und 0 sind erlaubt."); |
|
|
|
int b = getAnInteger(); |
|
|
|
if (b == 1 || b == 0) { |
|
|
|
return b; |
|
|
|
} |
|
|
|
pruefen(b); |
|
|
|
return 1; |
|
|
|
} |
|
|
|
|
|
|
|
} |