Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
2 / 2 / 1
Регистрация: 19.08.2013
Сообщений: 84

Функция удаления символов заключенных между двумя заданными символами

19.05.2016, 00:32. Показов 1485. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составить программу обработки массива символов с помощью указателей, которая вводит текст из произвольного количества строк, а затем удаляет из каждой строки последовательность символов, заключенную между двумя очередными появлениями заданного символа и выводит полученный результат. Обработку строки текста оформить как функцию.
Конкретно еще не понимаю, как обработку символов сделать через функцию, помогите разобраться)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.05.2016, 00:32
Ответы с готовыми решениями:

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

Функция вычисления расстояния между двумя заданными пунктами
Вот задание: Представить автотрассу в виде двунаправленного списка, элементы которого содержат информацию о названии населенных пунктов и...

Поиск подстроки между заданными символами
Написал код на C++, он ищет символы между символами введёнными в Edit и ".txt" . Всё вроде бы работает,но он ищет символы всего лишь один...

7
18 / 17 / 22
Регистрация: 03.05.2016
Сообщений: 105
19.05.2016, 01:41
Всегда прошу написать:
что у нас есть
что мы должны ввести с клавиатуры
что должно произойти
что мы увидим на мониторе

скорее всего, если ответишь на эти вопросы - поймешь как сделать, нет - пиши сюда ответы
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
19.05.2016, 01:45
Цитата Сообщение от lexnom Посмотреть сообщение
массива символов с помощью указателей
- вот это правильно, по-нашему. А то придумали какие-то ссылки и стринги с методами... А кто напишет правильную обработку кириллицы в таком варианте - тому зачет автоматом
0
Модератор
Эксперт С++
 Аватар для zss
13778 / 10971 / 6491
Регистрация: 18.12.2011
Сообщений: 29,258
19.05.2016, 07:13
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
string remove(string s,char a)
{
    string t;
     bool NotNeedRemove=true;
    for(int i=0;i<s.size();i++)
    {
         if(NotNeedRemove)
             t+=s[i];
         if(NotNeedRemove && s[i]==a)
             NotNeedRemove=false;
        if( !NotNeedRemove && s[i]==a)
             NotNeedRemove=true;
    }
    return t;
}
Если действительно массив символов с указателями
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void remove(char* s,char* result,char a)
{
    int j;
     bool NotNeedRemove=true;
    for(int i=0;i<s[i]!=0;i++)
    {
         if(NotNeedRemove)
             result[j++]=s[i];
         if(NotNeedRemove && s[i]==a)
             NotNeedRemove=false;
        if( !NotNeedRemove && s[i]==a)
             NotNeedRemove=true;
    }
    result[j]=0;
}
0
2 / 2 / 1
Регистрация: 19.08.2013
Сообщений: 84
19.05.2016, 14:15  [ТС]
Как должна выглядеть программа при вводе:
abcdebnm

Как должна выглядеть на выходе:
Abbnm

Добавлено через 11 минут
Вводим строку в программу через cin.get, я думаю так удобней будет то есть:
Int main()
{Char x[128];
Cout<<"Введите текст"<<endl;
Cin.get(x,128,'0');
Cout<<x<<endl;
System("pause");
Return 0;
}
0
 Аватар для Геомеханик
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
19.05.2016, 19:31
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
#include <iostream>
 
char* str_rem(char* s){
    char* i, *t = s, *p = s;
    for(; *s; *s = *p){
        i = p + 1;
        while(*i && (*i != *p))
            ++i;
 
        if(*i && ((i - p) > 1)){
            *s++ = *p++;
            p    = i;
            continue;
        } else
            ++s;
        ++p;
    }
    return t;
}
 
int main(void){
    char s[] = "abcdebnm(X 2000-3000 X) Z_+___Z___Z|FIN|";
    std::cout << s << std::endl;
    std::cout << str_rem(s) << std::endl;
    return 0;
}
1
2 / 2 / 1
Регистрация: 19.08.2013
Сообщений: 84
19.05.2016, 20:33  [ТС]
А как сделать ввод строки вместо этого?
char s[] = "abcdebnm(X 2000-3000 X) Z_+___Z___Z|FIN|";
0
2 / 2 / 1
Регистрация: 19.08.2013
Сообщений: 84
23.05.2016, 10:20  [ТС]
Геомеханик, а как написать попроще?

Добавлено через 10 минут
Точнее описать функцию как выше люди сделали....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.05.2016, 10:20
Помогаю со студенческими работами здесь

Вычислить расстояние между двумя точками с заданными координатами
Немогу разобраться с такой задачей: Напишите функцию distance, что вычисляет расстояние между двумя точками с координатами (x1, y1) i (x2,...

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

Вычислить расстояние между двумя точками с заданными координатами
Вычислить расстояние между двумя точками с заданными координатами:A(a,d),B(u,m).

Расстояние между двумя заданными множествами точек на плоскости
Расстояние между двумя множествами точек - это расстояние между наиболее близко расположенными точками этих множеств. Найти расстояние...

Вычислить разницу в днях между двумя заданными датами
Парни надо написать программу, которая будет вычислять разницу в днях между двумя заданными датами.


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru