#include #include struct Bank{ std::string family = ""; int number_bank = 0; double sum = 0.0; }; struct bank_two{ std::string family; double sum; }; struct bank_sum{ int number = 0; double sum = 0; }; int* input_output(){ int m; std::cout << "Количество номеров банков в массиве\n"; std::cin >> m; int* massiv = new int[m]; std::cout << "Введите номера банка\n"; for(int i = 0; i < m; i++){ std::cin >> massiv[i]; } std::cout << "Номера банка\n"; for(int i = 0; i < m; i++){ std::cout << massiv[i] << " "; } std::cout << "\n"; return massiv; } int podprogram_two (Bank* a, bank_two*& ban_two, int len, int number){ int b = 0; for(int i = 0; i < len; i++){ if(a[i].number_bank == number){ b++; } } ban_two = new bank_two[b]; for(int i = 0, j = 0; i < len; i++){ if(a[i].number_bank == number){ ban_two[j].family = a[i].family; ban_two[j].sum = a[i].sum; j++; } } return b; } int dif_bank(Bank* a, int n){ int dif = 0; int b[n]; for(int i = 0; i < n;i++) b[i] = 0; for(int i = 0, j = 0; i < n; i++){ bool mark = false; for(int k = 0; k < n; k++) { if(a[i].number_bank == b[k] && b[k] != 0){ mark = true; break; } } if(!mark){ b[j] = a[i].number_bank; j++; dif++; } } return dif; } void podprogram_three(Bank* a, int n){ // Generate a massiv int dif = dif_bank(a, n); bank_sum* b = new bank_sum[dif]; for(int i = 0, j = 0; i < n; i++) { bool mark = false; for(int k = 0; k < dif; k++){ if(b[k].number == a[i].number_bank){ mark = true; b[k].sum += a[i].sum; } } if(!mark){ b[j].sum = a[i].sum; b[j].number = a[i].number_bank; j++; } } delete [] b; } int main() { std::cout << "Количество клиентов банка\n"; int n; std::cin >> n; Bank* ban = new Bank[n]; std::cout << "Введите клиентов банка\n"; for(int i = 0; i < n; i++){ std::cin >> ban[i].family; std::cin >> ban[i].number_bank; std::cin >> ban[i].sum; } int* massiv = input_output(); std::cout << "Введите номер банка\n"; int number; std::cin >> number; bank_two* ban_two; int b = podprogram_two(ban, ban_two, n, number); std::cout << "Клиенты банка с номером " << number << "\n"; double sum = 0.0; for(int i = 0; i < b; i++){ sum += ban_two[i].sum; std::cout << "Family: "<< ban_two[i].family << " Sum: " << ban_two[i].sum << "\n"; } std::cout << "Общие вклады в банке: " << sum << "\n"; podprogram_three(ban, n); delete [] massiv; delete [] ban; delete [] ban_two; }