Промети израза за пресмятане на double V = L * W * H * ((1-(P * 0.001))); защото в твоя случай първо изваждаш от 1 даденият процен и получаваш отрицателно число от където програмата ти връща грешен отговор (спрямо условието).
Здравей, щом пращаш код и очакваш помощ е редно да дадеш:
- Линк към задачата в Judge
- Условие на задачата
Прав си. Просто не очаквах, че няма да излезе в приличен вид.
Изпращам връзка към моето решение: https://pastebin.com/hU7PcxTp. Задачата можеш да намериш на https://softuni.bg/trainings/resources/officedocument/34446/lab-problem-descriptions-programming-basics-with-csharp-september-2018/2073.
За мен е притеснително, че задачата е посочена като изпитна задача, а тя е обидно елементарна. Програмата, която съм написал съм я изпълнявал стъпка по стъпка на части и съм извежадал всички междинни операции на екрана. За мен е необяснимо и много обезпокоително, че Visual Studio и компилаторът изпълняват всичко и изкарват верни резултати, а Judge изкарва други резултати в детайлс без да посочва някакви други грешки.
Поздрави
Здравей
така написано не се рабира нищо :)
напиши го в https://pastebin.com
предполагам някъде си пропуснала някой знак в изчисленията, но не мога да разбера така написано
ето моето решение https://pastebin.com/zEM2EGpD
Благодаря.
Погледнах решението ти.
Тук ти изпращам моето: https://pastebin.com/hU7PcxTp. Пусни програмата във Visual Studio и тя щр работи.
Аз съм я изпълнявал и стъпка по стъпка и съм изкарвал всяко междинно решение на екрана и те са верни и затова съм обезпокоен, защото не може всички кодове да са синтактично правилни и компилатораа на Visual Studio да ги възприема и изпълнява, а Judge да дава грешки. При това в детайли посочва само разлика в резултатите, а не някаква друга причина. Не би трябвало такава програма да вади други резултати.
Благодаря за съдействието. Довечера на упражненията ще питам. Трябва да получа отговор.
И те съветвам да даваш по смислени имена на променливи, за да знаеш ти и дриги хора, които ти четат кода кое какво е.
Отвори какъвто и да технически проспект и ще видиш, че височина, дължина и широчина се означават с В х Д х Ш и аъответно с height length width и H x L x W и точно такива "смислени имена" съм задал за моите променливи.Така, че това е ясно. Освен това, откровенно казано, за такава елементарна задача не съм предполагал, че ще се налага да я коментирам, а още по малко съм предполагал, че в една задача със 6 числа за умножаване (в елемантарната математика множител 1 до множител 6) някой ще търси някакъв дълбок смисъл в наименованието на отделните множители. Забележката щеше да има повече смисъл, ако искаше да знаеш за какво е задачата и какъв е кодът. Не знаех, че ще се покаже в такъв вид иначе никога не бих пуснал въпроса така. Във всеки случай в бъдеще ако коментирам нещо тук ще съм по-подготвен
1. Задачата е посочена под номер 11 като изпитна задача на:
2. Кодът можеш да намериш тук: https://pastebin.com/hU7PcxTp
Лично за мен е много обезпокоително, че в една такава елементарна задача, в която няма никакви условия, а извършване на най-обикновени математически действия може да се получи разлика между резултатите от изпълнението на програмата с компилатора на Visual Studio и Judge още повече, че Judge посочва само грешки в резултата, защото във Visual Studio програмата работи идеално. Аз съм я изпълнявал стъпка по стъпка и съм извеждал на екрана резултата. Едва след това съм добавял следващото умножение, за да проверя всичко.
Задачата ти се струва елементарна, защо правиш "тема" за нея. Именага на променливите не се разбира какво е означено с тях, защото са с по една буква. ТОЕСТ НЕ ДОБРЕ НАИМЕНОВАНИ ПРОМЕНЛИВИ. Заглаяието на въпроса ти е по-дълго от кода. Погледни в правила за ползването на форума и как се пише заглавие. Щом е толкова елементарно, защо не си откри сам грешката. И да не е никак ОК да питаш за задача без да даваш условие и линк към judge за да мога аз да тествам твоето решение и да видя грешките. Мисля това за нормално.
Приемам забележките и ще се съобразяавам с тях. А задачата наистина е елементарна и я коментирах, защото не можех да намеря сам причината и при мен даваше винаги верните отговори. Разбира се и грешката се оказа елементарна. В условието е зададена променлива P = 17% и аз в задачата я задавах като 0.17, а Judge я смята като 17.
Пробвай да форматираш така Console.WriteLine($"{water:f3}"); и махни math round, защото то е закръгляне. Така всичко ще е ок.
Благодаря.
По условие беше заложено да се използва Math.Round. Иначе грешката е моя при въвеждането на едната променлива, която е зададена като 17%, а аз я въвеждм като 0.17, докато за Judge тя равна на 17.
Поздрави
:) Прочети пак условието, Никъде не е посочено изискване за закръгляне, а се изисква форматиране до определен знак след десетичната запетая - точно там е грешката. Позволявам си да давам категоричен отговор, понеже аз бях направил същата грешка използвайки Math,Round(volume, 3), след като прочетох заданието внимателно го промених на ({0:f3}, volume) и нещата се оправиха. Та с две думи искам да кажа на всички, че явно трябва да си четем много внимателно условията. :) Поздрави на всички :)
Благодаря.
Аз това го правех предварително и не съм залагал 1 - 17%, а 1 - 0.17, Благодаря, защото аз проверих многократно решението стъпка по стъпка и всичко работи във Visual Studio, a в Judge не щеше и не ми беше ясно как това е възможно при такава елементарна задача компилатора на Visual Studio а този на Judge да дава други резултати. Сега разбрах за мен променливта Р е 0.17 и така я въвеждам, докато за Judge e 17.
Поздрави
Благодаря. Просто при мен бях приел, че Р = 0.17.