Форум программистов, компьютерный форум CyberForum.ru

создать двусвязный список, найти произведение второго и последнего элемента - C++

Восстановить пароль Регистрация
 
malinka111
2 / 2 / 0
Регистрация: 19.09.2013
Сообщений: 25
26.09.2013, 20:50     создать двусвязный список, найти произведение второго и последнего элемента #1
создать двусвязный список, найти произведение второго и последнего элемента
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2013, 20:50     создать двусвязный список, найти произведение второго и последнего элемента
Посмотрите здесь:

C++ Создать двусвязный список символов
двусвязный список, как сделать добавление элемента? C++
C++ Двусвязный список, удаление элемента
C++ Односвязный список. Вывести сумму последнего элемента и первого, предпоследнего и последнего и т.д.
Создать функцию которая выведет элементы в убывающем порядке, и покажет произведение первого и последнего элемента массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
26.09.2013, 20:54     создать двусвязный список, найти произведение второго и последнего элемента #2
что не получается?
malinka111
2 / 2 / 0
Регистрация: 19.09.2013
Сообщений: 25
26.09.2013, 21:02  [ТС]     создать двусвязный список, найти произведение второго и последнего элемента #3
_,
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
#include <stdlib.h>
 
class CTwoDirList
{
public:
    CTwoDirList(CTwoDirList *pr);
    int number;
    ~CTwoDirList();
    CTwoDirList* Next;
    CTwoDirList* Prev;
};
 
CTwoDirList::CTwoDirList(CTwoDirList *pr)
{
    Next=NULL;
    Prev=pr;
    number=0;
};
 
CTwoDirList::~CTwoDirList()
{
    Prev->Next=Next;
    Next->Prev=Prev;
};
 
void main()
{
    CTwoDirList *List,*temp,*temp1,*temp2;
    List= new CTwoDirList(NULL);
    List->number=10;
 
    temp=List;
    for (int i=0;i < 10;i++)
    {
        temp->Next=new CTwoDirList(temp);
        temp=temp->Next;
        temp->number=i;
    };
 
    temp=List;
    printf("\nList in -> direction:");
    while (temp!=NULL)
    {
        printf(" %d ",temp->number);
        if (temp->Next==NULL) temp1=temp;
        temp=temp->Next;
    };
 
    printf("\nList in <- direction:");
    temp2=temp1;
    while (temp1!=NULL)
    {
        printf(" %d ",temp1->number);
        temp1=temp1->Prev;
    };
 
    while (List!=NULL)
    {
        temp=List;
        List=List->Next;
        delete temp;
    };
};
у меня есть код создания, но я не знаю как заполнить его элементами, что б найти произведение
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
26.09.2013, 21:11     создать двусвязный список, найти произведение второго и последнего элемента #4
второй элемент List->Next
последний нужно находить через цикл.
malinka111
2 / 2 / 0
Регистрация: 19.09.2013
Сообщений: 25
26.09.2013, 21:13  [ТС]     создать двусвязный список, найти произведение второго и последнего элемента #5
_, а в каком месте кода нужно задать цикл для нахождения произведения?
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
26.09.2013, 21:19     создать двусвязный список, найти произведение второго и последнего элемента #6
malinka111, сначала устанавливаете указатель на начало списка. потом проходите по всем узлам до последнего. в последнем узле указатель CTwoDirList* Next; будет NULL

вот так ищется последний узел

ну а потом перемножаете int number; из первого узла и int number; из последнего
Yandex
Объявления
26.09.2013, 21:19     создать двусвязный список, найти произведение второго и последнего элемента
Ответ Создать тему
Опции темы

Текущее время: 13:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru