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

Проблем с 4. VACATION - While-Loop-Exercise

Здравейте,

Judge ми дава 90 точки на това решение(не минавам тест 6 без подробности какъв е проблемът). Някой може ли да ми помогне да я доизпипам? Благодаря предварително.

 

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

namespace Vacation
{
    class Program
    {
        static void Main(string[] args)
        {
            double vacationPrice = double.Parse(Console.ReadLine());
            double money = double.Parse(Console.ReadLine());
            int spendsCount = 0;
            int dayCount = 0;
            while (money < vacationPrice)
            {
                string operation = Console.ReadLine();
                double operationAmount = double.Parse(Console.ReadLine());
                if (operation == "spend")
                {
                    money = Math.Max((money - operationAmount),0.00);
                    spendsCount++;
                    dayCount++;
                }
                else
                {
                    money = money + operationAmount;
                    spendsCount = 0;
                    dayCount++;
                }
                if (spendsCount == 5)
                {
                    Console.WriteLine("You can't save the money.");
                    Console.WriteLine(dayCount);
                    return;
                }
            }
            Console.WriteLine($"You saved the money for {dayCount} days.");
        }
    }
}

Тагове:
0
Programming Basics with C# 13/10/2018 17:22:45
NikolayNeykov92 avatar NikolayNeykov92 617 Точки

Направи цикъла да бъде do while и ще ти даде 100/100

 

0
vukata avatar vukata 0 Точки

Благодаря много. Получи се, въпреки че не разбрах напълно защо го искат в този вариант. В моя случай при въвеждане на повече пари от цената изкарва, че ги имаме от ден 0, тоест отначало, а с DO-WHILE, въпреки че имаме сумата иска поне една транзакция, но явно така тълкуват условието.

0
13/10/2018 19:06:23
RelentLessM avatar RelentLessM 0 Точки

Здравей, имам проблем със същата задача, но do-while не го оправя. Кодът ми е подобен на пича по горе. Разлика има в наименованията на променливите и вместо Math.Max използвам втори if с който декларирам, че ако парите, които имам са по малко от тези, които ще изхарча, то просто те ще са равни на 0, но въпреки това ми дава 70/100. Пробвах и с do-while и резултатът е същия. Някаква идея как мога да го поправя ? Благодаря предварително.

Edit: Оправих проблема. Така е като недоглеждам знаците. laugh

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