Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Micki
227 / 3 / 0
Регистрация: 01.04.2010
Сообщений: 145
#1

Первое вхождение 2-го массива в 1-ый - C++

10.10.2012, 18:35. Просмотров 473. Ответов 2
Метки нет (Все метки)

Приветствую...
Помогите с решение:
нужно найти первое вхождеине второго массива в первый, т.е.
дан массив А: (1 3 5 7 3 5 20 9)
и массив В: ( 4 2 5)
в итоге программа должна вывести в ответе "i=2"
если вхождений нет(if (i==n)), должна вывести "вхождений нет".
По сути я понимаю, что нужно брать первый элемент из 2-го массива и сравнивать его со всеми элементами из первого...и тд., если, к примеру, мы нашли элементы равные(a[i]=b[j]), то выводим "i"...но как это корректно реализовать я не знаю
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.10.2012, 18:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Первое вхождение 2-го массива в 1-ый (C++):

первое вхождение строки - C++
Попытался реализовать первое вхождение строки. Вроде это чудо почти работает, но валится например на тесте text = aaaaaf; pattern = aaaf...

Первое вхождение символа в строку. С++ - C++
Для данного рядка оставить только первые вхождения каждого символа в ряд, и вывести результаты на экран. Заранее спасибо за помощь ))

Заменить в строке s1 первое вхождение s2 на строку s3 - C++
Начал тренироваться в использовании базовых функций работы со строками, и тут же пришло непонимание. Нужно заменить в строке s1 подстроку...

Найти первое вхождение символов в строку - C++
В массиве строк , введенных пользователем , найти первые вхождения символов ' s ' и 'S' . Использовать функции strchr () tolower ( ) . ...

Удалить из строки первое вхождение буквосочетание 'not' - C++
Заданная строка S. Превратить S следующим образом: 1) Удалить из S первое вхождение буквосочетание 'not' ; 2) После первого...

Найти первое вхождение слова в текст - C++
Здравствуйте, помогите пожалуйста написать 2 программы, связанные со строками: 1)Даны две строки, которые назовём текст и слово, а...

2
Петррр
6122 / 3419 / 338
Регистрация: 28.10.2010
Сообщений: 5,926
10.10.2012, 18:43 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <algorithm>
 
int main()
{
    int a[] = { 1, 3, 5, 7, 3, 5, 20, 9 };
    int b[] = { 4, 2, 5 };
    int *found = std::end(a);
    for(int *begin = std::begin(b); begin != std::end(b); ++begin)
        if ((found = std::find(std::begin(a), std::end(a), *begin)) != std::end(a))
            break;
    if (found != std::end(a))
        std::cout << std::distance(std::begin(a), found) << std::endl;
    else
        std::cout << "Not found" << std::endl;
}
1
Micki
227 / 3 / 0
Регистрация: 01.04.2010
Сообщений: 145
10.10.2012, 18:47  [ТС] #3
Цитата Сообщение от Петррр Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <algorithm>
 
int main()
{
    int a[] = { 1, 3, 5, 7, 3, 5, 20, 9 };
    int b[] = { 4, 2, 5 };
    int *found = std::end(a);
    for(int *begin = std::begin(b); begin != std::end(b); ++begin)
        if ((found = std::find(std::begin(a), std::end(a), *begin)) != std::end(a))
            break;
    if (found != std::end(a))
        std::cout << std::distance(std::begin(a), found) << std::endl;
    else
        std::cout << "Not found" << std::endl;
}
спасибо, а можно тоже самое для произвольных массивов и на более тривиальном языке, ибо я ничего не понял (т.к. с языком начал знакомство менее месяца назад)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2012, 18:47
Привет! Вот еще темы с ответами:

Найти первое вхождение символа в строке - C++
Задана числовая строка с разделительным знаком (&amp;) где то посередине. Мне надо получить числа в строке до этого знака, путём нахождения его...

В массиве строк найдите первое вхождение символов s и S - C++
Использовать функции strchr ( ) , tolower ( ) . В массиве строк , введенных пользователем , найти первые вхождения символов ' s ' и 'S'...

Найти в тексте первое вхождение заданного слова (С++) - C++
Добрый день! Искал на форуме свою задачу оченьдолго так и не нашел. Есть похожие. Извиняюсь сразу если была такая уже. Нужен код программы...

Найти первое вхождение подстроки и передать указатель - C++
Есть cимвoльная cтрока и подcтpока. Нужно найти пepвоe вхождение подстроки в строку и передать указатель на первый симвoл данного...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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