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;
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