Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
medik07
9 / 9 / 0
Регистрация: 09.10.2009
Сообщений: 46
#1

Заменить пары символов на одну - C++

16.11.2010, 15:11. Просмотров 539. Ответов 3
Метки нет (Все метки)

в символьном массиве все пары символов 'PH' заменить на 'Z'

C++
1
2
3
4
5
6
7
8
for (int i=0; i<strlen(m); i++)
    {
        if (m[i]=='p' && m[i+1]=='h')
            {
                m[i]='Z';
                cout<<m[i];
            }
        }
посмотрел так, но как т по-другому работает!!!
Что посоветуйте?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2010, 15:11     Заменить пары символов на одну
Посмотрите здесь:

Заменить в строке одну последовательность символов на другую - C++
Нужно ввести строку, создать вторую из символов первой, заменив каждую последовательность символов &quot;xyz&quot; заменить на &quot;zamenena&quot; и вывести...

Заменить все пары цифр «89» на буквы «AB» - C++
Подскажите, как реализовать это задание в C++ : Заменить все пары цифр «89» на буквы «AB»

Определить порядковые номера первой пары одинаковых соседних символов - C++
Дано предложение. Определить порядковые номера первой пары одинаковых соседних символов. Если таких символов нет, то вывести...

Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару - C++
Даны действительные числа x1,....x15, y1,....y15, которые рассматриваются как координаты 15 точек на плоскости. Верно ли, что для каждой из...

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

Все пары инвертированных фрагментов (например, «123арг» и «гра321») заменить словом “фрагмент” - C++
Всем здравствуйте. помогите пожалуйста. Задан текст, состоящий из строк. Строк не менее 3. В строке не менее 5 слов. Словом считать...

Есть ли в символах строки соседние одинаковые пары символов Сколько таких пар в строке - C++
Дано натуральное число n и символы s1, s2,., sn. В символах s1, s2,., sn есть ли &quot;но&quot; и &quot;он&quot; соседние символы?

Заменить в файле одну строку на другую - C++
Реализовать в программе функцию замену в текстовом файле заданной строки на другую строку, также задаваемую с клавиатуры.

Заменить одну последовательность другой последовательностью - C++
Выполнить следующие модификации строки букв. Напечатать начальную строку. Напечатать букву, которая должна быть удалена из строки (она...

Заменить в строке две подряд буквы 'a' на одну - C++
Здравствуйте! К слову проблема такая, решил заняться программированием, понравилось! Занимаюсь недавно, дали задачку чтоб решить создать...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DAgot_
22 / 22 / 1
Регистрация: 03.01.2010
Сообщений: 68
16.11.2010, 15:35     Заменить пары символов на одну #2
Исходный массив:
|a|x|c|P|H|f|h|j|k|l|r|
Что на выходе:
|a|x|c|Z|H|f|h|j|k|l|r|
Почему так:
После того, как вы заменили P на Z, нужно сдвинуть все элементы массива, находящиеся справа от H на одну позицию влево.
P.S.
Вынесите "cout << m[i]" из-под "if'а", если вам нужно, чтобы распечатывался весь массив.
medik07
9 / 9 / 0
Регистрация: 09.10.2009
Сообщений: 46
16.11.2010, 16:23  [ТС]     Заменить пары символов на одну #3
а можно наглядно показать?

Добавлено через 23 минуты
все разобрался
C++
1
2
3
4
5
6
7
8
9
10
for (int i=0; i<strlen(m); i++)
        {
                if (m[i]=='p' && m[i+1]=='h')
                        {
                             i++;
                                m[i]='Z';
                   
                        }
                              cout<<m[i];
                }
DAgot_
22 / 22 / 1
Регистрация: 03.01.2010
Сообщений: 68
16.11.2010, 19:20     Заменить пары символов на одну #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
int main() {
 
    char m[10] = {"ofgphephw"};
    int x = 0;
    int n = strlen(m);
 
    for (int i = 0; i < n - x; i++){
        if (m[i] == 'p' && m[i+1] == 'h'){
            m[i] = 'Z';
            for (int j = i + 1; j < n; j++){
                m[j] = m[j+1];
            }
            x++;       
        }
        std::cout << m[i];
    }
 
    return 0;
}
Yandex
Объявления
16.11.2010, 19:20     Заменить пары символов на одну
Ответ Создать тему
Опции темы

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