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

Связные списки. Определить количество узлов между двумя выбранными указателями - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Remove_if для std::list http://www.cyberforum.ru/cpp-beginners/thread1178352.html
Здравствуйте! Помогите мне разобраться,пожалуйста.Перечитал кучу всего,но так и не понял ,что можно писать в аргументе метода remove_if. #include<iostream> #include<list> #include<algorithm> using namespace std; void printlist(list<int> a) { copy(a.begin(),a.end(),ostream_iterator<int>(cout," ")); }
C++ Как считать n-ое слово в строке Как найти любое (n-ное) слово в строке? Слова(группа слов) разделяются запятыми http://www.cyberforum.ru/cpp-beginners/thread1178336.html
Перенос из directx8 в directx9, ошибка в SetVertexShader C++
Доброе время суток. Есть кусок кода написанного для directx8 #include <d3dx8.h> #include <mmsystem.h> #include <C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\WinNT.h> #include <d3dx8mesh.h> #include <Windows.h> #include "C:\Program Files (x86)\Microsoft DirectX SDK (August 2009)\Include\dinput.h"
C++ Переставить элементы в этом массиве
Ввести массив чисел с задаваемым количеством элементов и некоторое число. Без использования другого массива переставить элементы в этом массиве так, чтобы в начале массива оказались элементы не меньше некоторого числа, а в конце массива - элементы меньше этого числа, с сохранением порядка их взаимного расположения в исходном массиве. Вывести преобразованный массив. Пример вводимых данных: 8...
C++ Описать структуру "Сотрудник" http://www.cyberforum.ru/cpp-beginners/thread1178308.html
Описать следующую структуру Сотрудник Ф.И.О Дата поступления с вариантной частью записи: Студент Сотрудник Другое Средний балл Личный номер
C++ Графы. Реализовать удаление указанной вершины из графа G, удаление ребра соединяющего две заданные вершины Доброго вечера) Имеется программа с графом и реализацией всего двух функций: AddVertex (v1) – добавление вершины к графу G, в случае существования в составе G указанной вершины должно выдаваться соответствующее уведомление; AddEdge (v1,v2) – соединение двух вершин ребром, если указанные вершины на момент выполнения указанной операции уже смежны, то пользователь должен быть оповещён о... подробнее

Показать сообщение отдельно
luigration
2 / 2 / 0
Регистрация: 04.01.2013
Сообщений: 159

Связные списки. Определить количество узлов между двумя выбранными указателями - C++

17.05.2014, 00:40. Просмотров 182. Ответов 0
Метки (Все метки)

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
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
 
struct Node 
{ 
    int data; 
    Node* next; 
}; 
 
Node* first = first; 
 
void add(int d) 
{ 
    Node* newlink = new Node; 
    newlink->data = d; 
    newlink->next = first; 
    first = newlink; 
} 
 
void out() // вывод на экран
{ 
    Node* current = first; 
    while(current) 
    { 
        cout << current->data << endl; 
        current = current->next; 
    }  
}  
 
 
 
int main() 
{ 
    setlocale (LC_ALL, "Russian");
 
 
    int n;
    cout << "Введите количество элементов списка: " << endl;
    cin >> n;
 
    int *mas = new int[n];
 
    cout << "Введите элементы: " << endl;
    for(int i(0); i<n; i++)
    {
        cin >> mas[i];
        add(mas[i]);
        cout << " ";
    }
    system("cls");
 
    out();
    
    int x,t;
    cout << "Введите x: " << endl;
    cin >> x;
    cout << endl <<"Введите t" << endl;
    cin >> t;
 
 
    int p=0;
    Node*current  = first;
    
    while(current->data != x)
    {
        current = current->next;
    }
    while(current->data != t)
    {
        p++;
        current = current->next;
    }
    cout << p;
 
    system("Pause");
    return 0;
}
Задача состоит в том, чтобы определить количество узлов между двумя выбранными указателями. Компилятор указывает на второй цикл while, но я не понимаю, в чем ошибка. Подскажите/намекните.

Заранее спасибо.

Добавлено через 1 час 28 минут


Уже все. Работает.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru