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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вложенные циклы http://www.cyberforum.ru/cpp-beginners/thread236436.html
Найти все натуральные числа в диапазоне между m и n (m<n), в записи которых нет двух одинаковых цифр. Подсчитать количество таких чисел. Не могу понять как реализовать этот код.Помогите...
C++ Грамотная литература Вот возник вопрос какую книгу кипить скачать по С ++ я полный чайник Желательно чтоб издание было свежим заранее благодарен http://www.cyberforum.ru/cpp-beginners/thread236427.html
C++ Циклы на Borland C++ 3.1
подскажите как мне написать цикл я что-то пробую у меня то до бесконечности выходит то вообще не выполняет другие действия. Надо чтобы было возможно вводить цифры с клавиатуры для подсчета примера и...
C++ Адресация
Подскажите, плиз, что такое относительная и абсолютная адресации?
C++ Задачка от Страуструпа для новичков http://www.cyberforum.ru/cpp-beginners/thread236371.html
Вот задачка от Страуструпа для новичков Напишите функцию cat(), которая принимает в качестве аргументов две C-строки и возвращает конкатенированную C-строку. Используйте оператор new для выделения...
C++ Даны натуральное число n, действительные числа a1 an вычислить a1, a1+a2, a1+a2+...+an Заранее напишу, что искал на форуме, ничего похожего нет. Даны натуральное число n, действительные числа a1, ... , an вычислить a1, a1+a2, ... , a1+a2+...+an; подробнее

Показать сообщение отдельно
Dawka1305
Сообщений: n/a

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

31.01.2011, 18:43. Просмотров 864. Ответов 1
Метки (Все метки)

Задание:
Дан текст. Исключить из него символы, расположенные между всеми парами скобок (, ). Сами скобки тоже должны быть исключены. Внутри каждой пары скобок могут находиться другие.

помогите разобраться где ошибка. например в случае
(аб(вгд))) программа удалит все, хотя должна только -(аб(вгд)), а последнюю скобку должна оставить

вот код:

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
#include <iostream>
#include <conio.h>
using namespace std;
 
 
void main(void)
{
char text[81],*t;
int i,dlina,temp;
int otkrskobka,zakrskobka;
 
cout<<"vvedite text\n";
gets(text); //ввод текста
t=(char*)malloc(dlina=(strlen(text) )*sizeof(char));
strcpy(t,text);
 
for(zakrskobka=otkrskobka=temp=0 ,i=1;i<dlina;i++)
{
if(t[i]=='(')
otkrskobka=i;
if(t[i]==')') //поиск скобок
zakrskobka=i;
if(zakrskobka-otkrskobka>0 )
{
for(i=otkrskobka;i>=0;i--)
if(t[i]=='(')
otkrskobka=i;
for(i=zakrskobka;i<dlina;i++)
{
if(t[i]=='(')
i=dlina;
if(t[i]==')')
zakrskobka=i;
}
temp=dlina-(zakrskobka-otkrskobka-1);
for(zakrskobka,otkrskobka;zakrskobk a<dlina;zakrskobka++,otkrskobka++)
t[otkrskobka]=t[zakrskobka+1];
otkrskobka=zakrskobka=i=0;
dlina=temp;
}
}
for(i=0;i<dlina-1;i++)
cout<<t[i]; //вывод обработанного текста
cout<<"\n";
system("pause");
free(t);
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru