Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //андросов игорь 2 задание
- //с 1 по 3 пункт, не понял что нужно сделать в 4 пункте
- #include <iostream>
- #include <fstream>
- using namespace std;
- struct TEL
- {
- TEL* l;
- TEL* r;
- string num;
- string name;
- };
- TEL* dobav(string num, string name, TEL* r);
- void print(TEL* r);
- void menyu(TEL* &tree)
- {
- cout << endl << "добавить телефон в картотеку: 1" << endl;
- cout << "вывести картотеку: 2" << endl;
- cout << "ввод телефона и время разговора: 3" << endl;
- string cmd; cin >> cmd;
- if (cmd == "1")
- {
- cout << "введите телефон потом имя: ";
- string n, name;
- cin >> n;
- cin >> name;
- tree = dobav(n, name, tree);
- }
- else if (cmd == "2")
- {
- print(tree);
- }
- else if (cmd == "3")
- {
- cout << "введите телефон и время разговора в минутах: ";
- string n;
- double t;
- cin >> n;
- cin >> t;
- cout << "абонент с номером " << n << " заплатит " << t * 3.6 << " рублей за разговор." << endl;
- }
- else
- {
- cout << "нет такой команды" << endl;
- }
- }
- int main()
- {
- setlocale(0, "rus");
- cout << "1 ключ лучше минимальный" << endl;
- TEL* tree = NULL;
- while (true)
- {
- menyu(tree);
- }
- system("pause");
- return 0;
- }
- TEL* dobav(string num, string name, TEL* r)
- {
- if (r == NULL) {
- r = new TEL;
- r->num = num;
- r->name = name;
- r->l = NULL;
- r->r = NULL;
- return r;
- }
- else
- if (num < r->num) {
- r->l = dobav(num, name, r->l);
- return r;
- }
- else {
- r->r = dobav(num, name, r->r);
- return r;
- }
- }
- void print(TEL* r)
- {
- if (r == NULL) return;
- cout << r->num << " " << r->name << endl;
- print(r->l);
- print(r->r);
- }
Add Comment
Please, Sign In to add comment