Loading...

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

PikiMarinova avatar PikiMarinova 2 Точки

Suitcases Load Online Exam 28 and 19 March

Здрявейте,

Бихте ли ми помогнали за тази задача?

На втория тест ми дава Runtime error и не мога да си обясня защо.

Ето кода:

using System;
using System.Numerics;

namespace _05SuitcasesLoad
{
    class Program
    {
        static void Main(string[] args)
        {
            double planeCapacity = double.Parse(Console.ReadLine());
            string input = Console.ReadLine();
            int suitcaseCounter = 0;

            while (input != "End")
            {
                double suitcaseVolume = double.Parse(input);
                
                if (suitcaseCounter + 1 % 3 == 0)
                {
                    suitcaseVolume = suitcaseVolume * 1.1;
                }

                if (planeCapacity <= suitcaseVolume)
                {
                    break;
                }

                suitcaseCounter++;
                planeCapacity -= suitcaseVolume;
                input = Console.ReadLine();
                
                
            }

            if (input == "End")
            {
                Console.WriteLine("Congratulations! All suitcases are loaded!");
            }
            else
            {
                Console.WriteLine("No more space!");
            }

            Console.WriteLine($"Statistic: {suitcaseCounter} suitcases loaded.");

        }
    }
}
 

 

 

Благодаря!

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

This is one of those crazy exam-exercises where just the position of your Console.WriteLine can make or brake a test.

The only mistake I could find was that: if (suitcaseCounter + 1 % 3 == 0) needs to be included in additional brackets, like so : if ((suitcaseCounter + 1) % 3 == 0) . However, judge still doesn't give 100%, so I changed the position of the two Console.WriteLine to be positioned inside of the while-loop. CRAZY !!!

New code (100%):

using System;
using System.Numerics;

namespace _05SuitcasesLoad
{
    class Program
    {
        static void Main(string[] args)
        {
            double planeCapacity = double.Parse(Console.ReadLine());
            string input = Console.ReadLine();
            int suitcaseCounter = 0;

            while (planeCapacity >= 0)
            {
                if (input == "End")
                {
                    Console.WriteLine("Congratulations! All suitcases are loaded!");
                    break;
                }
                double suitcaseVolume = double.Parse(input);

                if ((suitcaseCounter + 1) % 3 == 0)
                {
                    suitcaseVolume = suitcaseVolume * 1.1;
                }

                if (planeCapacity <= suitcaseVolume)
                {
                    Console.WriteLine("No more space!");
                    break;
                }

                suitcaseCounter++;
                planeCapacity -= suitcaseVolume;
                input = Console.ReadLine();
            }

            Console.WriteLine($"Statistic: {suitcaseCounter} suitcases loaded.");
        }
    }
}

0
PikiMarinova avatar PikiMarinova 2 Точки

Thank you so much!

I would have never thought about that. 

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