Для реализации сортировки по степени риска и поиска по степени риска вам нужно использовать стандартные функции сортировки и поиска в массиве объектов классов.
Для сортировки классов по уменьшению степени риска, можно воспользоваться стандартной функцией сортировки std::sort из библиотеки <algorithm>. Для этого объявите собственный компаратор, который будет сравнивать объекты по степени риска, и передайте его в функцию сортировки. Пример:
bool compareRisks(Derivativ* a, Derivativ* b) { return a->getstep() < b->getstep(); } // Внутри блока case 2 в функции main() std::sort(ex, ex+5, compareRisks);
Для поиска по степени риска можно использовать стандартную функцию поиска std::find_if из библиотеки <algorithm>. Объявите собственный предикат, который будет проверять степень риска объекта, и передайте его в функцию поиска. Пример:
int searchRisk; cout << "Введите степень риска для поиска: "; cin >> searchRisk; // Внутри блока case 3 в функции main() auto it = std::find_if(ex, ex+5, [searchRisk](Derivativ* obj) { return obj->getstep() == searchRisk; }); if (it != ex+5) { cout << "Найден объект с указанной степенью риска:" << endl; cout << "Название: " << (*it)->getname() << endl; // Вывод остальных параметров объекта } else { cout << "Объект с указанной степенью риска не найден." << endl; }
Поместите данные коды в блоки case 2 и case 3 в функции main() соответственно.
Надеюсь, это поможет вам реализовать необходимые операции сортировки и поиска по степени риска в вашей программе.
Для реализации сортировки по степени риска и поиска по степени риска вам нужно использовать стандартные функции сортировки и поиска в массиве объектов классов.
Для сортировки классов по уменьшению степени риска, можно воспользоваться стандартной функцией сортировки std::sort из библиотеки <algorithm>. Для этого объявите собственный компаратор, который будет сравнивать объекты по степени риска, и передайте его в функцию сортировки. Пример:
bool compareRisks(Derivativ* a, Derivativ* b) {return a->getstep() < b->getstep();
}
// Внутри блока case 2 в функции main()
std::sort(ex, ex+5, compareRisks);
Для поиска по степени риска можно использовать стандартную функцию поиска std::find_if из библиотеки <algorithm>. Объявите собственный предикат, который будет проверять степень риска объекта, и передайте его в функцию поиска. Пример:
int searchRisk;cout << "Введите степень риска для поиска: ";
cin >> searchRisk;
// Внутри блока case 3 в функции main()
auto it = std::find_if(ex, ex+5, [searchRisk](Derivativ* obj) {
return obj->getstep() == searchRisk;
});
if (it != ex+5) {
cout << "Найден объект с указанной степенью риска:" << endl;
cout << "Название: " << (*it)->getname() << endl;
// Вывод остальных параметров объекта
} else {
cout << "Объект с указанной степенью риска не найден." << endl;
}
Поместите данные коды в блоки case 2 и case 3 в функции main() соответственно.
Надеюсь, это поможет вам реализовать необходимые операции сортировки и поиска по степени риска в вашей программе.