#include <iostream>
using namespace std;
const unsigned int arr_size = 10; // array size
const unsigned int str_len = 80;
int i;
struct marsh {
wchar_t start[str_len];
wchar_t finish[str_len];
unsigned int index;
} notes[arr_size];
int main() {
wcin.imbue(locale(".866"));
wcout.imbue(locale(".866"));
// input
for (i = 0; i < arr_size; i++)
{
wcout << L"====================================" << endl
<< L"\tдобавление записи " << i + 1 << endl
<< L"номер маршрута = ";
cin >> notes[i].index;
wcout << L"начальный пункт = ";
wcin.ignore();
wcin.getline(notes[i].start, str_len);
wcout << L"конечный пункт = ";
wcin.getline(notes[i].finish, str_len);
}
wcout << L"====================================" << endl;
//sorting
marsh temp;
for (i = 0; i < arr_size - 1; i++)
for (unsigned int j = 0; j < arr_size - i - 1; j++)
if (notes[j].index > notes[j + 1].index) {
temp = notes[j];
notes[j] = notes[j + 1];
notes[j + 1] = temp;
}
// output
unsigned int number;
wcout << endl << L"введите номер маршрута, который хотите просмотреть" << endl
<< L"номер = ";
cin >> number;
bool not_in_notes = true;
for (i = 0; i < arr_size; i++)
{
if (notes[i].index == number)
{
wcout << L"\nмаршрут номер " << notes[i].index << L" из начального пункта \"" << notes[i].start
<< L"\" в конечный пункт \"" << notes[i].finish << '\"' << endl << endl << endl;
not_in_notes = false;
break;
}
}
if (not_in_notes) wcout << L"извините, но данного маршрута в записях нет" << endl << endl << endl;
system("Pause");
return 0;
}