Подготовка за изпит: зад. 2 "Коледен базар" - помощ
Здравейте, не мога да открия откъде идват 2-та грешни отговора при тестовете в Judge-системата при проверката на следния код:
using System;
namespace Christmas_Market
{
class Program
{
static void Main(string[] args)
{
double goal = double.Parse(Console.ReadLine());
int fantasyNum = int.Parse(Console.ReadLine());
int horrorNum = int.Parse(Console.ReadLine());
int romanceNum = int.Parse(Console.ReadLine());
double grossSum = fantasyNum * 14.90 + horrorNum * 9.80 + romanceNum * 4.30;
double netSum = 0.80 * grossSum;
double difference = netSum - goal;
if (difference >= 0)
{
double toSellers = Math.Round(0.10 * difference);
double donated = netSum - toSellers;
Console.WriteLine($"{donated:F2} leva donated.");
Console.WriteLine($"Sellers will receive {toSellers} leva.");
}
else
{
difference = Math.Abs(difference);
Console.WriteLine($"{difference:F2} money needed.");
}
}
}
}
Може ли някой да ми помогне? Благодаря предварително.
Благодаря, с тази корекция Judge го хареса на 100%, но не мога да си обясня защо с Math.Round() не стана...
В случая Math.Round връща грешен резултат защото не ни е необходимо закръгляне. В този случай правилно би било да ползваш Math.Floor и нямаше да ти върне грешен отговор.
Вярно, в условието бе казано, че сумата трябва да е закръглена към най-близкото цяло число надолу. Как не обърнах внимание! Благодаря отново.