Вопрос по программированию C++ ( Именно вопрос:) ) - Вопросы по С+

Вопрос Вопрос по программированию C++ ( Именно вопрос:) )

Регистрация
8 Июл 2013
Сообщения
67
Репутация
0
Спасибо
0
Монет
0
Значит вот условие задачи!

Задание 2: Грузовой самолет должен пролететь с грузом из пункта А в пункт С через пункт В.
Емкость бака для топлива у самолета – 300 литров. Потребление топлива на 1 км в зависимости
от веса груза у самолета следующее:
- до 500 кг: 1 литров / км
- до 1000 кг: 4 литров / км
- до 1500 кг: 7 литров / км
- до 2000 кг: 9 литров / км.
- более 2000 кг – самолет не поднимает.
Пользователь вводит расстояние между пунктами А и В, и расстояние между пунктами В и С, а
также вес груза. Программа должна рассчитать какое минимальное количество топлива
необходимо для дозаправки самолету в пункте В, чтобы долететь из пункта А в пункт С. В
случае невозможности преодолеть любое из расстояний – программа должна вывести
сообщение о невозможности полета по введенному маршруту.

А вот мое решение, но есть проблема с тем что я не могу найти правильный алгоритм решения когда самолет в пункте B делает заправку... Выводит полный бред.. Помогите:)

#include
#include
using namespace std;

int main()
{

setlocale(LC_ALL, "ru");
int a, b, c;
cout << "Введите расстояние между пунктами А и В в км: ";
cin >> a;
cout << "Введите расстояние между пунктами В и С в км: ";
cin >> b;
cout << "Введите вес груза в кг: ";
cin >> c;

if (c < 500)
{
cout << " Между пунктами А и В будет истрачено " << a * 1 << " литров.";

if ((300 - a * 1) >= 0)
{
cout << " Необходимо дозаправится " << 300 - a * 1 << " литров.";
}
else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 1000)
{
cout << " Между пунктами А и В будет истрачено " << a * 4 << " литров.";
if ((300 - a * 4) >= 0)
{
cout << " Необходимо дозаправится " << 300 - a * 4 << " литров.";
}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 1500)
{
cout << " Между пунктами А и В было истрачено " << a * 7 << " литров.";
if ((300 - a * 7) >= 0)
{
cout << " Необходимо дозаправится " << 300 - a * 7 << " литров.";
}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 2000)
{
cout << " Между пунктами А и В было истрачено " << a * 9 << " литров.";
if ((300 - a * 9) >= 0)
{
cout << " Необходимо дозаправится " << 300 - a * 9 << " литров.";
}

else
{
cout << " Невозможен полет по введенному маршруту ";
}

}
else if (c > 2000)
{
cout << " Самолет не поднимает " << endl;
}

if (c < 500)
{
cout << " Между пунктами В и С будет истрачено " << b * 1 << " литров.";
if ((300 - b * 1) >= 0)
{}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 1000)
{
cout << " Между пунктами В и С будет истрачено " << b * 4 << " литров.";
if ((300 - b * 4) >= 0) {}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 1500)
{
cout << " Между пунктами В и С было истрачено " << b * 7 << " литров.";
if ((300 - b * 7) >= 0) {}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}
else if (c < 2000)
{
cout << " Между пунктами В и С было истрачено " << b * 9 << " литров.";
if ((300 - b * 9) >= 0) {}

else
{
cout << " Невозможен полет по введенному маршруту ";
}
}

return 0;
}

Спасибо..:)
 
Сверху Снизу