Loading...
sto_dimitrov avatar sto_dimitrov 0 Точки

New House - задача 5 от домашн към лекция Вложени условни конструкции

Здравейте, 

Моля за вашето съдействие. 

При следнот условие на задача №5 : https://softuni.bg/trainings/resources/officedocument/34829/exercise-problem-descriptions-programming-basics-with-csharp-september-2018/2073 ,

И следното решение : https://pastebin.com/DsRNdQkY ,

Judge ми дава 40/100, като не желае да ми посочи грешките : " Тhe process executing your submission for this test may not have received the output successfully. Please try to submit again the same solution. If the result does not change, then search the error in the submission itself." 

Качих 3 пъти решението със същият резултат. 

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

Благодаря предварително, 

 

Тагове:
0
Programming Basics with C#
Jordan_Dobrev12 avatar Jordan_Dobrev12 336 Точки
Best Answer

Ако желаеш можеш да погледнеш моето решение за референция - https://pastebin.com/24vLhWHy

Постарах се да бъде четимо и добре написано всичко, в judge работи 100/100.

0
Soulfood avatar Soulfood 1 Точки

Привет,

 

след като отделих 1+ часа за търсенето на отговор - защо получавам 50/100 попаднах на тази тема и се оаказа, че решението ни е 1 == 1 .... нооооо в твоя случай judge дава 100/100, а при мен 50/100 ...

https://pastebin.com/rY6F8F6K

 

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

0
Ljubo6 avatar Ljubo6 21 Точки

Ето и едно по кратко решение 

https://pastebin.com/sZYzCgns

0
I.P.Ivanov avatar I.P.Ivanov 7 Точки

Поздравления на Jordan и Liubo за елегантните решения.

В дълго решение трудно се откриват грешките.

Според мен, пиши програмата отново. По техниа пример. Убеден съм,че е добре, човек да се научи да мисли по този начин.

0
04/10/2018 06:04:26
sto_dimitrov avatar sto_dimitrov 0 Точки

Благодаря на всички,

Задачата е решена вече. 

Съгласен съм, че цялостният подход към решението не бе най-правилния. 

0
clipro avatar clipro 73 Точки

С моето решение имам 50/100. В judge няма пояснения към тестовете и не мога да разбера защо. 

Някой може ли да ми даде насоки къде вероятно бъркам?

https://pastebin.com/xuLzACMg

0
rgama avatar rgama 2 Точки

Това е моето решение с "If - else" конструкция . Judge дава 100 /100 . Може да сравниш проверките .

https://pastebin.com/nGZpqnMq

0
valio90 avatar valio90 6 Точки

using System;

namespace _4._4New_House
{
    class Program
    {
        static void Main(string[] args)
        {
            string cvetya = Console.ReadLine();
            int broika = int.Parse(Console.ReadLine());
            int biudjet = int.Parse(Console.ReadLine());
            double obshto = 0.0;
            double dyljimo = 0.0;
            if (cvetya == "Roses")
            {
                obshto = broika * 5;
                if (broika > 80)
                {
                    obshto -= (obshto * 0.10);
                    dyljimo = biudjet - obshto;
                }
                else
                {
                    dyljimo = biudjet - obshto;
                }
            }
            else if (cvetya == "Dahlias")
            {
                obshto = broika * 3.80;
                if (broika > 90)
                {
                    obshto -= (obshto * 0.15);
                    dyljimo = biudjet - obshto;
                }
                else
                {
                    dyljimo = biudjet - obshto;
                }
            }
            else if (cvetya == "Tulips")
            {
                obshto = broika * 2.80;
                if (broika > 80)
                {
                    obshto -= (obshto * 0.15);
                    dyljimo = biudjet - obshto;
                }
                else
                {
                    dyljimo = biudjet - obshto;
                }
            }
            else if (cvetya == "Narcissus")
            {
                obshto = broika * 3;
                if (broika < 120)
                {
                    obshto =obshto + (obshto * 0.15);
                    dyljimo = biudjet - obshto;
                }
                else
                {
                    dyljimo = biudjet - obshto;
                }
            }
            else if (cvetya == "Gladiolus")
            {
                obshto = broika * 2.50;
                if (broika < 80)
                {
                    
                    obshto =obshto+ (obshto * 0.20);
                    dyljimo = biudjet - obshto;
                }
                else
                {
                    dyljimo = biudjet - obshto;
                }
            }
            if (dyljimo >= 0)
            {
                obshto = biudjet - obshto;
                Console.WriteLine($"Hey, you have a great garden with {broika} {cvetya} and {obshto:F2} leva left.");
            }
            else if (dyljimo < 0)
            {
                obshto = obshto - biudjet;
                Console.WriteLine($"Not enough money, you need {obshto:F2} leva more.");
            }
        }
    }
}

0
diana_mv avatar diana_mv 1 Точки

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

https://pastebin.com/sqYQGVt7

 

0
31/10/2018 14:15:05
Buhlio avatar Buhlio 0 Точки

За Нарциса и Гладиолите няма отстъпка, а всъщност има повишаване в цената, ако се поръчат под определената бройка в условието. От там идва и грешката в изчисленията.

При така написана програмата Цената за Нарциса трябва да е 3.45 ако бройките са под 120 а цената на Гладиолите трябва да е 3. С промяната по-долу би трябвало да сработи както трябва.

            else if (typeFlower == "Narcissus") price = 3.45;
            
                if (countFlower > 120) discount = 0.15;
            
            else if (typeFlower == "Gladiolus") price = 3;
            
                if (countFlower > 90) discount = 0.20;

 

Ето и моето решение за сравнение 100/100 при Judge-a: https://pastebin.com/A415NhW4

0
31/10/2018 18:52:37
koknq avatar koknq 24 Точки

using System;

namespace New_House
{
    class Program
    {
        static void Main(string[] args)
        {
            string flowers = Console.ReadLine();
            int count = int.Parse(Console.ReadLine());
            int budget = int.Parse(Console.ReadLine());
            double discount = 0.0;
            double price = 0.0;
            double pf = 0.0;
            double sum = 0.0;
            switch (flowers)
            {
                case "Roses": pf = 5;
                    
                        if (count > 80) { discount = 0.10; price = count * pf - (count * pf * 0.10); }
                        else { price = count * pf; }; break;
                case "Dahlias": pf = 3.80;
                    if (count > 90) { discount = 0.15; price = count * pf - (count * pf * 0.15); }
                    else { price = count * pf; }; break;
                case "Tulips": pf = 2.80;
                    if (count > 80) { discount = 0.15; price = count * pf - (count * pf * 0.15); }
                    else { price = count * pf; }; break;
                case "Narcissus": pf = 3;
                    if (count < 120) { discount = 0.15; price = count * pf + (count * pf * 0.15); }
                    else { price = count * pf; }; break;
                case "Gladiolus": pf = 2.50;
                    if (count < 80) { discount = 0.20; price = count * pf + (count * pf * 0.20); }
                    else { price = count * pf; }; break;

 

            }
            if(budget >= price)
            { sum = budget - price; Console.WriteLine($"Hey, you have a great garden with {count} {flowers} and {sum:F2} leva left."); }
            
            else
            { sum = price - budget; Console.WriteLine($"Not enough money, you need {sum:F2} leva more."); }
        }

    }
}

100/100 Judge.

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