Проблем с 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, тоест отначало, а с DO-WHILE, въпреки че имаме сумата иска поне една транзакция, но явно така тълкуват условието.
Здравей, имам проблем със същата задача, но do-while не го оправя. Кодът ми е подобен на пича по горе. Разлика има в наименованията на променливите и вместо Math.Max използвам втори if с който декларирам, че ако парите, които имам са по малко от тези, които ще изхарча, то просто те ще са равни на 0, но въпреки това ми дава 70/100. Пробвах и с do-while и резултатът е същия. Някаква идея как мога да го поправя ? Благодаря предварително.
Edit: Оправих проблема. Така е като недоглеждам знаците.