Conditional Statements Advanced Lab - Ski trip - PB C#
using System;
namespace Ski_trip
{
    class Program
    {
        static void Main(string[] args)
        {
            int day_stay = int.Parse(Console.ReadLine());
            string type_room = Console.ReadLine();
            string assessment = Console.ReadLine();
            day_stay = day_stay - 1;
            switch (type_room)
            {
                case "room for one person":
                    {
                        if (day_stay < 0 || day_stay > 365) Console.WriteLine($"{0:F2}");
                        if (day_stay >= 1 && day_stay <= 365)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 18 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 18 * .9:F2}");
                        }
                    }
                    break;
                case "apartment":
                    {
                        if (day_stay < 0 || day_stay > 365) Console.WriteLine($"{0:F2}");
                        if (day_stay >= 1 && day_stay < 10)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 25 * .7 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 25 * .7 * .9:F2}");
                        }
                        if (day_stay >= 10 && day_stay <= 15)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 25 * .65 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 25 * .65 * .9:F2}");
                        }
                        if (day_stay > 15 && day_stay <= 365)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 25 * .5 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 25 * .5 * .9:F2}");
                        }
                    }
                    break;
                case "president apartment":
                    {
                        if (day_stay < 0 || day_stay > 365) Console.WriteLine($"{0:F2}");
                        if (day_stay >= 1 && day_stay < 10)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 35 * .9 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 35 * .9 * .9:F2}");
                        }
                        if (day_stay >= 10 && day_stay <= 15)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 35 * .85 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 35 * .85 * .9:F2}");
                        }
                        if (day_stay > 15 && day_stay <= 365)
                        {
                            if (assessment == "positive") Console.WriteLine($"{day_stay * 35 * .8 * 1.25:F2}");
                            if (assessment == "negative") Console.WriteLine($"{day_stay * 35 * .8 * .9:F2}");
                        }
                    }
                    break;
            }
        }
    }
}
Моля, за помощ 90/100 в judge.
 
13. Ски почивка
Атанас решава да прекара отпуската си в Банско и да кара ски. Преди да отиде обаче, трябва да резервира хотел и да изчисли колко ще му струва престоя. Съществуват следните видове помещения, със следните цени за престой:
- "room for one person" – 18.00 лв за нощувка
- "apartment" – 25.00 лв за нощувка
- "president apartment" – 35.00 лв за нощувка
Според броят на дните, в които ще остане в хотела (пример: 11 дни = 10 нощувки) и видът на помещението, което ще избере, той може да ползва различно намаление. Намаленията са както следва:
| вид помещение | по-малко от 10 дни | между 10 и 15 дни | повече от 15 дни | 
| room for one person | не ползва намаление | не ползва намаление | не ползва намаление | 
| apartment | 30% от крайната цена | 35% от крайната цена | 50% от крайната цена | 
| president apartment | 10% от крайната цена | 15% от крайната цена | 20% от крайната цена | 
След престоя, оценката на Атанас за услугите на хотела може да е позитивна (positive) или негативна (negative) . Ако оценката му е позитивна, към цената с вече приспаднатото намаление Атанас добавя 25% от нея. Ако оценката му е негативна приспада от цената 10%.
Вход
Входът се чете от конзолата и се състои от три реда:
- Първи ред - дни за престой - цяло число в интервала [0...365]
- Втори ред - вид помещение - "room for one person", "apartment" или "president apartment"
- Трети ред - оценка - "positive" или "negative"
Изход
На конзолата трябва да се отпечата един ред:
- Цената за престоят му в хотела, форматирана до втория знак след десетичната запетая.
Примерен вход и изход
| Вход | Изход | Обяснения | |||
| 14 apartment positive | 264.06 | 14 дни => 13 нощувки => 13 * 25.00 = 325 лв. 10 < 13 дни < 15 => 325 – 35%= 211.25 лв. Оценката е positive => 211.25 + 25% = 264.0625 -> 264.06 лв. | |||
| Вход | Изход | Вход | Изход | Вход | Изход | 
| 30 president apartment negative | 730.80 | 12 room for one person positive | 247.50 | 2 apartment positive | 21.88 |