Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- using namespace std;
- struct phonebook
- {
- char name[20];
- char lname[20];
- int number;
- };
- void poisk(int &vibor, phonebook *wk)
- {
- int schetChik[50], temp;
- char sortiOvka[50][50], tempCh[50];
- int k = 1;
- bool povtor;
- for (int p = 0; p < 50; ++p)
- {
- schetChik[p] = 0;
- }
- if (vibor == 1)
- {
- strcpy_s(sortiOvka[0], wk[0].name);
- ++schetChik[0];
- for (int i = 1; i < 7; ++i)
- {
- povtor = false;
- for (int j = 0; j < k; ++j)
- {
- if (!strcmp(sortiOvka[j], wk[i].name))
- {
- ++schetChik[j];
- povtor = true;
- }
- }
- if (!povtor)
- {
- strcpy_s(sortiOvka[k], wk[i].name);
- schetChik[k] = 1;
- ++k;
- }
- }
- }
- else
- {
- strcpy_s(sortiOvka[0], wk[0].lname);
- ++schetChik[0];
- for (int i = 1; i < 7; ++i)
- {
- povtor = false;
- for (int j = 0; j < k; ++j)
- {
- if (!strcmp(sortiOvka[j], wk[i].lname))
- {
- ++schetChik[j];
- povtor = true;
- }
- }
- if (!povtor)
- {
- strcpy_s(sortiOvka[k], wk[i].lname);
- schetChik[k] = 1;
- ++k;
- }
- }
- }
- for (int i = 0; i < k; ++i)
- {
- for (int j = 0; j < k - 1 - i; ++j)
- {
- if (schetChik[j] < schetChik[j + 1])
- {
- temp = schetChik[j];
- schetChik[j] = schetChik[j + 1];
- schetChik[j + 1] = temp;
- strcpy_s(tempCh, sortiOvka[j]);
- strcpy_s(sortiOvka[j], sortiOvka[j + 1]);
- strcpy_s(sortiOvka[j + 1], tempCh);
- }
- }
- }
- for (int i = 0; i < k; i++)
- {
- cout << sortiOvka[i] << " " << schetChik[i] << endl;
- }
- }
- int main()
- {
- setlocale(LC_ALL, "rus");
- bool flag;
- int vibor;
- phonebook wk[20];
- strcpy_s(wk[0].name, "Денис");
- strcpy_s(wk[0].lname, "Волков");
- wk[0].number = 89216538091;
- strcpy_s(wk[1].name, "Андрей");
- strcpy_s(wk[1].lname, "Волков");
- wk[1].number = 89216537091;
- strcpy_s(wk[2].name, "Кирилл");
- strcpy_s(wk[2].lname, "Волков");
- wk[2].number = 89212345091;
- strcpy_s(wk[3].name, "Андрей");
- strcpy_s(wk[3].lname, "Волков");
- wk[3].number = 89216538456;
- strcpy_s(wk[4].name, "Кирилл");
- strcpy_s(wk[4].lname, "Коротков");
- wk[4].number = 89216512391;
- strcpy_s(wk[5].name, "Богдан");
- strcpy_s(wk[5].lname, "Коротков");
- wk[5].number = 89216538671;
- strcpy_s(wk[6].name, "Андрей");
- strcpy_s(wk[6].lname, "Рожков");
- wk[6].number = 89216538092;
- cout << "Введите пожалуйста 1 или 0 , если хотите вывести список людей по имени или фамилии соответственно: ";
- cin >> vibor;
- while (vibor!= 1 && vibor!=0)
- {
- cout << "Ошибка. Введите 1 или 0" << endl;
- cin >> vibor;
- }
- poisk(vibor, wk);
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement