fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4.  
  5. public class Autofahren
  6. {
  7. private static final String DIESEL = "D";
  8. private static final String BENZIENER = "B";
  9.  
  10. private static final int MAX_TANKFUELLUNG = 70;
  11. private static final int MAX_KM_STAND = 100000;
  12. private static final int MAX_BENZINVERAUCH = 15;
  13.  
  14. private double tankFuellung;
  15. private double kmStand;
  16. private double benzinVerbrauch;
  17. private String fahrzeugTyp;
  18.  
  19. public Autofahren() {
  20. tankFuellung = 0;
  21. kmStand = 0;
  22. benzinVerbrauch = 0;
  23. fahrzeugTyp = "";
  24. }
  25.  
  26. public Autofahren(double tankFuellung, double kmStand, double benzinVerbrauch, String fahrzeugTyp) {
  27. setTankFuellung(tankFuellung);
  28. setKmStand(kmStand);
  29. setBenzinVerbrauch(benzinVerbrauch);
  30. setFahrzeugtyp(fahrzeugTyp);
  31. }
  32.  
  33. public void fahren(int km) {
  34. if (km <= 0) {
  35. System.err.println("Es muessen mehr als 0 km gefahren werden.");
  36. return;
  37. }
  38.  
  39. if(km > kmMoeglich()) {
  40. System.err.println("Es ist nicht möglich " + km + " km zu fahren, da nur noch " + kmMoeglich() + " km gefahren werden können.");
  41. return;
  42. }
  43.  
  44. kmStand += km;
  45. }
  46.  
  47. public double kmMoeglich() {
  48. if(benzinVerbrauch <= 0) {
  49. System.err.println("Der Kraftstoffverbrauch muss groesser 0 sein.");
  50. return 0;
  51. }
  52.  
  53. return (tankFuellung / benzinVerbrauch) * 100;
  54. }
  55.  
  56. public void detailAusgabe() {
  57. System.out.println("Ihr Kilometerstand beträgt: " + kmStand + " km");
  58. System.out.println("Ihre Tankfüllung beträgt: " + tankFuellung + " Liter");
  59. System.out.println("Ihr Benzinverbrauch pro 100 km beträgt: " + benzinVerbrauch);
  60. System.out.println("Sie können noch fahren: " + kmMoeglich() + " km");
  61.  
  62. if(fahrzeugTyp.equals(BENZIENER)) {
  63. System.out.println("Sie fahren ein Benzin-Fahrzeug");
  64. } else if(fahrzeugTyp.equals(DIESEL)) {
  65. System.out.println("Sie fahren ein Diesel-Fahrzeug");
  66. } else {
  67. System.out.println("Fahrzeugtyp unbekannt");
  68. }
  69. }
  70.  
  71. private boolean istGueltigerFahrzeugtyp(String fahrzeugTyp) {
  72. if(fahrzeugTyp.equals(BENZIENER) || fahrzeugTyp.equals(DIESEL)) {
  73. return true;
  74. }
  75.  
  76. System.err.println("Der Fahrzeugtyp " + fahrzeugTyp + " wird nicht unterstützt.");
  77. return false;
  78. }
  79.  
  80. private boolean istGueltigeTankfuellung(double tankFuellung) {
  81. if(tankFuellung > MAX_TANKFUELLUNG) {
  82. System.err.println("Die maximale Tankfuellung beträgt " + MAX_TANKFUELLUNG + " Liter, es wurde aber versucht " + tankFuellung + " Liter zu tanken.");
  83. return false;
  84. }
  85.  
  86. return true;
  87. }
  88.  
  89. private boolean istGueltigerKmStand(double kmStand) {
  90. if(kmStand > MAX_KM_STAND) {
  91. System.err.println("Der maximale Kilometerstand beträgt " + MAX_KM_STAND + " km, es wurde aber versucht den Kilomterstand auf" + kmStand + " km zu setzen.");
  92. return false;
  93. }
  94.  
  95. return true;
  96. }
  97.  
  98. private boolean istGueltigerBenzinverbrauch(double benzinVerbrauch) {
  99. if(benzinVerbrauch > MAX_BENZINVERAUCH) {
  100. System.err.println("Der maximale Benzinverbrauch beträgt " + MAX_BENZINVERAUCH + " Liter/100km, es wurde aber versucht den Benzinverbrauch auf" + benzinVerbrauch + " km/100km zu setzen.");
  101. return false;
  102. }
  103.  
  104. return true;
  105. }
  106.  
  107. public double getTankFuellung() {
  108. return tankFuellung;
  109. }
  110.  
  111. public void setTankFuellung(double tankFuellung) {
  112. if(istGueltigeTankfuellung(tankFuellung)) {
  113. this.tankFuellung = tankFuellung;
  114. }
  115. }
  116.  
  117. public double getKmStand() {
  118. return kmStand;
  119. }
  120.  
  121. public void setKmStand(double kmStand) {
  122. if(istGueltigerKmStand(kmStand)) {
  123. this.kmStand = kmStand;
  124. }
  125. }
  126.  
  127. public double getBenzinVerbrauch() {
  128. return benzinVerbrauch;
  129. }
  130.  
  131. public void setBenzinVerbrauch(double benzinVerbrauch) {
  132. if(istGueltigerBenzinverbrauch(benzinVerbrauch)) {
  133. this.benzinVerbrauch = benzinVerbrauch;
  134. }
  135. }
  136.  
  137. public String getFahrzeugtyp() {
  138. return fahrzeugTyp;
  139. }
  140.  
  141. public void setFahrzeugtyp(String fahrzeugTyp) {
  142. if(istGueltigerFahrzeugtyp(fahrzeugTyp)) {
  143. this.fahrzeugTyp = fahrzeugTyp;
  144. }
  145. }
  146. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:5: error: class Autofahren is public, should be declared in a file named Autofahren.java
public class Autofahren
       ^
1 error
stdout
Standard output is empty