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

В заданной строке удалить заданную подстроку, сколько бы раз она не встречалась - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Метод многих поверхностей http://www.cyberforum.ru/cpp-beginners/thread660897.html
Подскажите, пожалуйста, где можно почитать о методе "многих поверхностей" (multi-surface method). С его помощью нужно будет построить сетку на области.
C++ Задача на сортировку массива методом вставки на С++ Помогите, пожалуйста, решить задачу. Отсортируйте по возрастанию методом вставки одномерный целочисленный массив, введенный с клавиатуры. Выведите на экран исходный и отсортированный массивы. (Сортировка вставками: пусть первые k элементов массива уже упорядочены по неубыванию. Берется (k+1)-й элемент и размещается среди первых k элементов так, чтобы упорядоченными оказались уже k+1 первых... http://www.cyberforum.ru/cpp-beginners/thread660889.html
Система счисления - выводится лишний ноль C++
Добрый день! Вопрос мой состоит в следующем: Много видел уже готовых программ по переводу чисел из одной системы в другую,но захотел сделать сова алгоритм. Я использую цикл do/while, считаю лучшим вариантом(если не так поправьте, пожалуйста) Вот что получилось: a - вводимое число; b - остаток от деления; cin >> a; a = a/2; b = a%2;
C++ что-то не то с функциями!
#include <iostream> #include <conio.h> #include <math.h> #include <fstream> #include <iomanip> using namespace std; double n=1; double m=0,x=0,z=0,s=0,a=0,b=0,h=0,q=0,w=0,e=0,zz=0,p=0; ifstream in; ofstream out;
C++ Программа для вычисления выражений http://www.cyberforum.ru/cpp-beginners/thread660845.html
A= min(sin x, min (y,x)) Max(x^y,y) (не использовать макрокоманд Max и Min)
C++ Подскажите с изучением С++ Я хотел бы изучить язык С++, подскажите пару книг или видеокурсов по С++. Заранее спасибо. подробнее

Показать сообщение отдельно
darca
2 / 2 / 0
Регистрация: 30.09.2012
Сообщений: 7
02.10.2012, 00:04  [ТС]     В заданной строке удалить заданную подстроку, сколько бы раз она не встречалась
Цитата Сообщение от David Sylva Посмотреть сообщение
Если можно пользоваться средствами STL, то можно вот так
Вот этот вариант работает, спасибо. Буду пробовать работать дальше с ним, а если таможня не пропустит, то возьму свой вариант, с нерабочей проверкой подстроки.

На данный момент код выглядит так. Запутался уже в нем сам, по идеи должен работать, может кто найдет ошибку?
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
#include <iostream>
#include <stdio.h>
#include <string.h>
#include "stdafx.h"
#include <conio.h>
#define max 255
 
using namespace std;
 
void main()
{
    setlocale(0,"Rus");
 
    int i,j,k,a;
    char a1[max], a2[max], b[max];
    k=0;
        
    cout<<"Введите строку: ";
    gets(a1);
    cout<<"Введите подстроку: ";
    gets(b);
    for (i=0; i<strlen(a1); i++)
    {
        if (a1[i]!=b[0])
        {
            a2[k]=a1[i];
            k++;
        }
        else
        {
            j=0;
            a=i-1;
            while ((j<=strlen(b))&&(a1[i]==b[j]))
            {
                if (a1[i]!=b[j])
                {
                    j=0;
                    while (j<=strlen(b))
                    {
                        i=a-10;//как бы не менял эту строку, результат не меняется
                        a2[k]=a1[i];//хотя должен записываться в массив символ начиная с a-10.
                        k++;
                        i++;
                    }
                    //break;
                }
                i++;
                j++;
            }
            i--;
        }
    }
    cout<<"\nОтвет:"<<endl;
    for (i=0; i<k; i++)
        cout<<a2[i];
    _getch();
}
 
Текущее время: 08:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru