Loading...
carlitobrigante avatar carlitobrigante 0 Точки

Проблем със задача Fruit Shop от курса Programing Basics C++

Здравейте, имам проблем със задачата проверките от условието ги изпълнява както трябва. , но в judge-системата ми дава 94/100. Решавал съм я преди на C# задачата по същия начин и дава 100/100. Прекарах известно време търсейки си грешката и не я откривам. Ето и кода:

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string fruit, day;
    double quantity;
    cin >> fruit >> day >> quantity;
    cout.precision(2);
    if (day == "Monday" || day == "Tuesday" || day == "Wednesday" || day == "Thursday" || day == "Friday")
    {
        if (fruit == "banana")
            cout << quantity * 2.50;
        else if (fruit == "apple")
            cout << fixed << quantity * 1.20;
        else if (fruit == "orange")
            cout << fixed << quantity * 0.85;
        else if (fruit == "grapefruit")
            cout << fixed << quantity * 1.45;
        else if (fruit == "kiwi")
            cout << fixed << quantity * 2.70;
        else if (fruit == "pineapple")
            cout << fixed << quantity * 5.50;
        else if (fruit == "grapes")
            cout << fixed << quantity * 3.85;
        else
            cout << "error";
    }
    else if (day == "Saturday" || day == "Sunday")
    {
        if (fruit == "banana")
            cout << fixed << quantity * 2.70;
        else if (fruit == "apple")
            cout << fixed << quantity * 1.25;
        else if (fruit == "orange")
            cout << fixed << quantity * 0.90;
        else if (fruit == "grapefruit")
            cout << fixed << quantity * 1.60;
        else if (fruit == "kiwi")
            cout << fixed << quantity * 3.00;
        else if (fruit == "pineapple")
            cout << fixed << quantity * 5.60;
        else if (fruit == "grapes")
            cout << fixed << quantity * 4.20;
        else
            cout << "error";
    }
    else
        cout << "error";
    return 0;
}

 

Предварително Благодаря! (:

 

Тагове:
0
Open Courses
kolioi avatar kolioi 641 Точки
Best Answer

Тук

if (fruit == "banana")
    cout << quantity * 2.50;

си забравил fixed и затова ти дава само 94/100 smiley

По-добре си направи една променлива price като променяш стойността й в зависимост от продукта и чак накрая отпечатваш цялата сума

cout << fixed << quantity * price << endl;

 

0
23/10/2017 23:43:29
carlitobrigante avatar carlitobrigante 0 Точки

Доста пъти го прочетох, незнам как не съм го видял.. Благодаря! Също така добро предложение за променливата, спестява се писане с нея.

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