1   /**
2    * 183.592 Programmierpraxis TU Wien WS2014/15 H.Moritsch
3    * Ausgabe aller Zahlen zwischen 1 und n, die eine bestimmte
4    * Ziffernsumme z aufweisen
5    * mit for-Schleife
6    * Berechnung der Ziffernsumme in einer Methode
7    */
8   public class ZiffernsummentestMethodeFor {
9       public static void main(String[] args) {
10  
11          int n = 200;
12          int z = 13;
13  
14          int anzahl = 0;         // zählt die gefundenen Zahlen
15  
16          // für alle Zahlen von 1 bis n:
17          for ( int i = 1; i <= n; i++ ) {
18  
19              if ( ziffernsumme(i) == z ) {
20                  System.out.println(i);                  
21                  anzahl++;
22                  }
23              
24          } 
25  
26      System.out.println("es gibt " + anzahl+" Zahlen zwischen 1 und " + n + " mit Ziffernsumme " + z);
27   
28      }
29  
30      /**
31      * Berechnung der Ziffernsumme einer Zahl
32      */ 
33      private static int ziffernsumme(int zahl) {
34  
35          int summe;
36          int ziffer;
37          
38          summe = 0;
39  
40          while ( zahl > 0 ) {
41  
42              ziffer = zahl % 10;
43              summe  = summe + ziffer;
44              zahl   = zahl / 10;         // Änderung des (formalen) Parameters
45                                          // wirkt sich in main nicht aus!            
46          }
47      
48      return summe;
49      }
50  
51  }
52