Schoarsch Geschrieben 19. November 2009 Geschrieben 19. November 2009 Schreiben Sie ein Programm, das alle Zahlen eines gegebenen Intervalls ausgibt, welche eine gewünschte Quersumme aufweisen. Die Anzahl dieser Zahlen soll ebenfalls ausgegeben werden. Für das Intervall [1000, 2000] sollte bei gewünschter Quersumme = 25 die Ausgabe so aussehen: 1699 1789 1798 1879 1888 1897 1969 1978 1987 1996 Anzahl: 10 Hier meine Lösung die aber leider noch nicht ganz funktioniert und ich den Fehler einfach nicht finden kann: n = Obergrenze m= Untergrenze y = gewünschte Quersumme class Quersumme { public static void main(String... args) { int n = Integer.parseInt (args[0]); int m = Integer.parseInt (args[1]); int y = Integer.parseInt (args[2]); int sum = 0; int anz = 0; while (n <= m) { sum = 0; int x = n; while ((x/10) != 0) { sum = sum+(x%10); x = x/10; } sum = sum + (x%10); if (sum == y) { System.out.println (n); anz += 1; } n = n+1; } System.out.println ("Anzahl: "+anz); } Brauche Hilfe Zitieren
T3D Geschrieben 19. November 2009 Geschrieben 19. November 2009 ...leider noch nicht ganz funktioniert... was funktioniert denn nicht? Zitieren
Haschman Geschrieben 19. November 2009 Geschrieben 19. November 2009 Ich weiß jetzt nicht, was dein Problem ist. Wenn ich mir deinen Quelltext kopiere klappt es ohne Probleme: class Quersumme { public static void main( String[] args ) { int n = 1000; int m = 2000; int y = 25; int sum = 0; int anz = 0; while ( n <= m ) { sum = 0; int x = n; while ( ( x / 10 ) != 0 ) { sum = sum + ( x % 10 ); x = x / 10; } sum = sum + ( x % 10 ); if ( sum == y ) { System.out.println( n ); anz += 1; } n = n + 1; } System.out.println( "Anzahl: " + anz ); } } Was ich geänder habe ist die zeile: public static void main( String[] args ) { Bei dir stand da public static void main( String... args ) { Dann gehts ohne Probleme. Also wo genau ist dein Problem? Zitieren
T3D Geschrieben 19. November 2009 Geschrieben 19. November 2009 naja es fehlt auch ne klammer... aber dachte das ganze is irgendwie beim rueberkopieren passiert deswegen fragte ich halt erst ma wo das problem is Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.