Loops: Problem5 - Calculate
-
Всичко работи добре на пръв поглед, но ми дава грешни резултати...
-
-
static void Main(string[] args)
-
{
-
int x, n;
-
int result = 1;
-
n = int.Parse(Console.ReadLine());
-
x = int.Parse(Console.ReadLine());
-
double s=1;
-
int[] factorials = new int[15]; // съхранявам факториелите на числата от 1 до 16
-
for (int i = 0; i < n; i++)
-
{
-
for (int j = 1; j < i; j++) // с върешния цикъл откривам факториелите
-
{
-
result = result * j;
-
}
-
factorials[i] = result; // с външния ги запазвам в масива
-
}
-
for (int m = 0; m <= n; m++) // в този цикъл извършвам изчисленията
-
{
-
s = s + (factorials[m] / Math.Pow(x, m));
-
}
-
string sum = s.ToString();
-
String.Format("{0:0.00000}", sum); //форматирам сумата да се извежда до 5 знака след запетаята
-
Console.WriteLine(sum);
-
}
Благодаря!
P.S.: Коментарите ги добавях при качването тук, във форума.
Пробвай да пазиш факториелите в масив от decimal и направи принтирането направо в Console.WriteLine(). Ако сметките са верни би трябвало да изкара резултатите, които се очакват.
Добре, обаче ми даде гршка с кастването при Math.Pow(x,m);