Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- struct element {
- element* prev;
- element* next;
- int data;
- };
- element *first, *last, *cur;
- void ElementInput(element*& first, element*& last)
- {
- char snum[10];
- first = new element;
- puts("Enter the elements:");
- gets_s(snum);
- first->data = atoi(snum);
- first->prev = NULL;
- first->next = NULL;
- last = first;
- gets_s(snum);
- while (strlen(snum) != 0)
- {
- element* cur = new element;
- cur->data = atoi(snum);
- cur->prev = last;
- last->next = cur;
- cur->next = NULL;
- last = cur;
- gets_s(snum);
- }
- }
- void ElementCompute(element* first, element* last)
- {
- while (first != NULL)
- {
- printf("%d ", first->data * last->data);
- first = first->next;
- last = last->prev;
- }
- }
- void ElementOutput(bool reverse, element* first, element* last)
- {
- element* cur;
- if (reverse)
- cur = last;
- else
- cur = first;
- while (cur != NULL)
- {
- printf("%2d ", cur->data);
- if (reverse)
- cur = cur->prev;
- else
- cur = cur->next;
- }
- }
- void MemoryClean(element*& first)
- {
- while (first != NULL)
- {
- cur = first;
- first = first->next;
- delete cur;
- }
- }
- int main()
- {
- ElementInput(first, last);
- puts("The entered list:");
- ElementOutput(false, first, last);
- puts("\n\nThe reversed list:");
- ElementOutput(true, first, last);
- puts("\n\nThe computed values x1*xn,...,xn*x1:");
- ElementCompute(first, last);
- //last = NULL;
- MemoryClean(first);
- puts("\n\n");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement