Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Snaill
0 / 0 / 0
Регистрация: 27.04.2017
Сообщений: 6
#1

Удалить из строки S все группы длиной только N подряд стоящих одинаковых символов - C++

03.05.2017, 22:43. Просмотров 136. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста. Если можно, то с комментариями.
Дана строка S и натуральное число N. Удалить из строки S все группы длиной только N подряд стоящих одинаковых символов.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2017, 22:43
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Удалить из строки S все группы длиной только N подряд стоящих одинаковых символов (C++):

Подсчет подряд стоящих одинаковых символов
Добрый день! Подскажите как правильно посчитать количество всех под ряд...

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

Дана строка символов. Удалить из данной строки все группы букв вида asdf
На выходе такая же строка, как и на входе. //Дана строка символов...

В целочисленном массиве вывести все группы идущих подряд одинаковых элементов
Задан целочисленный массив Х из 20 элементов. Вывести на экран все группы...

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

Количество пар рядом стоящих одинаковых символов строки
Задание на 7 лабораторную работу Написать программу, которая принимает от...

1
Геомеханик
785 / 592 / 937
Регистрация: 26.06.2015
Сообщений: 1,409
04.05.2017, 05:40 #2
Лучший ответ Сообщение было отмечено Snaill как решение

Решение

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
#include <iostream>
 
char* del_rep_n(char* s, int n){
    int   c;
    char* i, *t = s;
    for(char* p = s; *s; *s = *++p){
        i = p + 1;
        c = *p;
        while(*i && (*i == c))
            ++i;
        
        if((int)(i - p) == n)
            p = i - 1;
        else
            ++s;
    }
    return t;
}
 
int main(void){
    char s[] = "FFF (WWW) ###-end @@@";
    std::cout << del_rep_n(s, 3) << std::endl;
    std::cin.get();
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.05.2017, 05:40
Привет! Вот еще темы с решениями:

Найти и вывести все имеющиеся пары стоящих рядом одинаковых символов
Помогите решить пожалуйста: Среди данного массива символов, найти и вывести...

Удалить из каждой группы подряд идущих цифр все начальные незначащие нули
Всем доброго дня) я хз как делать эту задачу..помогите плиз..На Borland C for...

Вывести наибольшее число одинаковых подряд стоящих элементов
Ввести с клавиатуры массив целых чисел. Вывести наибольшее число одинаковых...

Удалить из всех слов массива все цифры и заменить группы символов “++” и “***” на символ ‘?’.
здраствуйте,программисты.помогите решить любую из приведённых задач,может кто...


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

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

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