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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Zigoga
1 / 1 / 0
Регистрация: 18.01.2016
Сообщений: 153
#1

Найти последнее вхождение указанного значения в список - C++

11.08.2016, 21:14. Просмотров 218. Ответов 9
Метки нет (Все метки)

помогите с заданием
нужен хоть приблизительный код
- LastIndexOf ( поиск последнего вхождения в список указанного в параметре значения. В результате работы вернуть индекс найденного элемента, а eсли ничего не найдено, вернуть минус 1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.08.2016, 21:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти последнее вхождение указанного значения в список (C++):

Найти последнее вхождение подстроки в строку - C++
Нужно нати последнее вхождение определенной подстроки в строку. Help!

Как лучше найти последнее вхождение символа в std::wstring? - C++
Как лучше найти последнее вхождение символа в std::wstring?

Из файла ввести слово и найти в нём последнее вхождение заданного символа, если он есть - C++
Из файла ввести слово и найти в нём последнее вхождение заданного символа, если он есть. Выдать соответствующее текстовое сообщение и...

Заменить в строке S последнее вхождение строки S1 на строку S2 - C++
2)Даны строки S, S1 и S2. Заменить в строке S последнее вхождение строки S1 на строку S2.

Заменить в строке последнее вхождение данной подстроки на другую подстроку - C++
Даны строки s,s1 и s2. Заменить в строке S последнее вхождение строки S1 на строку S2 через char

Функция удаляющая первое и последнее вхождение в строке заданного символа - C++
Функция удаляет первое и последнее вхождение в строке заданного символа.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
rikimaru2013
C++ Game Dev
2429 / 1123 / 240
Регистрация: 30.11.2013
Сообщений: 3,673
11.08.2016, 21:18 #2
C++
1
2
3
4
5
6
7
8
9
int LastOf( const int& value ) const
{
    for( int index = container.size() - 1; i >= 0; --i )
    {
        if( value == container[ index ] )
            return index;
    }
    return -1;
}
Zigoga
1 / 1 / 0
Регистрация: 18.01.2016
Сообщений: 153
11.08.2016, 21:25  [ТС] #3
rikimaru2013, container.size() это конец списка я так понимаю?
HelicopterK52
659 / 202 / 28
Регистрация: 27.07.2016
Сообщений: 475
Завершенные тесты: 1
11.08.2016, 21:27 #4
Цитата Сообщение от Zigoga Посмотреть сообщение
вхождения в список
В какой список? От этого многое зависит.
rikimaru2013
C++ Game Dev
2429 / 1123 / 240
Регистрация: 30.11.2013
Сообщений: 3,673
11.08.2016, 21:28 #5
Zigoga, моя ошибка не прочитал тему ))) Я и не мог подумать, что слова "индекс" и "список" будут ити в одном задании - подумайте почему
Zigoga
1 / 1 / 0
Регистрация: 18.01.2016
Сообщений: 153
11.08.2016, 21:30  [ТС] #6
HelicopterK52, однонаправленный список
HelicopterK52
659 / 202 / 28
Регистрация: 27.07.2016
Сообщений: 475
Завершенные тесты: 1
11.08.2016, 21:53 #7
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
//g++  4.9.3
 
#include <iostream>
#include <forward_list>
#include <limits>
 
int main()
{
    std::forward_list<int> lst{1, 5, 3, 2, 9, 6};
    int findValue = 2;
    constexpr size_t npos = std::numeric_limits<size_t>::max();
    size_t foundPosition = npos;
    {
        size_t index = 0;
        for(auto it = lst.begin(), itEnd = lst.end(); it != itEnd; ++it)
        {
            if(findValue == *it)
            {
                foundPosition = index;
            }
            ++index;
        }
    }
    if(foundPosition != npos)
    {
        std::cout << "value "" << findValue << "" found in " << foundPosition << " position" << std::endl;
    }
    else
    {
        std::cout << "value "" << findValue << "" not found" << std::endl;
    }    
}
http://rextester.com/ZOYIW74831
Zigoga
1 / 1 / 0
Регистрация: 18.01.2016
Сообщений: 153
11.08.2016, 22:05  [ТС] #8
HelicopterK52, что то не совсем понятно все
а именно эта строка
Код
for(auto it = lst.begin(), itEnd = lst.end(); it != itEnd; ++it)
rikimaru2013
C++ Game Dev
2429 / 1123 / 240
Регистрация: 30.11.2013
Сообщений: 3,673
11.08.2016, 22:16 #9
Zigoga, почему вы проигнорировали мой пост?
Zigoga
1 / 1 / 0
Регистрация: 18.01.2016
Сообщений: 153
11.08.2016, 22:23  [ТС] #10
rikimaru2013, простите, я вас понял но имеется введу не тот индекс что в массивах,
тема то о списках тем более у списках размер иметься
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.08.2016, 22:23
Привет! Вот еще темы с ответами:

Определить последнее вхождение символа “р” в строке и вывести строку, начиная с первого символа и до последнего “р” в строке - C++
Заданы 2 строки, состоящие из слов, разделенных пробелами. Определить последнее вхождение символа “р” в строке и вывести строку, начиная с...

Добавление элемента в список после указанного - C++
Добавление нового элемента в список после указанного элемента по значению информационного поля и разбивка списка на два по указанному...

Получить список модулей указанного процесса - C++
Доброго времени суток. Возникла проблема с получением списка модулей процесса. Пытаюсь получить так: BOOL ListProcessModules(DWORD...

Вывести список автомобилей, указанного пользователем цвета и граничной цены - C++
Необходимо написать программу, в которой пользователь вводит данные с клавиатуры в массив структур. Пользователь вводит несколько данных об...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.08.2016, 22:23
Ответ Создать тему
Опции темы

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