Bir sayının basamak değerleri toplamını hesaplama

341 sayısından 3+4+1 nasıl hesaplanır?

Diyelim ki klavyeden bir sayı giriliyor:

85349

Bu sayının basamak değerleri toplamı:

8 + 5 + 3 + 4 + 9 = 29 değerini elde ederiz.

Peki bu işlemi C# ta nasıl gerçekleştireceğiz?

İşte size 2 yöntem:

1. Yöntem

Console.Write("Sayı: ");
string sayi = Console.ReadLine();
int toplam = 0;
for (int i = 0; i < sayi.Length; i++)  
    toplam += Convert.ToInt32(sayi[i].ToString());
Console.WriteLine("Toplam:" + toplam);

 

2. Yöntem

Console.Write("Sayı: ");
int sayi = Convert.ToInt32(Console.ReadLine());
int toplam = 0;
int carpan = 1;
bool cikis = false;
while (!cikis)
{
    int mod = sayi % (carpan * 10);
    int kalan = mod / carpan;
    toplam += kalan;
    carpan *= 10;
    cikis = (mod == sayi);
}
Console.WriteLine(toplam);

Seviyorum lan bu algoritmaları :)

www.algoritmalar.com