Programing basics Нов дом
using System;
namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
string plantType = Console.ReadLine();
int plantsNum = int.Parse(Console.ReadLine());
double budget = double.Parse(Console.ReadLine());
double endSum = 0;
if (plantType == "Roses")
{
endSum = plantsNum * 5;
if (plantsNum >= 80)
{
endSum -= endSum * 0.1;
}
}
else if (plantType == "Dahlias")
{
endSum = plantsNum * 3.80;
if (plantsNum >= 90)
{
endSum -= endSum * 0.15;
}
}
else if (plantType == "Tulips")
{
endSum = plantsNum * 2.80;
if (plantsNum>=80)
{
endSum -= endSum * 0.15;
}
}
else if (plantType=="Narcissus")
{
endSum = plantsNum * 3;
if (plantsNum<=120)
{
endSum += endSum * 0.15;
}
}
else if (plantType=="Gladiolus")
{
endSum = plantsNum * 2.50;
if (plantsNum<=80)
{
endSum += endSum * 0.20;
}
}
if (budget >= endSum)
{
Console.WriteLine($"Hey, you have a great garden with {plantsNum} {plantType} and {budget-endSum:f2} leva left.");
}
else
{
Console.WriteLine($"Not enough money, you need {endSum-budget:f2} leva more.");
}
}
}
}
Получавам 40/100 в judge и не мога да разбера къде бъркам.
Марин и Нели си купуват къща не далеч от София. Нели толкова много обича цветята, че Ви убеждава да
напишете програма която да изчисли колко ще им струва, да си засадят определен брой цветя и дали
наличния бюджет ще им е достатъчен. Различните цветя са с различни цени.
цвете Роза Далия Лале Нарцис Гладиола
Цена на брой в лева 5 3.80 2.80 3 2.50
Съществуват следните отстъпки:
Ако Нели купи повече от 80 Рози - 10% отстъпка от крайната цена
Ако Нели купи повече от 90 Далии - 15% отстъпка от крайната цена
Ако Нели купи повече от 80 Лалета - 15% отстъпка от крайната цена
Ако Нели купи по-малко от 120 Нарциса - цената се оскъпява с 15%
Ако Нели Купи по-малко от 80 Гладиоли - цената се оскъпява с 20%
От конзолата се четат 3 реда:
Вид цветя - текст с възможности - "Roses", "Dahlias", "Tulips", "Narcissus", "Gladiolus"
Брой цветя - цяло число в интервала [10…1000]
Бюджет - цяло число в интервала [50…2500]
Да се отпечата на конзолата на един ред:
Ако бюджета им е достатъчен -"Hey, you have a great garden with {броя цвета} {вид
цветя} and {останалата сума} leva left.
Ами направих така както каза но сега пък дори, никакви точки не ми дава а направо ми изписва Compile Time Error, явно някъде тотално съм се омотал..
using System;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
string plantType = Console.ReadLine();
int plantsNum = int.Parse(Console.ReadLine());
double budget = double.Parse(Console.ReadLine());
double endSum = 0;
if (plantType == "Roses")
{
endSum = plantsNum * 5;
if (plantsNum > 80)
{
endSum -= endSum * 0.1;
}
}
else if (plantType == "Dahlias")
{
endSum = plantsNum * 3.80;
if (plantsNum > 90)
{
endSum -= endSum * 0.15;
}
}
else if (plantType == "Tulips")
{
endSum = plantsNum * 2.80;
if (plantsNum > 80)
{
endSum -= endSum * 0.15;
}
}
else if (plantType == "Narcissus")
{
endSum = plantsNum * 3;
if (plantsNum < 120)
{
endSum += endSum * 0.15;
}
}
else if (plantType == "Gladiolus")
{
endSum = plantsNum * 2.50;
if (plantsNum < 80)
{
endSum += endSum * 0.20;
}
}
if (budget > endSum)
{
Console.WriteLine($"Hey, you have a great garden with {plantsNum} {plantType} and {budget - endSum:f2} leva left.");
}
else
{
Console.WriteLine($"Not enough money, you need {endSum - budget:f2} leva more.");
}
}
}
А видя ли съобщението, което изписва за грешката:
Compilation result:
Липсва ти една затваряща къдрава скоба в края на кода -> }. Освен това защо си махнал знака за = в крайната проверка за това дали бюджетът е по-голям или равен на крайната сума? Така пак получаваш грешни разултати. Добави къдравата скоба, върни това равно обратно и си готов.