Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich habe neulich erst angefangen zu programmieren und versuch so viele programmier-aufgaben zu lösen, die ich kriege. folgende habe ich versucht zu lösen:
a) Implementieren Sie eine Java-main-Methode mit zwei lokalen Variablen vom Typ double. Die eine Variable soll den initialen Wert 0,0 und die andere den Wert 0,1 eins haben. Addieren Sie (ohne Schleife) 10 mal den Wert der zweiten Variable auf die erste.
Vergleichen Sie anschliessend den Wert mit dem Identitätsoperator == auf 1,0 und geben Sie das Ergebnis dieses Booleschen Ausdrucks und der zwei Variablen auf dem Bildschirm aus.
Java:
public class Add{
public static void main (String [] args){
// drei lok. Variablen vom Typ double
double a;
double b;
double c;
a = 0.1;
b = 0.0;
c = 10*(a+b);
if(c == 0.1){
System.out.println(true);
}
else
System.out.println(false);
System.out.println("Der Wert von c ist: " + a);
System.out.println("Der Wert von c ist: " + b);
}
}
ich kann das programm ausführen und da kommt genau das raus, was auch rauskommen sollte. Die ausgabe auf der Konsole lautet nämlich:
false
Der Wert von b ist 0.1
Der Wert von a ist 0.0
meint ihr dass der code so okay ist, oder gibt es mögliche stellen die noch zu verbessern sind?
laut Aufgabenstellung sollst du zehnmal die zweite Variable auf die erste addieren. Was du machst, ist das Zehnfache der Summe der beiden Variablen zu berechnen. Das sind natürlich zwei komplett verschiedene Dinge.
Des Weiteren sollst du mit 1,0 vergleichen, nicht mit 0,1.
Java:
// Aktuell bei dir:
if (statement)
System.out.println(true);
else
System.out.println(false);
// So besser:
System.out.println(statement);
PS: Deine angegebene Konsolenausgabe kann unmöglich durch deinen gegebenen Code erfolgt sein. :bae:
gem. Aufgabenstellung würde ich nichts mit multiplizieren machen, sondern exakt so wie es in der Aufgabenstellung steht, also 10x addieren. Mit entsprechender Ausgabe sieht man sicherlich auch die Intention des Aufgabenstellers:
Java:
public static void main(String[] args) {
double a;
double b;
a = 0.0;
b = 0.1;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
a += b;
System.out.println("Der Wert von a ist: " + a);
if (a == 1.0) {
System.out.println(true);
} else {
System.out.println(false);
}
}
Java:
Der Wert von a ist: 0.0
Der Wert von a ist: 0.1
Der Wert von a ist: 0.2
Der Wert von a ist: 0.30000000000000004
Der Wert von a ist: 0.4
Der Wert von a ist: 0.5
Der Wert von a ist: 0.6
Der Wert von a ist: 0.7
Der Wert von a ist: 0.7999999999999999
Der Wert von a ist: 0.8999999999999999
Der Wert von a ist: 0.9999999999999999
false