Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
roma_m
0 / 0 / 0
Регистрация: 18.02.2014
Сообщений: 36
#1

Мультисписки. Функция добавление элемента для магазинов и сотрудников с использованием БЕЗТИПОВЫХ указателей - C++

04.03.2014, 22:42. Просмотров 223. Ответов 0
Метки нет (Все метки)

Товарищи! Помогите пожалуйста! Проблема: работа с мультисписком, а точнее с реализацией функций. Нужно сделать функцию добавление элемента мультисписка для магазинов и сотрудников, но с использованием БЕЗТИПОВЫХ указателей, то есть задача такая: если обычно для добавления нужно создать функцию добавления для каждого уровня, то здесь должна быть одна функция, но она может использоваться для обоих уровней мультисписка.
Вот код для простого добавления элементов в кажды уровень списка:
void addShop(TShop *&Start){
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
    TShop *pNew = new TShop;
    cout<<"\nВвод информации о новом магазине!";
    cout<<"\nВведите название магазина: ";
    cin>>pNew->name;
    cout<<"Введите специализацию магазина: ";
    cin>>pNew->spec;
    pNew->next=NULL;
    pNew->subShop=NULL;
    addShopToSortList(Start, pNew);
    cout<<"\nДобавление прошло успешно!\n";
    cout<<"\nСодержимое списка:";
    showList(Start);
}
void addSotr(TShop *&Start){
    string name;
    TShop *wp, *pp;
    cout<<"\n\nВвод информации о магазине:\n";
    cout<<"Введите название магазина: ";
    cin>>name;
    if(name.length()==0){
        cout<<"\nОблом\n";return;
    }
    bool isSotr = findShop(Start, name, pp, wp);
    if(!isSotr){
        cout<<"\nОблом\n";return;
    }
    TSotr *pNew = new TSotr;
    cout<<"Ввод информации о новом сотруднике:\n";
    cout<<"Введите фамилию: ";
    cin>>pNew->fam;
    cout<<"Введите должность: ";
    cin>>pNew->dol;
    cout<<"Введите зарплату: ";
    cin>>pNew->zarp;
    pNew->next=NULL;
    addSotrToSortList(wp->subShop,pNew);
    cout<<"\nДобавление прошло успешно!\n";
    cout<<"Содержимое списка:";
    showList(Start);
}
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void addShopToSortList(TShop *&Start, TShop *pNew){
    TShop *wp,*pp;
    for(wp=Start,pp=NULL;wp!=NULL&&pNew->name >wp->name;pp=wp,wp=wp->next){}
    if(pp == NULL) Start = pNew;
    else pp->next = pNew;
    pNew->next=wp;
}
void addSotrToSortList(TSotr *&Start, TSotr *pNew){
    TSotr *wp, *pp;
    for(wp=Start,pp=NULL;wp!=NULL&&pNew->fam > wp->fam;pp=wp,wp=wp->next){}
    if(pp == NULL)Start=pNew;
    else pp->next=pNew;
    pNew->next=wp;
}
Буду благодарен любой адекватной помощи!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2014, 22:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Мультисписки. Функция добавление элемента для магазинов и сотрудников с использованием БЕЗТИПОВЫХ указателей (C++):

Добавление нового указателя в конец массива указателей, удаление указанного элемента, добавление указателей - C++
Здравствуйте. Помогите, пожалуйста, разобраться с одним большим заданием. Задание пока в процессе написания, но уже наверное есть ошибки....

Функция: заполнить массив случайными значениями (с использованием указателей) - C++
подскажите. есть вот такая задача Написать ф-цию fill, которая принимает указатель на массив и количество элементов. Ф-ция заполняет...

Составить программу на языке С++ для обработки строк с использованием указателей - C++
Дана строка. На печать выдать слова, которые имеют четную длину и одинаковые первую и последние буквы Добавлено через 13 секунд Help...

Составить программу на языке C++ для обработки двумерных массивов с использованием указателей - C++
Составить программу на языке C++ для обработки двумерных массивов с использованием указателей. Очень срочно. Завтра экзамен.

Составить программу на языке C++ для обработки двумерных массивов с использованием указателей - C++
Дана матрица порядка n. Найти в последнем столбце max и min. Если в матрице есть нули, то заменить их суммой max и min последнего столбца. ...

Разработать программу для учета сотрудников с использованием средств ООП - C#
Всем привет от новичка. Мне отправили 2 тестовых задания по вакансии стажер-программист C#. 1-е я сделал консольное, но без применения...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2014, 22:42
Привет! Вот еще темы с ответами:

Ошибка при выполнении запроса на добавление (канцтовары для сотрудников) - MS Access
Здравствуйте. Есть 2 таблицы, сотрудники и предметы (канцелярия), связь один ко многим. Все вроде хорошо, но когда делаю запрос на...

Создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей - C++
Нужно создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей. Эта специализация...

Списки. Инициализация, добавление элемента в начало и после другого элемента. Удаление элемента - C#
uses crt; type list= ^item; item=record data: integer; next:list; end; var l:list; procedure print;

применение текстовых типизированных и безтиповых файлов - Turbo Pascal
прошу ,тех кто точно знает и может полно или частично ответить на вопрос &quot;в каких случаях лучше применение текстовых в каких...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru