Професионална програма
Loading...
dimitarstoyanov90 avatar dimitarstoyanov90 164 Точки

Примерен тест използване на BigInteger Problem.2.Tribonacci

Въпросът ми е следния:

Когато се опитвам да добавя 

using System.Numerics;

не се получава в смисъл:

The type of namespace name "Numerics" does not exist in the namepace "System" '(Are you missing an assembly refference)

Та защо искам да използвам това, защото в конкретна задача от примерния тест а именно Problem.2. Tribonacci стигнах до заключението, че трябва да  използвам BigInteger тъй като обхвата на другите променливи явно не е достатъчен за коректното изпълнение на програмата. Само, че ето тази подсказка за грешка ми се почвява и ще помоля за някакви насоки защо се получава така и евентуално съвет как да боравя с тези  BigInteger' и :) 

А иначе ето и кодчето, което сътворих , само че с употребата на Decimal:

using System;

class Tribonacci

{

    static void Main()

    {

        decimal t1 = Convert.ToDecimal(Console.ReadLine());

        decimal t2 = Convert.ToDecimal(Console.ReadLine());

        decimal t3 = Convert.ToDecimal(Console.ReadLine());

        int N = Convert.ToInt32(Console.ReadLine());

        decimal[] arrayOfTElements = new decimal[N + 1];

        arrayOfTElements[0] = t1;

        arrayOfTElements[1] = t2;

        arrayOfTElements[2] = t3;

        decimal consecutiveElement = new decimal();

        for (int i = 0; i < N - 3; i++)

        {

            consecutiveElement = arrayOfTElements[i] + arrayOfTElements[i + 1] + arrayOfTElements[i + 2];

            arrayOfTElements[i + 3] = consecutiveElement;

        }

        Console.WriteLine(consecutiveElement);

 

    }

}

 

 

Тагове:
0
Programming Basics
dimitarstoyanov90 avatar dimitarstoyanov90 164 Точки

Открих си проблема, след малко ще си постна готовият код изпуснал съм една проверка:)(малко ми е странно сам се питам сам си отговарям - > раздвоение на личността :Д)

1
Plami avatar Plami 373 Точки

Не е лесно да си програмист - много гласове в главата, а пък на всичкото отгоре всеки един на различно мнение :D

1
dimitarstoyanov90 avatar dimitarstoyanov90 164 Точки
Та извинявам се първо, че си наводних темата с глупости, но ето го и финалния резултат от дадената задача, която изкарва 100/100 точки в системата на bgcoder.com:

using System;
using System.Numerics;

class Tribonacci
{
static void Main()
{

BigInteger t1 = BigInteger.Parse(Console.ReadLine());
BigInteger t2 = BigInteger.Parse(Console.ReadLine());
BigInteger t3 = BigInteger.Parse(Console.ReadLine());
int N = Convert.ToInt32(Console.ReadLine());
BigInteger[] arrayOfTElements = new BigInteger[N + 1];
arrayOfTElements[0] = t1;
arrayOfTElements[1] = t2;
arrayOfTElements[2] = t3;
BigInteger consecutiveElement = new BigInteger();
if (N == 1 || N == 2 || N == 3)
{
if (N == 1)
{
Console.WriteLine(t1);
}
else if (N == 2)
{
Console.WriteLine(t2);
}
else if (N == 3)
{
Console.WriteLine(t3);
}

}
else if (N > 3)
{
for (int i = 0; i < N - 3; i++)
{
consecutiveElement = arrayOfTElements[i] + arrayOfTElements[i + 1] + arrayOfTElements[i + 2];
arrayOfTElements[i + 3] = consecutiveElement;
}
Console.WriteLine(consecutiveElement);
}
}
}

0