ilkerxx adlı üyeden alıntı: mesajı görüntüle
ufak kod bloğu hazırladım c# için çıktısı;
Tamsayıyı Girin
728
2 sayisi 3 kere çarpanıdır!
7 sayisi 1 kere çarpanıdır!
13 sayisi 1 kere çarpanıdır!
toplam : 26

int a, b;
            Console.WriteLine("Tamsayıyı Girin ");
            a = int.Parse(Console.ReadLine());
            int total = 0;
            for (b = 2; a > 1; b++)
                if (a % b == 0)
                {
                    int x = 0;
                    while (a % b == 0)
                    {
                        a /= b;
                        total += b;
                        x++;
                    }
                    Console.WriteLine("{0} sayisi {1} kere çarpanıdır!", b, x);
                }
            Console.WriteLine("toplam : {0}",total);
            Console.ReadLine();
iyi çalışmalar

edit : asal sayılarla ilgili uğraşıyorsan prime factorization sorunu konusuyla ilgileniyorsan,euclidean algorithm, fermat's little theorem ve chinese remainder theoremlerine göz atmanı tavsiye ederim.
Peki şuanda örneğin 2 7 13 olarak alıyor asal sayıları ve topladığımızda 26 buluyor ancak bizim 26 değil sonuç olarak 17 bulmamız gerekiyor yani 2+2+2+7+1+3 yapması gerekiyor 13 üde basamaklarına ayırmamız gerekiyor bunu nasıl yapabilirim bir fikriniz varmı acaba