JavaYazılım

Armstrong Sayı – Algoritma Örnekleri Java

Java algoritma örnekleri serimizde bu yazımızda Armstrong sayı örneği ile karşınızdayız.

Armstrong sayı nedir?

Bir sayının her basamağının, sayının basamak sayısı kadar üssünün alınıp toplanması sonucu sayıya eşit olması durumunda bu sayıya armstrong sayı denir.
Örnek vermek gerekir ise 371 sayısı bir armstrong sayıdır.
371 = 3^3 + 7^3 + 1^3
Aynı şekilde 1634 sayısı da bir armstrong sayıdır.
1634 = 1^4 + 6^4 + 3^4 + 4^4
Kod:

import java.util.Scanner;
public class Armstrong{
public static void main(String arg[]) {
Scanner scanner = new Scanner(System.in);
System.out.print("Sayıyı Giriniz: ");
int sayi = scanner.nextInt();
int basamak=0,toplam=0;
/*bir basamak sayısı hesaplama bir de basamakların değerlerini
hesaplayacağımız için 2 adet gecici değer tanımlıyoruz ve sayımıza
eşitliyoruz */
int gecici=sayi;
int gecici_sayi=sayi;
//bu döngümüzde basamak sayımızı hesaplıyoruz
while(gecici>0){
gecici/=10;
basamak++;
}
/*bu döngümüzde basamak değerlerini hesaplayıp basamak
sayımız kadar üssünü alıyrouz*/
while(gecici_sayi>0){
int basamak_degeri = gecici_sayi % 10;
gecici_sayi /= 10;
/*Math.pow methodu ile ilk parametremizin ikinci parametre kadar
üssünü alıyoruz*/
toplam += Math.pow(basamak_degeri,basamak);
}
if (sayi == toplam) {

System.out.println(sayi+" sayısı bir armstrong sayıdır");
}
else {
System.out.println(sayi+" sayısı bir armstrong sayı değildir");
}
}
}

İlgili Makaleler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu
Kapalı