Visual Studio C# Dersleri – C# ile Narsistik – Armstrong Sayıları Bulma

Narsistik veya Armstrong sayılarında her basamağın, sayının basamak sayı kadar kuvvetinin alınıp toplanmaları ile elde edilen sonuç, sayının kendisidir. yani

153 = 1^3 + 5^3 + 3^3

370 = 3^3 + 7^3 + 0^3

1634 = 1^4 + 6^4 + 3^4 + 4^4

listede başka hangi sayılar var hangileri Narsistik veya Armstrong sayı diye merak ediyorsanız liste 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407, 1634, 8208, 9474, 54748, 92727, 93084, 548834, 1741725, 4210818, 9800817, 9926315, 24678050, 24678051, 88593477, 146511208, 472335975, 534494836, 912985153, 4679307774, 32164049650, 32164049651 gibi uzuyor 😀

Şimdi bu listede yer alan Narsistik veya Armstrong sayıları C# ile nasıl buluruz ona bakalım ilk olarak sayıyı basamaklarına yarıracağız daha sonra basamak sayısı kadar kuvvetini alıp toplayacağız..

100 ile 1000 arasındaki Narsistik veya Armstrong sayıları bulan C# programı

System.Console.WriteLine("100-1000 arasındaki Narsistik - Armstrong Sayıları");
for (int i = 100; i <= 999; i++)
{
int a = i / 100;
int b = (i - a * 100) / 10;
int c = (i - a * 100 - b * 10);
int d = a * a * a + b * b * b + c * c * c;
if (i == d)
System.Console.WriteLine("{0}", i);
}
Console.ReadKey();

Girilen sayını Armstrong sayısı olup olmadığını kontrol eden program

int no,r,toplam=0,n=0;
Console.WriteLine("Bir Sayı Girinn");
no = Int32.Parse(Console.ReadLine());
n = no;
while (n > 0)
{
r = n % 10;
n = n / 10;
toplam += r*r*r;
}
if (toplam == no)
{
Console.WriteLine("{0}  Armstrong sayısıdır" , no);
}
else
{
Console.WriteLine("{0} Armstrong sayısı değildir", no);
}
Console.ReadLine();
X

Pin It on Pinterest

X