Ultra Geile Studenten Benutzer Oberfläche (UGSBO)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

190 lines
4.8 KiB

  1. /**
  2. *
  3. */
  4. package com.ugsbo.entscheider;
  5. import java.util.Scanner;
  6. import java.util.*;
  7. /**
  8. * @author bruec
  9. *
  10. */
  11. public class Entscheider {
  12. /**
  13. * @param args
  14. */
  15. public static void main(String[] args) {
  16. System.out.println("Herzlich Willkommen!");
  17. String a = fragen();
  18. System.out.println(a);
  19. if(a != "Na dann halt nicht. Tschüssi.") {
  20. System.out.println("Auf Wiedersehen. Frag mich gerne nochmal wenn du mal wieder nicht weisst, ob du in die Vorlesung gehen solltest oder nicht.");
  21. }
  22. }
  23. public static String ergebnis(int a, int b, int c, int d, int e, int f, int g, int h) {
  24. int erg = (((a + b + c) * d) / (e + f + g)) - h;
  25. String hilfe = "";
  26. if (erg < 5)
  27. hilfe = "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen.";
  28. if (erg >= 5 && erg < 15)
  29. hilfe = "Naja, dann geh halt nach Hause und ruh dich aus.";
  30. if (erg >= 15)
  31. hilfe = "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin.";
  32. return hilfe;
  33. }
  34. public static String fragen() {
  35. // Eingangsfrage
  36. System.out.println(
  37. "Du willst also wissen ob du in die Veranstaltung gehen sollst oder nicht? Gib 1 für Ja ein 0 für Nein.");
  38. int a = getAnInteger();
  39. if (a == 1 || a == 0) {
  40. if (a == 1) {
  41. System.out.println("Dann werde ich dir jetzt ein paar Fragen stellen");
  42. } else {
  43. return("Na dann halt nicht. Tschüssi.");
  44. }
  45. } else {
  46. a = pruefen(a);
  47. if (a == 1) {
  48. System.out.println("Dann werde ich dir jetzt ein paar Fragen stellen");
  49. } else {
  50. return ("Na dann halt nicht. Tschüssi.") ;
  51. }
  52. }
  53. // zweite Frage
  54. System.out.println("Wie alt bist du?");
  55. int alter = getAnInteger();
  56. if (alter > 0) {
  57. System.out.println(alter);
  58. } else {
  59. while (alter <= 0) {
  60. System.out.println("Versuches es nochmal. Du musst mindestens 1 sein.");
  61. alter = getAnInteger();
  62. }
  63. }
  64. // dritte Frage
  65. System.out.println("Auf einer Skala von 1 bis 10 wie motiviert bist du?");
  66. int mot = getAnInteger();
  67. if (mot >= 1 && mot <= 10) {
  68. System.out.println(mot);
  69. } else {
  70. mot = skalaTest(mot);
  71. System.out.println(mot);
  72. }
  73. // vierte Frage
  74. System.out.println("Hast du gefrühstückt? Bei Ja bitte 1 und bei Nein bitte 0");
  75. int fruehstueck = getAnInteger();
  76. if (fruehstueck == 1 || fruehstueck == 0) {
  77. System.out.println(fruehstueck);
  78. } else {
  79. fruehstueck = pruefen(fruehstueck);
  80. System.out.println(fruehstueck);
  81. }
  82. // fuenfte Frage
  83. System.out.println("Hast du jemals ein Harry Potterbuch gelesen? Bei Ja bitte 1 und bei Nein bitte 0");
  84. int harry = getAnInteger();
  85. if (harry == 1 || harry == 0) {
  86. System.out.println(harry);
  87. } else {
  88. harry = pruefen(harry);
  89. System.out.println(harry);
  90. }
  91. // sechste Frage
  92. System.out.println("Wie viele Äpfel hast du heute schon gegessen?");
  93. int apfel = getAnInteger();
  94. if (apfel > 0) {
  95. System.out.println(apfel);
  96. } else {
  97. while (apfel <= 0) {
  98. System.out.println("Versuches es nochmal. Die Zahl muss positiv sein.");
  99. apfel = getAnInteger();
  100. }
  101. }
  102. // siebte Frage
  103. System.out.println("Wie viele Veranstaltungen hattest du heute schon?");
  104. int anzahl = getAnInteger();
  105. if (anzahl > 0) {
  106. System.out.println(anzahl);
  107. } else {
  108. while (anzahl <= 0) {
  109. System.out.println("Versuches es nochmal. Die Zahl muss positiv sein.");
  110. anzahl = getAnInteger();
  111. }
  112. }
  113. // achte Frage
  114. System.out.println("Was würdest du statt der Vorlesung machen? Lernen? Bei Ja bitte 1 und bei Nein bitte 0");
  115. int lernen = getAnInteger();
  116. if (lernen == 1 || lernen == 0) {
  117. System.out.println(lernen);
  118. } else {
  119. lernen = pruefen(lernen);
  120. System.out.println(lernen);
  121. }
  122. if (lernen == 1)
  123. System.out.println("Wenn du das sagst, aber lueg dich doch bitte nicht selbst an.");
  124. // neunte Frage
  125. System.out.println("Wuerdest du dir ein gelbes Auto kaufen? Bei Ja bitte 1 und bei Nein bitte 0");
  126. int gelb = getAnInteger();
  127. if (gelb == 1 || gelb == 0) {
  128. System.out.println(gelb);
  129. } else {
  130. gelb = pruefen(gelb);
  131. System.out.println(gelb);
  132. }
  133. // Auswertung
  134. String antwort = ergebnis(alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl);
  135. return antwort;
  136. }
  137. public static int skalaTest(int answer) {
  138. System.out.println("Try again. Nur Werte zwischen 1 und 10 sind erlaubt.");
  139. int b = getAnInteger();
  140. if (b >= 1 && b <= 10) {
  141. return b;
  142. }
  143. skalaTest(b);
  144. return -1;
  145. }
  146. public static int getAnInteger() {
  147. Scanner in = new Scanner(System.in);
  148. while (true) {
  149. try {
  150. return in.nextInt();
  151. } catch (InputMismatchException e) {
  152. in.next();
  153. System.out.println("Das ist kein Integer. Try again.");
  154. }
  155. }
  156. }
  157. public static int pruefen(int answer) {
  158. System.out.println("Try again. Nur 1 und 0 sind erlaubt.");
  159. int b = getAnInteger();
  160. if (b == 1 || b == 0) {
  161. return b;
  162. }
  163. pruefen(b);
  164. return 1;
  165. }
  166. }