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

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

Войти
Регистрация
Восстановить пароль
 
Nastya555
0 / 0 / 1
Регистрация: 18.09.2011
Сообщений: 31
#1

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

27.02.2013, 21:02. Просмотров 546. Ответов 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
#include <iostream>
#include <clocale>
#include <string.h>
#include <stdio.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    char s[100],*razd="()",*p;
     int kol=0,n=0,i=0;
    bool m=true;
 
     cout<<"Введите строку: ";
    gets(s);
    p=strtok(s,razd);
while (p)
{
if (s[i]=='(') m=true;
if (s[i]==')') m=false;
if (m==true)
{
    i++;
    kol=strlen(p);
        p=strtok(NULL,razd);
            cout <<"\nЧисло символов в "<<i<<"-ых скобках: " << kol;
                n=n+kol;
}
}
    cout <<"\nЧисло символов всего, не считая самих скобок: " << n;
    return 0;
}
Нужно, чтобы при подсчете символов в скобках, считалось то, что действительно в скобках, а не всё, что просто ими разделено.
Пример:
Строка: (савыпвап)апвапв(апрапр)
Число символов в скобках:14
Всего символов:20.

Знаю, что неправильно сделала, я суть понимаю, но программно написать не получается.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 21:02     Строки: определить число символов, заключенных в скобки
Посмотрите здесь:
C++ Поиск и вывод слов, заключенных в скобки
C++ Выделить все вхождения подстрок, заключенных в скобки
Определить число символов в самом длинном слове строки C++
Определить число символов в самом длинном слове строки C++
C++ Определить количество символов фрагмента, заключенного в круглые скобки.
Удалить из заданной строки все группы символов, расположенные между скобками, включая сами скобки C++
Функция удаления символов заключенных между двумя заданными символами C++
Определить количество последовательности натуральных чисел кратных числу М и заключенных в промежутке от L до N C++
C++ Строки. Определить местоположение символа первой строки, который первым совпал с одним из символов второй
C++ Определить местоположение символа первой строки, который первым не совпал с одним из символов второй строки
Определить количество элементов последовательности натуральных чисел, кратных числу м и заключенных В промежутке от l до n C++
Строка: Определить местоположение символа первой строки,который первым совпал с одним из символов второй строки. C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
olya7
477 / 294 / 91
Регистрация: 18.02.2013
Сообщений: 684
27.02.2013, 22:12     Строки: определить число символов, заключенных в скобки #2
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
#include <iostream>
#include <clocale>
#include <string.h>
#include <stdio.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
        int nach=-1,kon=-1;
    char s[100],*razd="()";
     int kol=0,n=0,i=0,p,sum=0;
    bool m=true;
 
     cout<<"Ââåäèòå ñòðîêó: ";
    gets(s);
    p=strlen(s);
while (s[i]!='\0')
 
{
     nach=-1;kon=-1;
if (s[i]=='(') 
{
    nach=i+1;
    for (int j=i+1;j<p;j++)
        if(s[j]==')')
        {
            kon=j;
            break;
        }
        if(nach<0) 
        {
            cout << " net '('"<<endl;
            return 0;
        }
        if (kon<0) 
            {
            cout << " net ')'"<<endl;
            return 0;
            }
    sum+=kon-nach;
 
}
 
 
i++;
}
 
cout<< sum<<endl;
    return 0;
}
Ответ Создать тему
Опции темы

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