Public paste
Recursion
By: 83nn0 | Date: Feb 4 2010 12:29 | Format: None | Expires: never | Size: 1.36 KB | Hits: 825

  1. import java.util.Scanner;
  2.  
  3. public class Main{
  4.  
  5.         private static int [] priemRij;
  6.        
  7.         /**
  8.          * @param args
  9.          */
  10.         public static void main(String[] args) {
  11.                 // TODO Auto-generated method stub
  12.  
  13.                 Priem priem = new Priem ();
  14.                 Scanner s = new Scanner (System.in);
  15.                 System.out.println("Hoeveel priem getallen wilt u zien?");
  16.                 int keuze = s.nextInt();
  17.                 for (int i=0;i<keuze;i++)
  18.                         System.out.println(priem.volgende());
  19.                 priem.reset();
  20.                 priemRij = new int [keuze];
  21.                 for (int i = keuze-1 ;i>=0; i--)
  22.                         priemRij[i]=priem.volgende();
  23.                 printRij("Priem",priemRij);
  24.                 priem.reset();
  25.                 priem.printRij(keuze);
  26.         }
  27.        
  28.         static void printRij(String naam, int [ ] rij){
  29.                 for (int i=0;i<rij.length;i++){
  30.                         System.out.println(naam+" ["+i+"] "+rij[i]);
  31.                 }
  32.         }
  33. }
  34.  
  35.  
  36. -------------------------------------------------
  37.  
  38.  
  39. public class Priem {
  40.  
  41.         private int nextPriem;
  42.         private boolean priemZoeken;
  43.        
  44.         public Priem() {
  45.        
  46.                 nextPriem = 1;
  47.         }
  48.        
  49.         public void reset (){
  50.                
  51.                 nextPriem = 1;
  52.         }
  53.        
  54.         public int volgende (){
  55.                
  56.                 do{
  57.                         priemZoeken = true;
  58.                         nextPriem++;
  59.                         for (int i=2;i<nextPriem;i++){
  60.                                 if (nextPriem%i == 0)
  61.                                         priemZoeken = false;
  62.                         }      
  63.                 }while (!priemZoeken);
  64.                 return nextPriem;
  65.         }
  66.        
  67.         public void printRij (int getal){
  68.                
  69.                 volgende();
  70.                 if (getal == 1)
  71.                         return;
  72.                 printRij (getal-1);
  73.                 System.out.println(nextPriem);
  74.         }
  75. }