Loading...
Kiril78 avatar Kiril78 -2 Точки

Задачка Transport Price

Здравейте на всички  , опитах Задачка Transport Price :

Студент трябва да пропътува n километра. Той има избор измежду три вида транспорт:
•    Такси. Начална такса: 0.70 лв. Дневна тарифа: 0.79 лв. / км. Нощна тарифа: 0.90 лв. / км.
•    Автобус. Дневна / нощна тарифа: 0.09 лв. / км. Може да се използва за разстояния минимум 20 км.
•    Влак. Дневна / нощна тарифа: 0.06 лв. / км. Може да се използва за разстояния минимум 100 км.
Напишете програма, която въвежда броя километри n и период от деня (ден или нощ) и изчислява цената на най-евтиния транспорт.
Вход
От конзолата се четат два реда:
•    Първият ред съдържа числото n – брой километри – цяло число в интервала [1…5000].
•    Вторият ред съдържа дума “day” или “night” – пътуване през деня или през нощта.
Изход
Да се отпечата на конзолата най-ниската цена за посочения брой километри.

Моето решение :

using System;
namespace Transport_Price
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            string timeOfDay = Console.ReadLine();

            double taxiKmPrice = 0.79;//dnevna
            if (timeOfDay == "night")
            {
                taxiKmPrice = 0.90;//taxi naght
            }
            double taxiPrice = 0;
            double busPrice = 0;
            double trainPrice = 0;

            if (n < 20)
            {
                taxiPrice = taxiKmPrice * n + 0.70;//nachalna
            }
            else if (n >= 20 && n < 100)//pod && nad
            {
                busPrice = n * 0.09;//bus naght
            }
            else if (n >= 100)
            {
                trainPrice = n * 0.06;//vlak naght
            }
            Console.WriteLine("{0}{1}{2} ", taxiPrice, busPrice, trainPrice);
        }
    }
}

Не успявам да я реша (Math.Round = ? ,2) до 2рата десетична , не съдете строго опитвам се да се науча ,

 

 

 

Тагове:
0
Programming Basics
Kiril78 avatar Kiril78 -2 Точки

Здравей , виждам отговора < Благодаря по кратък и смислен от моя = new string ("още се уча")

Console.WriteLine("Respect ")

-1
delian1914 avatar delian1914 99 Точки

Нямам възможност в момента да компилирам кода, но ако само форматирането ти е проблема пробвай да добавиш :f2 на плейсхолдъра

Console.WriteLine("{0:f2}{1:f2}{2:f2} ", taxiPrice, busPrice, trainPrice);

Поздрави!

0
Kiril78 avatar Kiril78 -2 Точки

Здравей , пробва го но ми дава < от 2та десетична  запетая . 4,650,000,00

-1
delian1914 avatar delian1914 99 Точки

Навързал си отпечатването на един ред и от там идва объркването. Не трябва ли по - скоро да е в If-овете?


            if (n < 20)
            {
                taxiPrice = taxiKmPrice * n + 0.70;//nachalna
                Console.WriteLine("{0:f2}", taxiPrice);
            }
            else if (n >= 20 && n < 100)//pod && nad
            {
                busPrice = n * 0.09;//bus naght
                Console.WriteLine("{0:f2}", busPrice);

            }
            else if (n >= 100)
            {
                trainPrice = n * 0.06;//vlak naght
                Console.WriteLine("{0:f2}", trainPrice);

            }

 

0
Iv_Konov avatar Iv_Konov 383 Точки

Здравей, Kiril78,
според мен задачата иска само един отговор, и не би следвало проблемът да е във форматирането (поне няма указание за форматиране).


"Да се отпечата на конзолата най-ниската цена за посочения брой километри."


т.е. най-добрата цена от транспорт от такси, автобус или влак (едно от трите, не резултат от трите).

 

Поздрави,
Иван

 

п.с. имам решение на задачата (решавал съм я), но по-добре се побори сам още малко, ако отново не смогнеш, ще ти дам вариант с по-общи зная като за пред изпит "Programming Basics" :) 

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