Loading...
Y.Yordanov21 avatar Y.Yordanov21 51 Точки

Проблем с задача 08. Cookie factory от Nested Loops - Lab

Здравейте,

имам проблем с задача 08. Cookie factory от Nested Loops - Lab.

В judge ми дава 90/100 и не мога да разбера къде съм пропуснал нещо. Гърми първият тест.

Това е моето решение:   https://pastebin.com/vbNZ4ZZE

Благодаря!

Тагове:
0
Programming Basics
Iv_Konov avatar Iv_Konov 383 Точки
Best Answer

Добро утро, 

 

Със съвсем малка корекция минава 100/100:

===

else if (comand == "Bake!")
                    {
                        Console.WriteLine($"Baking batch number {i}...");
                        counter = 0;
                        break;
                    }

===

 

Любопитно, но и Съдията не следи коректно нещата..., т.е. пуска и грешни решения... laugh

Трябва да се следят задължителните съставки отделно... 100/100!

 

Много бърз тест с твоя код - на първи примерен вход подай:

flour
flour
flour

вместо:

flour
eggs
sugar

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

 

============

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

namespace _08.Cookie_factory
{
    class Program
    {
        static void Main(string[] args)
        {
            int batch = int.Parse(Console.ReadLine());
            string comand = string.Empty;
            int counterFlour = 0; // !!
            int counterEggs = 0;
            int counterSugar = 0;

            for (int i = 1; i <= batch; i++)
            {
                while (comand != "Bake!" || i <= batch)
                {
                    comand = Console.ReadLine();


                    //if (comand == "flour" || comand == "eggs" || comand == "sugar")
                    //{
                    //    counter++;
                    //}

                    if (comand == "flour") // задължителните съставки
                    {
                        counterFlour++; 
                    }
                    else if (comand == "eggs")
                    {
                        counterEggs++;
                    }
                    else if (comand == "sugar")
                    {
                        counterSugar++;
                    }

                    if ((counterFlour < 1 || counterEggs < 1 || counterSugar < 1) && comand == "Bake!")  // !!!
                    {
                        Console.WriteLine("The batter should contain flour, eggs and sugar!");
                    }
                    else if (comand == "Bake!")
                    {
                        Console.WriteLine($"Baking batch number {i}...");
                        counterFlour = 0; // нулираме
                        counterEggs = 0;
                        counterSugar = 0;
                        break;
                    }
                }
            }
        }
    }
}

================

 

Поздрави,

Иван

 

 

0
14/04/2019 06:51:15
Y.Yordanov21 avatar Y.Yordanov21 51 Точки

Благодаря!

Не се бях сетил, че трябва да броя  по отделно задължителните съставки.

0
Iv_Konov avatar Iv_Konov 383 Точки

Здравей,

 

По мое мнение условието на задачата е ясно - трите компонента трябва да се следят отделно:

Основните компоненти са брашно, яйца и захар и те винаги трябва да присъстват в сместа.

От друга страна, както писах по-горе, дори Съдията не съблюдава съвсем инструкцията и кодът ти мина проверката 100/100 само като добавих нулирането

 

Поздрави,

Иван :)

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