Тема: Пошук в структурі через фільтри
Доброго дня , працював над структурой, але зупинився на фільтрах, шукав як це можна реалізувати в коді, знайшов, але не розумію як зробити щоб відображалось не точна кількість, а стільки є цих даний при введені в структуру.
Допоможіть будь ласка
Сама суть про фільтри
Повне завдання
Мій код
#include "pch.h"
#include <iostream>
#include "stdio.h"
#include "locale"
#include "windows.h"
#include "string.h"
#include "math.h"
#include <cstdio>
using namespace std;
void spivrobit(void);
void posada(void);
void hvoroba(void);
void pacient(void);
void filter1(void);
void filter2(void);
void filter3(void);
struct medic
{
struct spivrob
{
int kod_spiv;
string PIP_spiv;
int vik_spiv;
string sex_spiv;
string adress_spiv;
int mobile_number_spiv;
int id_spaiv;
int kod_posadi;
}spiv[10];
struct posada
{
int kod_posadi;
string nazvposady;
int oklad;
string obovyazku;
string vimogi;
}pos[5];
struct hvoroba
{
int kod_hvoroby;
string naum_hvorob;
string simptomi;
string trivalist;
string naslidki;
int kod_likiv_1;
int kod_likiv_2;
int kod_likiv_3;
}hvor[10];
struct pacient
{
string PIP_pac;
int vik_pac;
string sex_pac;
string adress_pac;
int mobile_number_pac;
string data_zvernenna;
int kod_hvoroby;
int kod_spiv;
string rezultat;
}pac[10];
}med;
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
cout << "\n---Структура Лікарні---\n\n";
spivrobit();
posada();
hvoroba();
pacient();
filter1();
filter2();
filter3();
int z;
cout << "Для завершення роботи програми введіть будь-яке число: "; cin >> z;
return 0;
}
void spivrobit(void)
{
int i;
cout << "\n---Заповнення структури---\n";
cout << "\n\tСпівробітник\n";
for (i = 0; i <= 9; i++) {
cout << "Співобітник №"<<i+1<<"\n";
cout << "Код співробітника: "; cin >> med.spiv[i].kod_spiv; "\n";
cout << "ПІП: "; cin >> med.spiv[i].PIP_spiv; "\n";
cout << "Вік: "; cin >> med.spiv[i].vik_spiv; "\n";
cout << "Стать: "; cin >> med.spiv[i].sex_spiv; "\n";
cout << "Адреса: "; cin >> med.spiv[i].adress_spiv; "\n";
cout << "Номер телефону: "; cin >> med.spiv[i].mobile_number_spiv; "\n";
cout << "Паспортні дані: "; cin >> med.spiv[i].id_spaiv; "\n";
cout << "Код посади: "; cin >> med.spiv[i].kod_posadi; "\n";
system("cls");
}
system("cls");
}
void posada(void)
{
int i;
cout << "\n---Заповнення структури---\n";
cout << "\n\tПосада\n";
for (i = 0; i <= 4; i++) {
cout << "Посада №" << i + 1 << "\n";
cout << "Код посади: "; cin >> med.pos[i].kod_posadi; "\n";
cout << "Найменування посади: "; cin >> med.pos[i].nazvposady; "\n";
cout << "Оклад: "; cin >> med.pos[i].oklad; "\n";
cout << "Обов'язки: "; cin >> med.pos[i].obovyazku; "\n";
cout << "Вимоги: "; cin >> med.pos[i].vimogi; "\n";
system("cls");
}
system("cls");
}
void hvoroba(void)
{
int i;
cout << "\n---Заповнення структури---\n";
cout << "\n\tХвороба\n";
for (i = 0; i <= 9; i++) {
cout << "Хвороба №" << i + 1 << "\n";
cout << "Код хвороби: "; cin >> med.hvor[i].kod_hvoroby; "\n";
cout << "Найменування: "; cin >> med.hvor[i].naum_hvorob; "\n";
cout << "Симптоми: "; cin >> med.hvor[i].simptomi; "\n";
cout << "Тривалість: "; cin >> med.hvor[i].trivalist; "\n";
cout << "Наслідки:"; cin >> med.hvor[i].naslidki; "\n";
cout << "Код ліків 1: "; cin >> med.hvor[i].kod_likiv_1; "\n";
cout << "Код ліків 2: "; cin >> med.hvor[i].kod_likiv_2; "\n";
cout << "Код ліків 3: "; cin >> med.hvor[i].kod_likiv_3; "\n";
system("cls");
}
system("cls");
}
void pacient(void)
{
int i;
cout << "\n---Заповнення структури---\n";
cout << "\n\tПацієнт\n";
for (i = 0; i <= 9; i++) {
cout << "Пацієнт №" << i + 1 << "\n";
cout << "ПІП: "; cin >> med.pac[i].PIP_pac; "\n";
cout << "Вік: "; cin >> med.pac[i].vik_pac; "\n";
cout << "Стать: "; cin >> med.pac[i].sex_pac; "\n";
cout << "Адреса: "; cin >> med.pac[i].adress_pac; "\n";
cout << "Телефон: "; cin >> med.pac[i].mobile_number_pac; "\n";
cout << "Дата звернення: "; cin >> med.pac[i].data_zvernenna; "\n";
cout << "Код хвороби: "; cin >> med.pac[i].kod_hvoroby; "\n";
cout << "Код співробітника: "; cin >> med.pac[i].kod_spiv; "\n";
cout << "Результат лікування: "; cin >> med.pac[i].rezultat; "\n";
system("cls");
}
system("cls");
}
void filter1(void)
{
int i;
int type;
cout << "Відділ кадрів: ", cin >> type;
for (i = 0; i < /*HZ*/; i++) {
if (type == med.pos[i].kod_posadi) {
cout << "Співобітник №" << i + 1 << "\n";
cout << "Код співробітника: " << med.spiv[i].kod_spiv << "\n";
cout << "ПІП: " << med.spiv[i].PIP_spiv << "\n";
cout << "Вік: " << med.spiv[i].vik_spiv << "\n";
cout << "Стать: " << med.spiv[i].sex_spiv << "\n";
cout << "Адреса: " << med.spiv[i].adress_spiv << "\n";
cout << "Номер телефону: " << med.spiv[i].mobile_number_spiv << "\n";
cout << "Паспортні дані: " << med.spiv[i].id_spaiv << "\n";
cout << "\n\n";
}
}
}
void filter2(void)
{
int i;
int type;
cout << "Хвороби: ", cin >> type;
for (i = 0; i < /*HZ*/; i++) {
if (type == med.hvor[i].simptomi) {
cout << "Хвороба №" << i + 1 << "\n";
cout << "Код хвороби: " << med.hvor[i].kod_hvoroby; "\n";
cout << "Найменування: " << med.hvor[i].naum_hvorob; "\n";
cout << "Тривалість: " << med.hvor[i].trivalist; "\n";
cout << "Наслідки:" << med.hvor[i].naslidki; "\n";
cout << "Код ліків 1: " << med.hvor[i].kod_likiv_1; "\n";
cout << "Код ліків 2: " << med.hvor[i].kod_likiv_2; "\n";
cout << "Код ліків 3: " << med.hvor[i].kod_likiv_3; "\n";
cout << "\n\n";
}
}
}
void filter3(void)
{
int i;
int type;
cout << "Пацієнти: ", cin >> type;
for (i = 0; i < /*HZ*/; i++) {
if (type == med.hvor[i].kod_hvoroby) {
cout << "Пацієнт №" << i + 1 << "\n";
cout << "ПІП: " << med.pac[i].PIP_pac; "\n";
cout << "Вік: " << med.pac[i].vik_pac; "\n";
cout << "Стать: " << med.pac[i].sex_pac; "\n";
cout << "Адреса: " << med.pac[i].adress_pac; "\n";
cout << "Телефон: " << med.pac[i].mobile_number_pac; "\n";
cout << "Дата звернення: " << med.pac[i].data_zvernenna; "\n";
cout << "Код співробітника: " << med.pac[i].kod_spiv; "\n";
cout << "Результат лікування: " << med.pac[i].rezultat; "\n";
cout << "\n\n";
}
}
}
Буду вдячний за допомогу