//Поскольку вы не указали стоимость бензина, но цену за 1 литр выставил сам. Если нужно изменить стоимость, то измените элемент(ы) массива markPrice, где каждый элемент (с отсчетом от единицы) - это цена за литр бензина соответствующая его индексу (1 - 92, 2 - 95 и так далее).
//Поскольку вы не указали стоимость бензина, но цену за 1 литр выставил сам. Если нужно изменить стоимость, то измените элемент(ы) массива markPrice, где каждый элемент (с отсчетом от единицы) - это цена за литр бензина соответствующая его индексу (1 - 92, 2 - 95 и так далее).
#include <iostream>
#include <locale>
using namespace std;
double GetPrice(double litr, double price, double discount)
{
double defaultPrice = litr * price;
return defaultPrice - defaultPrice * discount;
}
double GetDiscount (double litr, double mark)
{
double discount = 0;
if (litr > 10 && litr <= 20)
{
if (mark == 1)
discount = 0.05;
else if (mark == 2)
discount = 0.1;
}
else if (litr > 20)
{
if (mark == 1)
discount = 0.1;
else if (mark == 2)
discount = 0.2;
else
discount = 0.05;
}
return discount;
}
int main()
{
setlocale(LC_ALL, "Russian");
double markPrice[] = {42, 45, 46};
int mark;
double litr;
cout << "Выберите марку бензина (1 - 92; 2 - 95; 3 - дизель): ";
cin >> mark;
cout << "Введите количество литров: ";
cin >> litr;
if (mark >= 1 && mark <= 3)
cout << endl << "Стоимость заправки: " << GetPrice(litr, markPrice[mark - 1], GetDiscount(litr, mark));
else
cout << endl << "Ошибка! Введенная марка бензина не обнаружена!";
return 0;
}