[C# 1] Loops - 05. Calculate


1

using System;

class Program

{

static void Main()

{

double res = 1;

int n = int.Parse(Console.ReadLine());

double x = double.Parse(Console.ReadLine());

for (int i = 1; i <= n; i++)

{

res += Factorial(i) / Math.Pow(x, i);

}

Console.WriteLine("{0:F5}", res);

}

public static double Factorial(double number)

{

if (number <= 1)

{

return 1;

}

return number * Factorial(number - 1);

}

}

Здравейте колеги,

Ако някой може да ми помогне и да каже защо ми гърми и вади само 60 точки? Който има някаква идея да казва.

Съжалявам, че кода е така, но не успях да го форматирам.




Отговори



10

Тъй като вече са пуснати правилните тестове, поправям си отговора, за да не се заблуди някой, който чете по-късно. Това вече е правилното решение за 100/100:

using System; class Calculate { static void Main() { ulong n = ulong.Parse(Console.ReadLine()); double x = double.Parse(Console.ReadLine()); ulong factorial = 1; double sum = 1 + 1/x; for (ulong counter = 2; counter <= n; counter++) { factorial = factorial * counter; double pow = Math.Pow(x, counter); sum = sum + (factorial / pow ); } Console.WriteLine("{0:F5}", sum); } }

Оставям все пак старото решение, заради коментарите по-долу.

Ето едно решение за 100/100   85/100

using System;

    class Calculate
    {
        static void Main()
        {
            int n = int.Parse(Console.ReadLine());
            double x = double.Parse(Console.ReadLine());
            int factorial = 1;
            double sum = 1 + 1/x;
            for (int counter = 2; counter <= n; counter++)
            {
                factorial = factorial * counter;
                double pow = Math.Pow(x, counter);
                sum = sum + (factorial / pow );
            }
            Console.WriteLine("{0:F5}", sum);
        }
    }


от Pepi.Ka (922 точки)


3

Благодаря .... цялата сага стана ясна ... 

  int factorial = 1; тази простотиика ако се декларира като не INT ( double в моя случай) всичко отива по дяволите. 

хаха да имам  3 страници със събмитнати варианти 100/ 100 в bgcoder-a в момента ( включително най-първият )


от todorovh (2055 точки)

0
Дааа, и на мен този int factorail ми ядеше главата :D

от tabula (2134 точки)



0

Колко време прахосах по тази задача не е истина....:D

Благодарности на тренерите, че я коригираха.


от martinboykov (1112 точки)