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

Проверить правильнсть расстановки круглых скобкок - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Конструкторы и Деструкторы в С++. Не могу разобраться( http://www.cyberforum.ru/cpp-beginners/thread688136.html
Помогите пожалуйста разобраться с конструкторами и деструкторами в с++. Не пойму , как ними пользоваться . Вот , например у меня есть код : #include "stdafx.h" #include <stdio.h> #include <iostream> #include <string> #include <conio.h> using namespace std; class Sportman //оголошуємо клас { public: //відкритий доступ
C++ где размещается массив и как его правильно удалять? У меня вопрос: в примере ниже создается объект класса Map в динамической памяти. В какой памяти тогда располагается массив m? и как его удалять(если нужно)? Удаляется ли он, если удалять как в этом примере? #include <iostream> using namespace std; class Map{ public: long m; int p; } *map = new Map; http://www.cyberforum.ru/cpp-beginners/thread688124.html
C++ Проверка на попадение точки в указанную область
Составить программу, которая печатает true, если точка с координатами (x,y) принадлежит закрашенной области, и false в противном случае: #include <conio.h> #include <iostream.h> #include <math.h> void main() { int x, y,o; do{
C++ Даны два множества чисел. Используя дополнительное множество, переписать в первое – четные элементы, во второе - нечетные
Даны два множества чисел. Используя дополнительное множество, переписать в первое – четные элементы, во второе - нечетные Добавлено через 12 часов 12 минут ?????
C++ if или while? http://www.cyberforum.ru/cpp-beginners/thread688065.html
разбирая очередной урок по книге Шилдта решил попробовать заменить if на while, но почему-то во втором случае программа зацикливается! Кто может объяснить в чём причина? #include <iostream> #include <cstdlib> void reverse (char *s); void main() {
C++ STL List Вот в чем проблема, была дана задача, решить которую надо было с помощью Deque и List, Deque надобыло оформить через STL, а List написать ручками... С деком вопросов не возникло, а вот лист... Не могу сообразить, с чего начать то... Лист надо написать полностью с нуля. Вот задание (я не прошу его мне решать = ) ): Из числовой последовательности найти удалить все элементы, меньшие, чем A*X, где... подробнее

Показать сообщение отдельно
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
04.11.2012, 14:49     Проверить правильнсть расстановки круглых скобкок
Vlad708, исходный код парсера скобок на С++. посмотрите вы еще такого не видели
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 <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
    static char str[256] = "c+(+ i)s o(bjec)t-ori(ente)d pr((ogramm)ing la(ngu)age";
 
    printf("%s\n",str);
 
    char pchars[] = "()"; bool error = false;
    for (int t = 0; pchars[t] != '\0'; t++)
    {
        for (int i = 0; str[i] != '\0' && !error; i++)
        {
            int k = (t > 0) ? i-1 : i+1;
            while (((t > 0) ? (k >= 0) : 
                (str[k] != '\0')) && str[i] == pchars[t])
                if (strchr(pchars,str[(t > 0) ? k-- : k++])) break;
            if ( (str[(t > 0) ? k+1 : k-1] == pchars[t] || 
                ((t < 1) ? (str[k] == '\0') : 0)) && 
                k != ((t > 0) ? i-1 : i+1)) error = true;
            else if (str[(t > 0) ? k+1 : k-1] == 
                (t > 0) ? '(' : ')') i = ((t > 0) ? i : k-1); 
        }
    }
 
    printf("error = %s\n",!error ? "false" : "true");
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/c934bf...3e6747fcbc19fb
Миниатюры
Проверить правильнсть расстановки круглых скобкок  
 
Текущее время: 19:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru