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

Поиск в списке: выводить все совпадения, а не только первое - C++

Восстановить пароль Регистрация
 
xDefx
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 13
02.06.2016, 11:06     Поиск в списке: выводить все совпадения, а не только первое #1
поиск работает, но выводит только первый найденный элемент, а необходимо чтобы выводил все совпадения
C++
1
2
3
4
5
6
7
8
9
10
void poisk(TEST *ptr, string ch)
{
    while (ptr->q_text != ch && ptr->pright->pright)
        ptr = ptr->pright->pright;
    if (ptr->q_text == ch) {
        cout << "The right answer - "; cout << ptr->pright->c_answer << endl;
        cout << "The wrong answer - "; cout << ptr->pdown->c_answer << endl;
    }
    else cout << "No search results" << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.06.2016, 11:06     Поиск в списке: выводить все совпадения, а не только первое
Посмотрите здесь:

C++ Считывается только первое слово из строки
C++ функции рекурсия (Введить первое, третье, пятое и т.д. с вивединих чисел. Завершальний ноль выводить не над)
В списке Р заменить первое вхождение списка Р1 (если такое есть) на список Р2 C++
Нужно продублировать первое чётное число в односвязном списке C++
C++ Нужна программа, которая по регулярному выражению находит все совпадения в строке
При вводе строки выводить только цифры C++
Найти первое вхождение списка сотрудников в общем списке и циклически сдвинуть элементы согласно условию C++
C++ Функция: поиск совпадения в строке

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4302 / 3723 / 1255
Регистрация: 14.04.2014
Сообщений: 14,571
02.06.2016, 15:02     Поиск в списке: выводить все совпадения, а не только первое #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void poisk(TEST *ptr, string ch)
{
    int c = 0;
 
    do
    {
    if (ptr->q_text == ch)
    {
        ++c;
        cout << "The right answer - "; cout << ptr->pright->c_answer << endl;
        cout << "The wrong answer - "; cout << ptr->pdown->c_answer << endl;
    }
 
    ptr = ptr->pright->pright;
    }
    while (ptr->pright->pright);
 
  if (c == 0) cout << "No search results" << endl;
}
Yandex
Объявления
02.06.2016, 15:02     Поиск в списке: выводить все совпадения, а не только первое
Ответ Создать тему
Опции темы

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