Boolean Expressions
-
Hallo beisammen,
habe folgende Aufgabe mit folgender Lösung. Ich komme aber nicht drauf, wo der Wurm drin steckt. Könnt ihr mir helfen?(Die Aufgaben stehen in den Kommentaren!).
public class BooleanExpressionTester { public static void main(String... args) { // Drei ganzzahlige Eingabewerte von der Kommandozeile int i = Integer.parseInt(args[0]); int j = Integer.parseInt(args[1]); int k = Integer.parseInt(args[2]); // Drei boolean-Werte von der Kommandozeile boolean b = Boolean.parseBoolean(args[3]); boolean c = Boolean.parseBoolean(args[4]); boolean d = Boolean.parseBoolean(args[5]); // 1.) i und j sind beide gerade oder beide ungerade. System.out.println( i%2==0 && j%2==0 || i%2!=0 && j%2!=0 ); // 2.) i ist dreistellig und durch drei teilbar, aber nicht durch neun. System.out.println( i/100>0 && i/100<10 && i%3==0 && i%9!=0 ); // 3.) Die letzte Ziffer von j ist 1 oder 6. System.out.println( (j-6)%10==0 || (j-1)%10==0 ); // 4.) k ist Vielfaches von 400 oder von 4, in letzten Fall aber nicht durch 100 teilbar. System.out.println( (k%400==0 || k%4==0) && k%100!=0 ); // 5.) i, j und k sind alle drei verschieden. System.out.println( i!=j && i!=k && j!=k ); // 6.) Die Summe von zwei der drei Zahlen i, j und k ist gerade. System.out.println( (i+j)%2==0 || (i+k)%2==0 || (j+k)%2==0 ); // 7.) b, c und d sind alle drei gleich. System.out.println( b==c && b==d && c==d ); // 8.) Genau zwei von b, c und d sind gleich. System.out.println( !(b && c && d || !b && !c && !d) ); } }
-
Fehlermeldung? Oder einfach "falsche" Ausgaben? So w"urd ich einfach mal auf fehlende Klammern tippen.
-
ok, ich hab den Fehler gefunden! Nr. 4 muss die Bedingungen eines Schaltjahres erfüllen!