Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
72 / 52 / 8
Регистрация: 13.11.2017
Сообщений: 383

Принять в качестве параметров две строки и вернуть копию первого параметра

10.07.2018, 13:26. Показов 2280. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не могу разобраться с заданием. Подскажите, пожалуйста, как можно его сделать.
Задача: На языке С++ написать программу, принимающую в качестве параметров две строки и возвращающую копию первого параметра, все вхождения второго параметра которой взяты в «()». Например, если, параметрами строки были: ertabcsdftyuabczevbh и abc, то надо вернуть ert(abc)sdftyu(abc)zevbh.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.07.2018, 13:26
Ответы с готовыми решениями:

Искать файл, который задан в качестве первого параметра, в каталогах, заданных в качестве остальных параметров
Нужен командный файл, который будет искать файл, который задан в качестве первого параметра в каталогах, заданных в качестве остальных...

Пакетный файл, который будет осуществлять поиск файла, заданного в качестве первого параметра в каталогах, заданных в качестве остальных параметров
Написать пакетный файл, который будет осуществлять поиск файла, заданного в качестве первого параметра в каталогах, заданных в качестве...

Упорядочить матрицу по элементам первого столбца и в качестве вектора принять главную диагональ
задали написать программу нахождения вектора с помощью матрицы и оформить это через модуль. запнулся на одном куске. Строки матрицы...

4
Заблокирован
10.07.2018, 13:42
откель принимающую, куды возвращающую ?
1
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
10.07.2018, 14:02
eganator, На Си это можно сделать как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
char *prog(char *p1, char *p2)
{   char *p, *q;
   char *out = (char *) malloc(strlen(p1)*3);
   int k = 0;
   for(q = p = p1;  (p =ststr(p, p2))!=NULL; q = (p +=strlen(p2))) {
     int n = p - q;
     for(int i=0; i < n; i++)
       out[k++] = *(q+i);
     sprintf(out+k, "(%s)", p2);
     k += 2 + strlen(p2);
   }
   while(*q) out[k++] = *(q++);
   out[k= = '\';
   return out;
}
(Не проверял, писал на коленке, ошибки возможны)
Так как С++ включает в себя Си, заданию решение должно удовлетворять.
Но возможно, используя специфические плюсовые средства, это можно сделать и изячнее
Главное, чтобы вы поняли алгоритм.
Находишь очередное вхождение p2 в p1. Все, что до него, переписываем в out. Дописываем туда "(p2)". И продолжаем поиск с конца вхождения.

Добавлено через 4 минуты
Скорее всего, тут надо использовать тип string. Но поскольку у меня в голове некоторая каша из string, AnsiString, QString и их родственников, я нерискнул предложить соответствующее решение.
1
72 / 52 / 8
Регистрация: 13.11.2017
Сообщений: 383
10.07.2018, 14:10  [ТС]
Байт, Спасибо! Буду разбираться, попробую сделать через string. Главное, как вы сказали, понять алгоритм)

Добавлено через 1 минуту
Biger18, Вот тоже особо понял задание. Буду думать, как можно улучшить
0
Заблокирован
10.07.2018, 14:28
C++
1
2
3
4
5
6
7
8
9
10
11
    string s1="ertabcsdftyuabczevbh";
    string s2="abc";
    string s="";
    int i;
    while((i=s1.find(s2))>=0)
    {
        s+=s1.substr(0,i)+"("+s2+")";
        s1=s1.substr(i+s2.length());
    }
    s+=s1;
    cout<<s<<endl;
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.07.2018, 14:28
Помогаю со студенческими работами здесь

Как указать каталог в качестве первого параметра командного файла?
Прошу помочь с кодом bat-ка, задание таково: Разработать и выполнить командный файл (КФ), выполняющий проверку наличие файла Numb.txt в...

Процедура, принимающая в качестве параметров - две таблицы
Здравствуйте, прошел курс по T-SQL. Стоит задача создать хранимую процедуру, которая принимает, в качестве параметров, две совместимые по...

Написать метод, который бы принимал в качестве первого параметра массив произвольного типа
Написать метод, который бы принимал в качестве первого параметра массив произвольного типа и произвольного размера, и выводил на экран...

Передача строки в качестве параметра функции
Здравствуйте , помогите ,пожалуйста , с некоторыми вопросами по VBA. Есть 2 строки , нужно проверить некие условия и вернуть адрес...

Передать путь в качестве параметра командной строки
Что нужно исправить чтобы при запуске программы через командную строку с параметром, параметр считался бы путем к файлу? Реализация на С. ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru