Професионална програма
Loading...
+ Нов въпрос
georgi.ivanov95 avatar georgi.ivanov95 0 Точки

Conditional Statements Advanced - Exercise: Hotel Room 90/100

  string month = Console.ReadLine();
            int numberOfNights = int.Parse(Console.ReadLine());
            double studio = 0;
            double apartment = 0;


            if (month == "May" || month == "October")
            {
                studio = 50;
                apartment = 65;
            }
            else if (month == "June" || month == "September")
            {
                studio = 75.20;
                apartment = 68.70;
            }
            else if (month == "July" || month == "August")
            {
                studio = 76;
                apartment = 77;
            }

            double totalPriceForStudio = studio * numberOfNights;
            double totalPriceForApartment = apartment * numberOfNights;

            if (numberOfNights > 7 && numberOfNights < 14 && month == "May" || month == "October")
            {
                totalPriceForStudio *= 0.95;
            }
            else if (numberOfNights > 14 && month == "May" || month == "October")
            {
                totalPriceForStudio *= 0.70;
            }
            else if (numberOfNights > 14 && month == "June" || month == "September")
            {
                totalPriceForStudio *= 0.80;
            }
            if (numberOfNights > 14)
            {
                totalPriceForApartment *= 0.90;
            }

            Console.WriteLine($"Apartment: {totalPriceForApartment:f2} lv.");
            Console.WriteLine($"Studio: {totalPriceForStudio:f2} lv.");

 

----

⦁    Хотелска стая
Хотел предлага 2 вида стаи: студио и апартамент. Напишете програма, която изчислява цената за целия престой за студио и апартамент. Цените зависят от месеца на престоя:
Май и октомври    Юни и септември    Юли и август
Студио – 50 лв./нощувка    Студио – 75.20 лв./нощувка    Студио – 76 лв./нощувка
Апартамент – 65 лв./нощувка    Апартамент – 68.70 лв./нощувка    Апартамент – 77 лв./нощувка
Предлагат се и следните отстъпки:
⦁    За студио, при повече от 7 нощувки през май и октомври : 5% намаление.
⦁    За студио, при повече от 14 нощувки през май и октомври : 30% намаление.
⦁    За студио, при повече от 14 нощувки през юни и септември: 20% намаление.
⦁    За апартамент, при повече от 14 нощувки, без значение от месеца : 10% намаление.
Вход
Входът се чете от конзолата и съдържа точно 2 реда, въведени от потребителя:
⦁    На първия ред е месецът – May, June, July, August, September или October
⦁    На втория ред е броят на нощувките – цяло число в интервала [0 ... 200]
Изход
Да се отпечатат на конзолата 2 реда:
⦁    На първия ред: “Apartment: {цена за целият престой} lv.”
⦁    На втория ред: “Studio: {цена за целият престой} lv.“
Цената за целия престой форматирана с точност до два знака след десетичната запетая.

 

---

Получавам грешка на Test #3. Не покава input-а който я дава. Моля за помощ.

 

 

 

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

Определяй приоритет на операциите със скоби. Добавил съм коментари.

Коригиран кода:

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string month = Console.ReadLine();
            int numberOfNights = int.Parse(Console.ReadLine());

            double studio = 0;
            double apartment = 0;
            if (month == "May" || month == "October")
            {
                studio = 50;
                apartment = 65;
            }
            else if (month == "June" || month == "September")
            {
                studio = 75.20;
                apartment = 68.70;
            }
            else if (month == "July" || month == "August")
            {
                studio = 76;
                apartment = 77;
            }

            double totalPriceForStudio = studio * numberOfNights;
            double totalPriceForApartment = apartment * numberOfNights;
            if ((numberOfNights > 7 && numberOfNights <= 14) && (month == "May" || month == "October")) // (numberOfNights > 7 && numberOfNights <= 14) instead (numberOfNights > 7 && numberOfNights < 14) & Order of operations - undefined priority of  parentheses
            {
                totalPriceForStudio *= 0.95;
            }
            else if (numberOfNights > 14 && (month == "May" || month == "October")) // Order of operations - undefined priority of parentheses
            {
                totalPriceForStudio *= 0.70;
            }

            if (numberOfNights > 14 && (month == "June" || month == "September"))// Order of operations - undefined priority of  parentheses
            {
                totalPriceForStudio *= 0.80;
            }

            if (numberOfNights > 14)
            {
                totalPriceForApartment *= 0.90;
            }

            Console.WriteLine($"Apartment: {totalPriceForApartment:f2} lv.");
            Console.WriteLine($"Studio: {totalPriceForStudio:f2} lv.");
        }
    }
}
 

0
29/07/2020 15:11:17
georgi.ivanov95 avatar georgi.ivanov95 0 Точки

Мого благодаря за помоща.

0