Софтуерно Инженерство
Loading...
+ Нов въпрос
Shinigami avatar Shinigami 24 Точки

Programming Basics Exam - 12 July 2015 задача едно

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

Може ли някой да ми каже каде ми е грешката

float FG = float.Parse(Console.ReadLine());
        float FGA = float.Parse(Console.ReadLine());
        float ThreeP = float.Parse(Console.ReadLine());
        float Tov = float.Parse(Console.ReadLine());
        float ORB = float.Parse(Console.ReadLine());
        float OppDRB = float.Parse(Console.ReadLine());
        float FT = float.Parse(Console.ReadLine());
        float FTA = float.Parse(Console.ReadLine());
        if (FG <= 0 || FGA <= 0 || ThreeP <= 0 || Tov <= 0 || ORB <= 0 || OppDRB <= 0 || FT <= 0 || FTA <= 0)
        {
            Console.WriteLine("");
        }
        else
        {
            Console.WriteLine("eFG% {0:F3}", ((FG + (0.5 * ThreeP)) / FGA) * 1);
            Console.WriteLine("TOV% {0:F3}", Tov / (FGA + 0.44 * FTA + Tov) * 1);
            Console.WriteLine("ORB% {0:F3}", (ORB / (ORB + OppDRB)) * 1);
            Console.WriteLine("FT% {0:F3}", (FT / FGA) * 1);
        } 

 

Тагове:
penkov avatar penkov 110 Точки

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

грешката е че просто не се вместваш във типа данни. В условието пише че ще ти бъдат подадени числа от 1 до 3,000,000,000, а типа float първо е неточен второ е с по малка вместимост. Ако ползваш decimal всичко ще е ток.

ПП. Кастни към decimal като умножаваш.

1
krisdx avatar krisdx 65 Точки

Здравей,

float обикновенно не се използва. Промени всичко на double и дава 100 точки.

1
17/10/2015 23:58:57