Loading...
d.stefanov avatar d.stefanov 4 Точки

11. Рожден ден (Programming Basics)

Здравейте, 

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Birthday
{
    class Program
    {
        static void Main(string[] args)
        {
            var l = int.Parse(Console.ReadLine());
            var w = int.Parse(Console.ReadLine());
            var h = int.Parse(Console.ReadLine());
            var percent = double.Parse(Console.ReadLine());

            var TotalVolume = l * w * h;
            var RealLitres = TotalVolume * 0.001;
            var procent = percent * 0.01;
            var FinalVolume = RealLitres * (1 - procent);
            Console.WriteLine(Math.Round(FinalVolume, 3));
        }

    }
}

 

Ако някой има идеи ще бъда много благодарен :)


 

Тагове:
0
Programming Basics
StelaChilikova avatar StelaChilikova 19 Точки

Здравей,

Пробелма е от форматирането  на последния ред 

 Console.WriteLine(Math.Round(FinalVolume, 3));

ето така минава :)

Console.WriteLine($"{FinalVolume:F3}");

 

 

Ето целия код :)

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Birthday
{
    class Program
    {
        static void Main(string[] args)
        {
            var l = int.Parse(Console.ReadLine());
            var w = int.Parse(Console.ReadLine());
            var h = int.Parse(Console.ReadLine());
            var percent = double.Parse(Console.ReadLine());

            var TotalVolume = l * w * h;
            var RealLitres = TotalVolume * 0.001;
            var procent = percent * 0.01;
            var FinalVolume = RealLitres * (1 - procent);
           Console.WriteLine($"{FinalVolume:F3}");
        }

    }
}

0
09/09/2018 19:20:04
Veselin_lk avatar Veselin_lk 0 Точки

Мисля, че проблема идва от закръгляването на последния ред

Опитай с 

Console.WriteLine($"{FinalVolume:F3}");

0
d.stefanov avatar d.stefanov 4 Точки

100/100 Благодаря ви много!! :)

Може ли да ми обясните каква е разликата между Console.WriteLine(Math.Round(FinalVolume, 3)); и  Console.WriteLine($"{FinalVolume:F3}"); 

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

math,round e математическа операция и при число  примерно  1.4325 ще ти върне 1.433 на конзолата

а {x:f3} е графично изписване и ще ти върне  1.432 просто ще отреже символите след 3 тия знак, и затова се получават разликите.

-2
kolioi avatar kolioi 641 Точки

math,round e математическа операция и при число  примерно  1.4325 ще ти върне 1.433 на конзолата

а {x:f3} е графично изписване и ще ти върне  1.432 просто ще отреже символите след 3 тия знак, и затова се получават разликите.

Пълни глупости. Я пусни тоя код да видиш какво излиза на конзолата

double x = 1.4325;
Console.WriteLine(Math.Round(x,3));
Console.WriteLine($"{x:F3}");

 

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

И преди сме се сблъсквали по теми в форума. НО тоя път fuck off. Може да си ок с математиката и с++ но тук .... На работа съм затова ето :  ето ти го и като линк бтв в къщи на компилатора ще е същото в VS

https://imgur.com/a/KfkHLNp eто го и като линк... при 5 винаги ще е различно по различен начин работят {f:x} и math.round(f,x); 

и да объркал съм малко кое накъде тръгва...но тея неща така или иначе не се помнят на изуст.

-3
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.