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");
 }
}
}


Tahsin ALTINTAŞ

Computer science 4 life mottosuyla yola çıkmış bir bilgisayar mühendisi.

Bir cevap yazın

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