Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++] Структуры


Автор: Fish24 20.2.2014, 20:10
        Помогите решить задачу в  Microsoft Visual C++, пожалуйста))
Заранее спасибо))


      
•    Описать структуру с именем AEROFLOT, содержащую следующие поля:
•    название пункта назначения рейса;
•    номер рейса;
•    тип самолета.
Написать программу, выполняющую следующие действия:
•    ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT (записи должны быть размещены в алфавитном порядке по названиям пунктов назначения);
•    вывод на экран пунктов назначения и номеров рейсов, обслуживаемых само¬летом, тип которого введен с клавиатуры (если таких рейсов нет, вывести со¬ответствующее сообщение).

Автор: rudolfninja 21.2.2014, 15:15
Структура будет такой:
Код

struct AEROFLOT
{
std::string dst_name;
int number;
std::string airplane_type;
};


Массив и ввод данных в него:

Код

AEROFLOT planes[7];
for(int i = 0; i < 7; i++)
{
std::cout << "Input final destination: ";
std::cin >> planes[i].dst_name;
std::cout << "Input plane number: ";
std::cin >> planes[i].nimber;
std::cout << "Inpuer airplane type: ";
std::cin >> planes[i].airplane_type;
}


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

Код

for(int i = 0; i < 7; i++)
{
for(int j = i + 1; j < 7; j++)
{
if(planes[i].dst_name.compare(planes[j].dst_name) > 0)
{
AEROFLOT temp = planes[j];
planes[j] = planes[i];
planes[i] = temp;
}
}
}


Вывод на экран пунктов назначения и номеров рейсов, обслуживаемых самолетом, тип которого введен с клавиатуры (если таких рейсов нет, вывести соответствующее сообщение). 

Код

bool isFind = false;
std::string type;
std::cout << "Input airplane type to find: ";
std::cin >> type;
for(int i = 0; i < 7; i++)
{
if(planes[i].airplane_type.compare(type) == 0)
{
isFind = true;
std::cout << "Final destination: " << planes[i].dst_name << std::endl;
std::cout << "Plane number: " << planes[i].nimber << std::endl;
std::cout << "Inpuer airplane type: " << planes[i].airplane_type << std::endl;
}
}
if(!isFind)
{
std::cout << "There is no flights with airplane type " << type << std::endl;
}


Код не отформатирован, т.к. писал его сразу тут, в браузере, но должен сработать.
Удачи.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)