Описать структуру с именем MARSH

Belarus

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

Belarus

держи, но я сортировку по первой букве сделал
#include <iostream>
#include <cstring>
#include <cstdlib>
using namespace std;
#define n 10
struct MARSH
{
    string beg;
    string ends;
    int number;
};
 
int main(){
    MARSH route[n];
    cout<<"Input info:"<<endl;
    for(int i = 0; i < n; i++){
        cin >> route[i].beg;
        cin >> route[i].ends;
        cin >> route[i].number;
    }
    
    string tmp, tmp2;
    int tmp3 = 0;
    
    for(int i = 0; i < n - 1; i++){ // сортировка по алфавиту(англ)
        for(int j = i + 1; j < n; j++){
        if(route[i].beg[0] >  route[j].beg[0]){
            tmp = route[j].beg;
            tmp2 = route[j].ends;
            tmp3 = route[j].number;
            route[j].beg = route[i].beg;
            route[j].ends = route[i].ends;
            route[j].number = route[i].number;
            route[i].beg = tmp;
            route[i].ends = tmp2;
            route[i].number = tmp3;
        }
        }
    }
    /*for(int i = 0; i < n; i++) // вывод отсортированного 
    cout<<endl<<route[i].beg<<" "<<route[i].ends<<" "<<route[i].number;*/
    
    string choose;
    int count = 0;
    cout<<endl<<"Input begin or end route: ";
    for(int i = 0; i < 4; i++){
        if(choose == route[i].beg || choose == route[i].ends){
            cout<<endl<<route[i].beg<<" "<<route[i].ends<<" "<<route[i].number;
                    count ++;
                }
        
    }
    if(count == 0)
        cout<<endl<<"EMPTY !!!";
    
return 0;
}