import Prog1Tools.IOTools;
public class PRIM  //Name muss gleich Dateinamen sein!!
                    // Hier einmal ein Primzahltest. 
                     // Durch "return" wird das Program beendet -
                      // "Sprung ans Ende". 
{
  public static void main(String[] args)
  {
   long c ,d; 
   c =  IOTools.readLong("Einlesen eines langen c >= 2 zum Test:" );
   if (c == 2) 
   {
   System.out.print(c + " ist PRIM");
   return;
   } 
   d = 2; 
   while (d * d <= c)  // Warum reicht es, bei d*d > c aufzuhoeren??
   {if (c% d == 0)
       { System.out.println( c +  "ist nicht PRIM, denn " + d + " teilt " + c);
         return;  // Hier ist das Programm zu Ende, Erlaeuterung siehe oben. 
	}
   d++;  //Die Schleife hoert auf, nach dem Lauf wo hier d so gesetzt
          // wird, dass dann d * d > c ist!! Das ist ein Punkt, wo man immer
	  // aufpassen muss. 
   }
   System.out.println("Die Schleife ist fertig ohne ordentlichen"+ 
                  " Teiler, also ist "+ c + " PRIM");
   
  }
 }  
   
  
