Tech module проблем с факториел
Здравейте, решавам задачите от домашното, и имам проблем с който се сблъсквам от над 3 часа.
ето условието на задачата:
Write a program to check if a given number is a strong number or not. A number is strong if the sum of the Factorial of each digit is equal to the number. For example 145 is a strong number, because 1! + 4! + 5! = 145. Print "yes" if the number is strong and “no” if the number is not strong.
написал съм 5 for loops който не са вложени така прецених че ако са единични е по-добре. ето кода ми.
https://pastebin.com/HrxPLjJ6 co
проблемът ми е следния написал съм кода за 5 цигрени числа, с 5 цикъла, и съм сложил един Console.WriteLine(numPlus); на последния ред
като напиша 5 цифрено число 40585 ми го смята с събирането на факториела, но не ми изписва "yes"(отговора е 40585) а ми изписва "no" А иначе програмата го смята правилно? това ми е първия проблем. Вторият е че смята горния пример с 147 стойност, явно взима по една едiница от свободните два цикъла и ми я добавя към числото и пак не мога да взема "yes" в момента съм с 80/100 в djudje но ми се иска да видя къде бъркам защото я решавам много дълго време и съм меко казано нервен че не мога да се справя сам. Благодаря предварително!
ето линк за djudje
Благодаря ти за разясненията, учихме го вече while цикъла но честно да си призная не се сетих за това елегантно решение. Явно имам още много часове труд за да достигна по-лесното мислене на код :)