Mükemmel Sayı Algoritması

By Burak TUNGUT - 21.11.2012 - 4 Yorum - Kategori Java

Bu yazımda mükemmel sayı tanımını yaparak bir sayının mükemmel sayı olup olmadığını kontrol eden algoritmayı yazacağız.

Vize haftası boyunca ara verdiğim blog yazılarıma artık geri dönme vakti gelmişti :) Neyse lafı uzatmadan hemen başlayalım.

Mükemmel sayı nedir ?

Tüm pozitif tam sayı bölenleri toplamı kendine eşit olan sayıya mükemmel sayı deniyormuş. Bu kavramı ilk defa geçen hafta girdiğimiz Programlama Dilleri dersinin vizesinde gördüm. Hemen bir düşüneyim derken 6 sayısını buldum baktığımızda,
6 = 1 * 2 * 3 olarak ayırabilir ve 1+2+3=6 eşitliğinden de mükemmel sayı olduğunu görüyoruz.
 

Mükemmel sayı algoritması

Bir döngü ile 1 den başlayarak parametre ile gelen sayımıza kadar döndürerek, gelen her sayının parametre ile gelen sayının bölümünden kalanına bakarak tam bölünüyorsa daha önce deklare ettiğimiz bir sayıya bu değeri aktarıyoruz.
Döngü bittiğinde deklare edilmiş olan sayı parametre ile gelen sayıya eşit ise mükemmel sayı bulunmuş demektir :)
Umarım yeterince açık olmuştur.
 

0 dan 100 e kadar olan mükemmel sayılar

Mükemmel sayıyı kontrol eden bir method yazdıktan sonra main methodu altında 0 dan 100 e kadar olan sayıları döndürerek, mükemmel oldukları durumda ekrana basıyoruz.
 

Kodlarımız

public static boolean mukemmelMi(int sayi)
	{
		int toplam=0;
		for(int i = 1 ; i < sayi ; i++)
			if(sayi%i==0)
				toplam+=i;
		if(toplam==sayi)
			return true;
		else
			return false;
	}
public static void main(String[] args) {
		for(int i = 1 ; i <= 100 ; i++)
			if(mukemmelMi(i))
		System.out.println("O bir mukemmel sayi : "+i);
	}
boolean da hata gösteriyor sebebi ne olabilir ?
nereden alıntı yaptığını söylermisin
Yorum Bırak

Facebook
Son Yorumlar