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

Определить длину линейного списка состоящего из целых чисел - C++

Восстановить пароль Регистрация
 
pavel5243
0 / 0 / 0
Регистрация: 23.11.2015
Сообщений: 6
17.05.2016, 10:03     Определить длину линейного списка состоящего из целых чисел #1
как определить длину линейного списка состоящего из целых чисел?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2016, 10:03     Определить длину линейного списка состоящего из целых чисел
Посмотрите здесь:

Составьте программу, которая выводит индексы тех элементов массива (состоящего из В целых чисел), значение которых больше заданного числа А C++
C++ Написать программу, которая удаляет из линейного списка входной последовательности целых чисел узел
Определить сумму нечетных чисел числовой последовательности из n целых чисел, вводимых пользователем C++
Удалить из списка целых чисел все парные елементы, посчитав их количество C++
C++ В последовательности целых чисел определить количество чётных чисел кратных 7
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vort_
 Аватар для Vort_
186 / 186 / 52
Регистрация: 10.07.2012
Сообщений: 400
17.05.2016, 18:47     Определить длину линейного списка состоящего из целых чисел #2
пройтись по всем его элементам и посчитать их количество
pavel5243
0 / 0 / 0
Регистрация: 23.11.2015
Сообщений: 6
18.05.2016, 13:33  [ТС]     Определить длину линейного списка состоящего из целых чисел #3
можно пример?
no_attention
27 / 27 / 13
Регистрация: 18.05.2016
Сообщений: 128
18.05.2016, 14:02     Определить длину линейного списка состоящего из целых чисел #4
Цитата Сообщение от pavel5243 Посмотреть сообщение
можно пример?
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
class CList
{
public:
    int value;
    CList *next;
 
    CList(int val = 0): value(val)
    {
        next = NULL;
    }
    void addItem(int val)
    {
        if (next == NULL) next = new CList(val);
        else
        {
            next->addItem(val);
        }
    }
    void printList()
    {
        cout << value;
        if (next != NULL) next->printList();
    }
};
 
int main()
{
    CList *lst = new CList(1);
    lst->addItem(2);
    lst->addItem(3);
    lst->addItem(4);
    lst->addItem(5);
    lst->addItem(6);
    int elem_amount = 0;
    for (CList *plst = lst; plst != NULL; plst = plst->next) ++elem_amount;
    cout << elem_amount << endl;
    return 0;
}
pavel5243
0 / 0 / 0
Регистрация: 23.11.2015
Сообщений: 6
18.05.2016, 22:04  [ТС]     Определить длину линейного списка состоящего из целых чисел #5
подскажите пожалуйста, где ошибка (и вообще можно-ли так)
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
#include <iostream>
 
using namespace std;
 
struct numbers{
    int info;
    numbers * next;
};
 
void addLast(int k,numbers ** head, numbers **tail)
{
    numbers *t=new numbers;
    t->info=k;
    t->next=NULL;
    if (*head){
        (*tail)->next = t;
    } else {
        *head = t;
    }
    *tail = t;
}
 
int main() {
    numbers *head = NULL;
    numbers *tail = NULL;
    int k;
    int elem_amount = 0;
    numbers *t = new numbers;
    for (int i=0;i<5;i++){
        cout << "Enter the number" << endl;
        cin >> k;
        addLast(k,&head,&tail);
    }
 
    for (numbers *pt = t; pt != NULL; pt = pt->next) ++elem_amount;
    cout << elem_amount << endl;
    return 0;
}
no_attention
27 / 27 / 13
Регистрация: 18.05.2016
Сообщений: 128
19.05.2016, 09:45     Определить длину линейного списка состоящего из целых чисел #6
Цитата Сообщение от pavel5243 Посмотреть сообщение
подскажите пожалуйста, где ошибка (и вообще можно-ли так)
Ты в этом коде в main создаёшь список t
C++
1
numbers *t = new numbers;
А потом печатаешь его. Но ты в него ничего не добавил. t, которое создаётся в addLast - локальная переменная, она никакого отношения к t из main не имеет.
Ещё я вот совсем не понимаю, что за head и tail: ты создаёшь указатели на numbers, делаешь их нулевыми, а потом адреса этих указателей (не адреса, на которые указатели указывают, а именно адреса этих пустых указателей) передаёшь в функцию (конструкция numbers ** head, numbers ** tail для меня тоже не очень понятна).
В общем, напиши мне, что ты тут пытался сделать, а то я как-то сходу не очень понимаю идею.
Yandex
Объявления
19.05.2016, 09:45     Определить длину линейного списка состоящего из целых чисел
Ответ Создать тему
Опции темы

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