Loading...
dimitroww avatar dimitroww 6 Точки

07. Shopping

В judge ми дава 10/100. Някой да има идея защо?

Условие:

Петър иска да купи N видеокарти, M процесора и P на брой рам памет. Ако броя на видеокартите е по-голям от този на процесорите получава 15% отстъпка от крайната сметка. Важат следните цени:

· Видеокарта – 250 лв./бр.

· Процесор – 35% от цената на закупените видеокарти/бр.

· Рам памет – 10% от цената на закупените видеокарти/бр.

Да се изчисли нужната сума за закупуване на материалите и да се пресметне дали бюджета ще му стигне.

Вход

Входът се състои от четири реда:

1. Бюджетът на Петър - реално число в интервала [0.0…100000.0]

2. Броят видеокарти - цяло число в интервала [0…100]

3. Броят процесори - цяло число в интервала [0…100]

4. Броят рам памет - цяло число в интервала [0…100]

Изход

На конзолата се отпечатва 1 ред, който трябва да изглежда по следния начин:

· Ако бюджета е достатъчен:

"You have {остатъчен бюджет} leva left!"

· Ако сумата надхвърля бюджета:

"Not enough money! You need {нужна сума} leva more!"

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

         Код:

https://pastebin.com/WTHKchzp

1
Programming Basics
dimitarglavianov avatar dimitarglavianov 110 Точки
Best Answer

Здравей, цената на процесорите се смяташе грешно и отстъпката накрая се дава само ако броя на картите е по-голям

 

using System;
 
namespace Shopping
{
    class Program
    {
        static void Main(string[] args)
        {
            // Input 
            double budget = double.Parse(Console.ReadLine());
            int gpuNum = int.Parse(Console.ReadLine());
            int cpuNum = int.Parse(Console.ReadLine());
            int ramNum = int.Parse(Console.ReadLine());
 
            // Prices 
            double gpuPrice = 250 * gpuNum;
            // 35 procents of gpu numbers
            double cpuPrice = gpuPrice * 0.35 * cpuNum;
            double ramPrice = (gpuPrice * 0.1) * ramNum;
            double totalSum = gpuPrice + cpuPrice + ramPrice;
 
            if (gpuNum > cpuNum)
            {
                totalSum = totalSum * 0.85;
            }
            double moneyLeft = budget - totalSum;
            double moneyNeeded = totalSum - budget;
 
            if (budget >= totalSum)
            {
                Console.WriteLine($"You have {moneyLeft:f2} leva left!");
            }
            else if (totalSum > budget)
            {
                Console.WriteLine($"Not enough money! You need {Math.Abs(moneyNeeded):f2} leva more!");
            }
 
        }
    }
}

1
dimitroww avatar dimitroww 6 Точки

Благодаря.

1
Fertious3 avatar Fertious3 -1 Точки

Thank you for your help. territorial io welcomes you to come and practice your abilities.

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