Ylös Edellinen Seuraava Otsikkosivu Hakemisto Sisällys

10.7 while - silmukka

do- while - silmukka suoritetaan aina vähintään 1. kerran. Joskus on tarpeen silmukka, jonka runkoa ei suoriteta yhtään kertaa. Muutamme edellisen esimerkkimme käyttämään while - silmukkaa:

	while ( ehto ) lause 

Muutamme samalla algoritmia siten, että 2:lla jaolliset käsitellään erikoistapauksena. Näin pääsemme eroon "inhottavasta" kasvatus- muuttujasta.

java-silm\Alkuluku2.java - alkulukutesti while-silmukalla

	  public static int pienin_jakaja(int luku)
	  {
	    int jakaja=3;
	    if ( luku == 2 ) return 1;
	    if ( luku % 2 == 0 ) return 2;
	
	    while ( jakaja < luku/2 ) {
	      if ( luku % jakaja == 0 ) return jakaja;
	      jakaja += 2;
	    }
	
	    return 1;
	  }


Ylös Edellinen Seuraava Otsikkosivu Hakemisto Sisällys