Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: this_feature_currently_requires_accessing_site_using_safari


// Einlesen des Dollar-Gesamtbetrages
double dollar = 28,98;

sieht fast wie ein Hausaufgaben zusammenbasteln aus 
Dann wäre es auch gut die Lösung zu posten. Vllt. hat mal jmd. ein ähnliches Problem und kommt hier über Google her.Fehler gefunden
Und jetzt ?
Entweder funktioniert dein Code oder nicht, das wirst du ja wohl schon selbst probiert haben. Oder sollen wir für dich die Hausaufgaben machen ?
Was ist deine Frage ?
Ich würde das ganze mit einem Array lösen und per Schleife durchgehen, wäre etwa 1/4 Code weniger.
Aber da du ja sagst dass keine Schleifen verwendet werden dürfen....... also hat sich der Verbesserungsvorschlag schon erledigt.
package de.hardwareluxx.trollolo;
import de.hardwareluxx.trollolo.visitor.CountVisitor;
import de.hardwareluxx.trollolo.visitor.Unit;
public class Trollolo
{
public static void main( String[] args )
{
Unit.BUCK.accept(new CountVisitor(28.98));
}
}
package de.hardwareluxx.trollolo.visitor;
public enum Unit {
BUCK(1) , HALF (0.5), QUARTER (0.25), DIME(0.1), NICKEL(0.05), PENNY(0.01);
private double divisor;
Unit(double divisor){
this.divisor = divisor;
}
public double getDivisor() {
return divisor;
}
public Unit next() {
try{
return Unit.values()[this.ordinal()+1];
}catch(Exception e){
return null;
}
}
public void accept(CountVisitor visitor) {
visitor.visit(this);
}
}
package de.hardwareluxx.trollolo.visitor;
public class CountVisitor {
private double dollar;
public CountVisitor(double dollar){
this.dollar = dollar;
}
public void visit(Unit unit) {
int count = (int) (dollar / unit.getDivisor());
dollar %= unit.getDivisor();
System.out.println(count + " x " + unit.toString());
if (unit.next() == null) {
return;
}
unit.next().accept(this);
}
}
.
if(day > 0 && day <= 31)
{
// korrektes Datum
}

if(eingegebeneZahl < 400 || eingegebeneZahl > 500)
{
// nicht erlaubte zahl, fehler
}

public class Datum2 {
public static void main (String[] args) {
int Jahr = 1425;
int Tage = 0;
int Monat = 12;
int Tag = 10;
switch (Monat) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
Tage = 31;
break;
case 4:
case 6:
case 9:
case 11:
Tage = 30;
break;
case 2:
Tage = 28;
break;
}
if(Tag > Tage){
System.out.println("fehler");}
else {
if(Jahr <= 1583) {
System.out.println("Das ist viel zu frühhhh");}
else {
System.out.println("Datum" +Tag+"."+Monat+"."+Jahr);
}
if (Jahr % 4==0 && Jahr%100!=0){
System.out.println ("Schaltjahr");}
else {
if (Jahr % 400==0){
}
System.out.println ("Schaltjahr");}
}
}
}
class Binaer2Dezimal2Hexa {
public static void main(String[] args) {
String binaer = args[0];
long dezimal = Long.parseLong(binaer,2);
String hexadezimal = Long.toHexString(dezimal);
System.out.println("Binär: " + binaer);
System.out.println("Dezimal: " + dezimal);
System.out.println("Hexadezimal: " + hexadezimal);
}
}
do {
hexazahl = zahl%16 + hexazahl;
if ((zahl%16)==10) { hexazahl = "A" ; }
if ((zahl%16)==11) { hexazahl = "B" ; }
if ((zahl%16)==12) { hexazahl = "C" ; }
if ((zahl%16)==13) { hexazahl = "D" ; }
if ((zahl%16)==14) { hexazahl = "E" ; }
if ((zahl%16)==15) { hexazahl = "F" ; }
zahl = zahl/16;
} while (zahl > 0);
101 binär ==> 1*2^2 + 0*2^1 + 1*2^0