Необходимо внести исправления именно в мой код.
Условие задачи:  Напишите программу, чтобы проверить, является ли заданное число числом Армстронга или нет (натуральным числом, которое в данной системе счисления равно сумме своих цифр, возведённых в степень, равную количеству его цифр, например, 153 – число Армстронга, так как 153 = 13+53+33).
Мой код:
 using System;//дается возможность ссылки на классы, находящиеся в пространстве имен System 
 
namespace z4 { 
 class ApplicationNew { 
 static void Main(string[] args) {//функция, необходимая для начала выполнения программ 
 double val= double.Parse(Console.ReadLine());//ввод числа     
 int k = 0; 
 double r=val; 
 //подсчет количества цифр в числе 
  while (r != 0) { 
   k += 1; 
   r /= 10; 
  } 
 double sum = 0; 
 double rem; 
 // проверка, является ли исходное число числом Армстронга 
 for (double i = val; i > 0; i = i / 10) { 
 rem = i % 10; 
 sum = sum + Math.Pow(rem, k); 
 } 
  
 if (sum == val) { 
 Console.Write("Chislo Armstronga");//вывод результата 
 } else { 
 Console.Write("Ne chislo Armstronga");//вывод результата 
 } 
 Console.ReadLine(); 
 } 
 } 
} 
		
		
								
				 using System; 
 
namespace z4 
{ 
    class Program 
    { 
        static void Main(string[] args) 
        { 
            Console.WriteLine("Enter a number:"); 
            int num = int.Parse(Console.ReadLine()); 
            int digits = GetNumberOfDigits(num); 
            double sum = GetSumOfPowers(num, digits); 
 
            if (sum == num) 
            { 
                Console.WriteLine("The number is an Armstrong number"); 
            } 
            else 
            { 
                Console.WriteLine("The number is not an Armstrong number"); 
            } 
        } 
 
        static int GetNumberOfDigits(int num) 
        { 
            int digits = 0; 
            while (num > 0) 
            { 
                num /= 10; 
                digits++; 
            } 
            return digits; 
        } 
 
        static double GetSumOfPowers(int num, int digits) 
        { 
            double sum = 0; 
            int rem; 
            while (num > 0) 
            { 
                rem = num % 10; 
                sum += Math.Pow(rem, digits); 
                num /= 10; 
            } 
            return sum; 
        } 
    } 
} 
 
 
								
				Любопытно, но 13+53+33=99, а не 153
PS: Может проще сравнивать с таблицей ?
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, 40028394225,  
42678290603 
44708635679 
49388550606 
82693916578 
94204591914 
28116440335967 
4338281769391370 
4338281769391371 
21897142587612075 
35641594208964132 
35875699062250035 
1517841543307505039 
3289582984443187032 
4498128791164624869 
4929273885928088826 
63105425988599693916 
128468643043731391252 
449177399146038697307 
21887696841122916288858 
27879694893054074471405 
27907865009977052567814 
28361281321319229463398 
35452590104031691935943 
174088005938065293023722 
188451485447897896036875 
239313664430041569350093 
1550475334214501539088894 
1553242162893771850669378 
3706907995955475988644380 
3706907995955475988644381 
4422095118095899619457938 
121204998563613372405438066 
121270696006801314328439376 
128851796696487777842012787 
174650464499531377631639254 
177265453171792792366489765 
14607640612971980372614873089 
19008174136254279995012734740 
19008174136254279995012734741 
23866716435523975980390369295 
1145037275765491025924292050346 
1927890457142960697580636236639 
2309092682616190307509695338915 
17333509997782249308725103962772 
186709961001538790100634132976990 
186709961001538790100634132976991 
1122763285329372541592822900204593 
12639369517103790328947807201478392 
12679937780272278566303885594196922 
1219167219625434121569735803609966019 
12815792078366059955099770545296129367 
115132219018763992565095597973971522400 
115132219018763992565095597973971522401
				
							 
								
				//r /= 10; 
r =r%10; 
иначе 0 будет нескоро
				
							 
								
				Console.WriteLine("я хз");