【解決方法】正しいコードを教えてください


Consider a scenario with 'T' test cases. Hence, for each test case 'ti', let there be any positive number 'n'. Since, factorial of a number 'n' can be computed through the following formula:

n! = n × (n − 1) × ... × 3 × 2 × 1

Find a value, named as 'result', by adding all the digits received through a factorial of a number 'n'.

Input Format

The First line contains T, the number of test cases, followed by integer 'n'.

Constraints

1<=T<=1000

1<=n<=1000000

Output Format

Sum of the digits of a computed factorial value.

私が試したこと:

unsigned int factorial(unsigned int n)
{
    int res = 1, i;
    for (i = 2; i <= n; i++)
        res *= i;
    return res;
}
 
int main()
{
    int num = 5;
    printf(
        "Factorial of %d is %d", num, factorial(num));

解決策 1

引用:

正しいコードを教えてください

私たちは立ち往生している人々を喜んで助けますが、それは私たちがあなたのためにすべてをするためにここにいるという意味ではありません! 私たちがすべての作業を行うことはできません。あなたはこれに対して報酬を受け取っているか、またはそれはあなたの成績の一部であり、私たちがあなたのためにすべてを行うことはまったく公平ではありません.

だから私たちはあなたが仕事をする必要があり、あなたが行き詰まったときにあなたを助けます. それは、あなたが提出できる段階的な解決策を提供するという意味ではありません!
現在の状況と、プロセスの次のステップを説明することから始めます。 次に、その次のステップを機能させるために何を試みたか、またその際に何が起こったかを教えてください。

開始するのに問題がある場合は、これが役立つ場合があります。 問題を解決するためのコードの書き方、初心者向けガイド[^]

解決策 2

引用:

正しいコードを教えてください

いいえ!
この問題は課題サイトの典型であり、問​​題を解決できなかったことを意味します。
この種の問題は複雑で、初心者向けではありません。
ところで、これらの問題では、単純な解決策 (力ずく) は決して解決策にはなりません。 内部の仕組みを完全に理解するまで、問題を研究する必要があります。

ところで、あなたのコードは問題を解決しようとはしていません。 問題をよく読んで、もう一度やり直してください。

コメント

タイトルとURLをコピーしました