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

Ввод вложенного односвязного линейного списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дано предложение, надо вывести слова встречающие более одного раза http://www.cyberforum.ru/cpp-beginners/thread591817.html
Помогите пожалуйста! Дано предложение, надо вывести слова встречающие более одного раза. Программа должна на С++ Заранее спасибо!
C++ По заданым N и K найти какая цифра будет стоять N-ой строке на K-ом месте и вывести её Ограничения по времени: 2 секунды Ограничения по памяти: 256 megabytes Строки (цепочки цифр) создаются по следующему правилу. Первая строка из одного символа - "1". Каждая следующая задается так: записывается номер строки потом 2 раза предыдущая. Примет 1. 1 2. 211 3. 3211211 4. 432112113211211 По заданым N и K найти какая цифра будет стоять N-ой строке на K-ом месте и вывести её. Если... http://www.cyberforum.ru/cpp-beginners/thread591801.html
Условия добавления в дерево C++
Привет, решаю задачку, не могу кое с чем разобраться. у меня задача добавить в дерево число, как концевой узел. если число меньше значения корня дерева, то добавить в левое дерево(это ОК), если больше, то в правое(это тоже ОК), а если равно то никуда ничего не добавлять, а просто пропустить его. то есть если у нас корень 5, и мы когда-то захотим вставить число 5, то мы должны будем просто...
Массивы: составить вдвое меньший массив,элементами которого являются C++
Дан массив a из n элементов. n - четное. Составить вдвое меньший массив,элементами которого являются : b1=a1+an; b2=a2+an-1 и т.д.
C++ Реализация графа http://www.cyberforum.ru/cpp-beginners/thread591782.html
Может кто-нибудь привести пример реализации графа-сети?
C++ программа на c++ Доброго времени суток, у меня возникла проблема с программой, помогите пожалуйста с исправлением ошибок. #include <iostream.h> #include <conio.h> #include <math.h> #include <stdio.h> #include <graphics.h> #include <stdlib.h> #define h 10 float c=0.5,i; int R=100,k; подробнее

Показать сообщение отдельно
Kirill Losev
3 / 3 / 0
Регистрация: 01.10.2011
Сообщений: 249
30.05.2012, 23:07  [ТС]     Ввод вложенного односвязного линейного списка
Ternsip, да, точно. спасибо.
еще вопрос как, например, при вводе обращаться к элементам вложенного списка?

Добавлено через 39 минут
Вот еще один простенький пример.
Тут еще один вопрос: для вложенных структур надо память выделять. А если у меня элементов типа вложенной структуры много? Как например ингредиентов в рецепте?

C++
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <iostream>
#include <windows.h>
using namespace std;
 
struct OneS
{
    char symvol;
    OneS *next;
};
 
struct TwoS
{
    OneS *One;
    int data;
    TwoS *next;
};
 
struct Form
{
    OneS *first;
    OneS *last;
 
    TwoS *begin;
    TwoS *end;
};
 
int InputInfo(Form &);
 
int main()
{
    setlocale(LC_ALL, "RUS");
    Form Card;
    Card.first = NULL;
    Card.last = NULL;
    Card.begin = NULL;
    Card.end = NULL;
 
    InputInfo(Card);
 
    cout << "\n";
    system("pause");
    return 0;
}
 
int InputInfo(Form &Card)
{
    OneS *Now = NULL;
    TwoS *Curr = NULL;
    Card.first = Now;
    Card.begin = Curr;
 
    do
    {
        Now = new OneS;
        cout << "Введите очередной элемент: ";
        cin >> Now->symvol;
        cout << "Вы ввели: " << Now->symvol << "\n";
        do
        {
            Curr = new TwoS;
            cout << "Введите символ нового элемента: ";
            cin >> Curr->One->symvol;
            cout << "Введите значение нового элемента: ";
            cin >> Curr->data;
            cout << "Для элемента \"" << Curr->One->symvol << "\" вы ввели значение: " << Curr->data << "\n";
            if(Card.begin == NULL && Card.end == NULL)
                Card.begin = Curr;
            else
                Card.end->next = Curr;
            Card.end = Curr;
            Card.end->next = NULL;
        } while(Curr->data >= 0);
        if(Card.first == NULL && Card.last == NULL)
            Card.first = Now;
        else
            Card.last->next = Now;
        Card.last = Now;
        Card.last->next = NULL;
    } while(Now->symvol != 'E');
    return 0;
}
 
Текущее время: 06:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru