Другие языки программирования и технологии
помогите решить задание на С++
4)Грузовой самолет должен пролететь с грузом из пункта А в пункт С через пункт В. Емкость бака для топлива у самолета – 300литров. Потребление топлива на 1 км в зависимости от веса груза у самолета следующее: - до 500 кг : 1 литров / км - до 1000 кг : 4 литров / км - до 1500 кг : 7 литров / км - до 2000 кг : 9 литров / км. - более 2000 кг – самолет не поднимает. Пользователь вводит расстояние между пунктами А и В, и расстояние между пунктами В и С, а также вес груза. Программа должна рассчитать какое минимальное количество топлива необходимо для дозаправки самолету в пункте В, чтобы долететь из пункта А в пункт С. В случае невозможности преодолеть любое из расстояний – программа должна вывести сообщение о невозможности полета по введенному маршруту.
// Andrey_Leonov_2011-12-12
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
int capacityMax = 300, weightMax = 2000, s1, s2, weight;
do
{
system("cls");
cout << "\n Введите расстояние между A и B: "; cin >> s1;
cout << "\n Введите расстояние между B и C: "; cin >> s2;
cout << "\n Введите вес груза: "; cin >> weight;
if (weight > weightMax)
{
cout << "\n Взлётный вес превышен! \a";
Sleep(3000);
return 0;
}
else
{
int q1 = 9, q2 = 7, q3 = 4, q4 = 1, rest = capacityMax;
do
{
if (weight >= 1500) rest -= q1;
else if (weight >= 1000) rest -= q2;
else if (weight >= 500) rest -= q3;
else rest -= q4;
s1--;
if (rest <= 0 && s1 == 0)
{
cout << "\n На первый участок маршрута топлива не хватит! \a";
Sleep(3000);
return 0;
}
}
while (s1 > 0);
int fuelCalculation;
if (weight >= 1500) fuelCalculation = s2 * q1;
else if (weight >= 1000) fuelCalculation = s2 * q2;
else if (weight >= 500) fuelCalculation = s2 * q3;
else fuelCalculation = s2 * q4;
if (fuelCalculation > capacityMax)
{
cout << "\n На второй участок маршрута топлива не хватит! \a";
Sleep(3000);
return 0;
}
else if (rest > fuelCalculation) cout << "\n Дозаправка не требуется. ";
else cout << "\n Необходимо минимум " << fuelCalculation - rest << " литров топлива. ";
}
fflush(stdin);
cin.get();
}
while (true);
}
Две сущности во мне борются, как лётчик, я понимаю, что задание полный бред!! ! Какой такой транспортный самолёт имеет максимальную дальность полёта с максимальным взлётным весом 33 километра))) ) Да он у себя на кругу ляжет. Но, как программист, понимаю, что это всего лишь алгоритм.
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
int capacityMax = 300, weightMax = 2000, s1, s2, weight;
do
{
system("cls");
cout << "\n Введите расстояние между A и B: "; cin >> s1;
cout << "\n Введите расстояние между B и C: "; cin >> s2;
cout << "\n Введите вес груза: "; cin >> weight;
if (weight > weightMax)
{
cout << "\n Взлётный вес превышен! \a";
Sleep(3000);
return 0;
}
else
{
int q1 = 9, q2 = 7, q3 = 4, q4 = 1, rest = capacityMax;
do
{
if (weight >= 1500) rest -= q1;
else if (weight >= 1000) rest -= q2;
else if (weight >= 500) rest -= q3;
else rest -= q4;
s1--;
if (rest <= 0 && s1 == 0)
{
cout << "\n На первый участок маршрута топлива не хватит! \a";
Sleep(3000);
return 0;
}
}
while (s1 > 0);
int fuelCalculation;
if (weight >= 1500) fuelCalculation = s2 * q1;
else if (weight >= 1000) fuelCalculation = s2 * q2;
else if (weight >= 500) fuelCalculation = s2 * q3;
else fuelCalculation = s2 * q4;
if (fuelCalculation > capacityMax)
{
cout << "\n На второй участок маршрута топлива не хватит! \a";
Sleep(3000);
return 0;
}
else if (rest > fuelCalculation) cout << "\n Дозаправка не требуется. ";
else cout << "\n Необходимо минимум " << fuelCalculation - rest << " литров топлива. ";
}
fflush(stdin);
cin.get();
}
while (true);
}
Две сущности во мне борются, как лётчик, я понимаю, что задание полный бред!! ! Какой такой транспортный самолёт имеет максимальную дальность полёта с максимальным взлётным весом 33 километра))) ) Да он у себя на кругу ляжет. Но, как программист, понимаю, что это всего лишь алгоритм.
"помогите" или "сделайте вместо меня"?
вываливай свой код или свои мысли а не халявничай
вываливай свой код или свои мысли а не халявничай
switch - case конструкция поможет тебе, о юнный падаван. Ищи светлую сторону гугля!
Ну и где Ваши мысли по этому вопросу?
А мыслей то и нет=)
Похожие вопросы
- Помогите решить задание по HTML/CSS в Dreamweaver
- Помогите решить задание Pascal
- Помогите решить задание по информатике. Нужно написать программу по заданию (см. внутри)
- помогите решить задание на pascal ABC
- Помогите решить задание С++? Найти разницу в днях между двумя заданными датами???
- Срочно помогите решить задание по программированию
- Помогите решить задание с машиной тьюринга
- добрый вечер!помогите пожалуйста решить задание
- помогите решить 2 задание на pascalABC
- Помогите с заданием по C#