Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

peter1998 avatar peter1998 5 Точки

Изпитни задачи от минали издания на курса Transport Price

*Цена за транспорт

Втора задача от междинния изпит на 6 март 2016. Тествайте решението си тук.

Студент трябва да пропътува n километра. Той има избор измежду три вида транспорт:

 Такси. Начална такса: 0.70 лв. Дневна тарифа: 0.79 лв. / км. Нощна тарифа: 0.90 лв. / км.

 Автобус. Дневна / нощна тарифа: 0.09 лв. / км. Може да се използва за разстояния минимум 20 км.

 Влак. Дневна / нощна тарифа: 0.06 лв. / км. Може да се използва за разстояния минимум 100 км.

Напишете програма, която въвежда броя километри n и период от деня (ден или нощ) и изчислява цената на

най-евтиния транспорт.

Вход

От конзолата се четат два реда:

 Първият ред съдържа числото n – брой километри – цяло число в интервала [1…5000].

 Вторият ред съдържа дума “day” или “night” – пътуване през деня или през нощта.

 

 

 

Почва решението ми

 

 

using System;


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

namespace _17.Number_0to100_to_Text
{
    class Program
    {
        static void Main(string[] args)
        {
            double distancekm = double.Parse(Console.ReadLine());
            string traveltime = Console.ReadLine();
            double taxiprice = 0.70;

 

 

            if (distancekm<20 && traveltime=="day")
            {
                double pricedayTaxi =taxiprice + distancekm * 0.79;
                Console.WriteLine("{0}", pricedayTaxi);
            }
            else if (distancekm<20 && traveltime=="night")
            {
                double pricedaynight = taxiprice + distancekm * 0.90;
                Console.WriteLine("{0}", pricedaynight);
            }
            else if (distancekm>20 && traveltime =="day")
            {
                double priceBus = distancekm * 0.09;
                Console.WriteLine("{0}", priceBus);
            }
            else if (distancekm>100 && traveltime =="night")
            {
                double priceTrain = distancekm * 0.06;
                Console.WriteLine("{0}", priceTrain);
            }

 


        }
    }
}

Колеги искам да ви попитам защо джъдж ми дава 50/100
изходите се получават ,но имам чувството ,че нещо липсва . някой намира ли нещо нередно 

0
Programming Basics
andy94 avatar andy94 58 Точки

Да в сметките ти не влиза когато км >= 20 и км >= 100. Понеже за автобуса пише че може да се използва за минимум 20км предполагам там ще ти е км >= 20 и за влака км >= 100. Дано съм ти помогнал

 

0
simeon3000 avatar simeon3000 264 Точки

Аз бих написал задачата така:

            if (km >= 100) price = km * 0.06; //Влак
            else if (km >= 20) price = km * 0.09; //Автобус
            else //Такси
            {
                if (dayOrNight == "day") price = km * 0.79 + 0.7;
                else price = km * 0.9 + 0.7;
            }
0
Miroslav_Kisov avatar Miroslav_Kisov 60 Точки

Ето решение https://pastebin.com/gNs2TkK0

0
Boyan81 avatar Boyan81 5 Точки

Не си спазил условието за 

Изход

Да се отпечата на конзолата най-ниската цена за посочения брой километри. Резултатът да се форматира до втория знак след десетичната запетая.

https://pastebin.com/VYFBvNXR

може и вместо  "var"  да ползваш "double" ,но изходите да  форматираш до втория знак след десетичната запетая.

Console.WriteLine($"{0:f2}");

0
18/07/2017 22:16:27
Bullsized avatar Bullsized 153 Точки

погледни тук за още едно примерно решение ;)

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