Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- struct ListA
- {
- int value;
- ListA* next;
- ListA(int val = 0, ListA* p = NULL) //конструктор
- {
- value = val;
- next = p;
- }
- };
- struct ListB
- {
- int value;
- ListB* next;
- ListB(int val = 0, ListB* p = NULL)
- {
- value = val;
- next = p;
- }
- };
- struct ListC
- {
- int value;
- ListC* next;
- ListC(int val = 0, ListC* p = NULL)
- {
- value = val;
- next = p;
- }
- };
- ListA* Add_last(int n, ListA* head1)
- {
- ListA* q = new ListA(n), * p = head1;
- if (head1 == NULL) return q; // если список пуст
- while (p->next != NULL) // «идем в конец списка»
- p = p->next;
- p->next = q;
- return head1;
- }
- ListB* Add_last(int n, ListB* head2)
- {
- ListB* q = new ListB(n), * p = head2;
- if (head2 == NULL) return q;
- while (p->next != NULL)
- p = p->next;
- p->next = q;
- return head2;
- }
- ListC* Add_last(int n, ListC* head3)
- {
- ListC* q = new ListC(n), * p = head3;
- if (head3 == NULL) return q;
- while (p->next != NULL)
- p = p->next;
- p->next = q;
- return head3;
- }
- ListA* Creat_list1(const int& N)
- {
- cout << "Введите элементы списка L1" << endl;
- int elm;
- ListA* head1 = NULL;
- for (int i = 0; i < N; i++)
- {
- cin >> elm;
- head1 = Add_last(elm, head1);
- }
- return head1;
- }
- ListB* Creat_list2(const int& N)
- {
- cout << "Введите элементы списка L2" << endl;
- int elm;
- ListB* head2 = NULL;
- for (int i = 0; i < N; i++)
- {
- cin >> elm;
- head2 = Add_last(elm, head2);
- }
- return head2;
- }
- //ListC* Creat_list3(const int& N)
- //{
- //}
- void Print_list(ListA* head1)
- {
- cout << "Вывод L1: " << endl;
- ListA* p = head1;
- if (p == NULL) puts("Список пустой");
- else
- while (p != NULL)
- {
- cout << p->value;
- p = p->next;
- }
- }
- void Print_list(ListB* head2)
- {
- cout << "Вывод L2: " << endl;
- ListB* p = head2;
- if (p == NULL) puts("Список пустой");
- else
- while (p != NULL)
- {
- cout << p->value;
- p = p->next;
- }
- }
- int main()
- {
- setlocale(LC_ALL, "Russian");
- int N;
- ListA* head1 = NULL;
- cout << "Введите число элементов L1: ";
- cin >> N;
- head1 = Creat_list1(N);
- ListB* head2 = NULL;
- cout << "Введите число элементов L2: ";
- cin >> N;
- head2 = Creat_list2(N);
- Print_list(head1);
- cout << endl;
- Print_list(head2);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement