Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137

Определить позицию, с которой подстрока входит в строку

23.10.2016, 19:00. Показов 6590. Ответов 64
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
не работает программа, выдает ошибки помогите плз
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
//  Лабораторная работа №3
//  Массивы
//  
 
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int f(char *s, char *c, int n)
{
    int i, j;       // Счетчики для циклов
    int lenC, lenS; // Длины строк
        
    //Находим размеры строки исходника и искомого
    for (lenC = 0; c[lenC]; lenC++);
    for (lenS = 0; s[lenS]; lenS++);
 
    for (i = 0; i <= lenS - lenC; i++) // Пока есть возможность поиска
    {
        for (j = 0; s[i + j] == c[j]; j++); // Проверяем совпадение посимвольно
        // Если посимвольно совпадает по длине искомого
        // Вернем из функции номер ячейки, откуда начинается совпадение
        if (j - lenC == 1 && i == lenS - lenC && !(n - 1)) return i;
        if (j == lenC)
        if (n - 1) n--; 
        else return i;
        }
    //Иначе вернем -1 как результат отсутствия подстроки
    return -1;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "rus");//Русификация консоли
    char cont('1');
    while (cont - '0')
    {
        char s[255];//Объявление строки
        char c[255];//Объявление подстроки
        cout << "Введите строку "<<endl;
        cin.getline(s, 255);
        cout << "Введите подстроку "<<endl;
        cin.getline(c, 255);
        int i, n = 0, l = 0;//Объявление переменных
        for (i = 1; n != -1; i++)
        {
            n = f(s, c, i);
            if (n >= 0)
            {
                n += 1;
                cout << "Позиция, с которой подстрока входит в строку = " << n << endl;
                l++;
            }
        }
        if (l==0)
            cout << "Подстрока не входит в строку." << endl;
        cout << "Хотите продолжить работу программы? (Да - любой символ, нет - 0)" << endl;
        cin >> cont;
        cin.ignore(255, '\n');
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.10.2016, 19:00
Ответы с готовыми решениями:

Определить, сколько раз данная подстрока входит в строку
Вводятся подстрока и строка. Определить, сколько раз данная подстрока входит в строку. Наложение строк не учитывать, т.е. в строку aaaa...

Определить, сколько раз в строку входит заданная подстрока
Задача дана строка. определить сколько раз входит в нее группа abc с++ Нужно писать на с++ // ConsoleApplication3.cpp : Этот файл...

Дана строка. Определить, сколько раз входит в нее подстрока "abc"
написать нужно 2 программы массивы и функции strink.

64
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
25.10.2016, 18:53
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Sacredlife Посмотреть сообщение
можно тебя в скайп??
Нет, все здесь обсуждается.
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 18:54  [ТС]
вот скрин еще, тут что не так?
Миниатюры
Определить позицию, с которой подстрока входит в строку  
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 18:54  [ТС]
ок, давай тут, здесь что не так?
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
25.10.2016, 18:56
Убери первый инклуд, и сделай main() как в коде, который компилируется:
C++
1
int main(int argc, char* argv[])
1
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
25.10.2016, 18:59
Цитата Сообщение от Sacredlife Посмотреть сообщение
слушай можно тебя в скайп??
Слушай, а можно ты правила прочитаешь?
Особенно пункт 4.6.
Хотя, зная, какие сейчас студентики, сам напишу:
Цитата Сообщение от Правила форума
4.6. Обсуждение вопросов - только в теме на форуме. Приглашения к обсуждению еще где-либо (в том числе и с помощью системы личных сообщений) запрещены, за исключением коммерческих разделов.
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
25.10.2016, 19:00
Цитата Сообщение от Sacredlife Посмотреть сообщение
вот скрин еще
Sacredlife, на скриншотах уместно показывать только ошибки, выдаваемые компилятором. Исходный код программ, пожалуйста, переписывайте (копируйте) непосредственно в тело сообщения, не забывая оформлять его тэгами.
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:00  [ТС]
что значит main??
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
25.10.2016, 19:02
Цитата Сообщение от Sacredlife Посмотреть сообщение
что значит main??
44 пост смотри.
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
25.10.2016, 19:02
Цитата Сообщение от Sacredlife Посмотреть сообщение
что значит main??
http://en.cppreference.com/w/c... n_function
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:02  [ТС]
int main(int argc, char* argv[])

вот это? я правильно понял?
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
25.10.2016, 19:03
Цитата Сообщение от Sacredlife Посмотреть сообщение
что значит main??
Sacredlife, от англ. main - "главный". Главная функция программы.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
25.10.2016, 19:03
Цитата Сообщение от Sacredlife Посмотреть сообщение
я правильно понял?
Правильно.
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:04  [ТС]
да я знаю, что главный, я в этом предмете совсем не разбираюсь
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
25.10.2016, 19:05
Цитата Сообщение от gru74ik Посмотреть сообщение
Главная функция программы.
Да она не то чтобы главная, просто точка входа в программу.

Добавлено через 38 секунд
Хотя учитывая её особенности да, она главная.
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:09  [ТС]
блин, вот вставил.
Миниатюры
Определить позицию, с которой подстрока входит в строку  
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
25.10.2016, 19:11
Цитата Сообщение от Sacredlife Посмотреть сообщение
вот вставил.
Вот это где?
Цитата Сообщение от Sacredlife Посмотреть сообщение
int main(int argc, char* argv[])
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:12  [ТС]
да, сейчас. там пишет необъявлен идентификатор еще, с тем разобрался, что такое идентификатор?
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:14  [ТС]
вот , ошибка эта
Миниатюры
Определить позицию, с которой подстрока входит в строку  
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:17  [ТС]
мб я зря удалил инклуде?? сейчас читаю, вроде должна стоять

Добавлено через 57 секунд
тоже ошибку выдает, типо не удается открыть файл включение...
0
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 137
25.10.2016, 19:19  [ТС]
вот
Миниатюры
Определить позицию, с которой подстрока входит в строку  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.10.2016, 19:19

Определить, входит ли в данную строку пробел
Определить, входит ли в данную строку пробел, и на каких позициях он расположен. P.S. Если это возможно, программа должна быть...

Определить, сколько раз входит в строку группа букв abc
Дана строка. Определить, сколько раз входит в нее группа букв abc.

Определить максимальный по модулю элемент элемент массива и позицию в которой он расположен
Помогите пожалуйста решить задачку по с++; Задан одномерный массив В , состоящий из n вещественных элементов. Определить максимальный...

Определить позицию первого вхождения в заданную строку какого-либо символа
Помогите составить процедуру, позволяющую определить позицию первого вхождения в заданную строку какого-либо символа из второй заданной...

Определить позицию первого вхождения в заданную строку какого-либо символа из второй заданной строки
б) Даны две строки произвольного текста. Составить процедуру, позволяющую определить позицию первого вхождения в заданную строку...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru