Форум программистов, компьютерный форум 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, где... подробнее

Показать сообщение отдельно
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 542
04.11.2012, 13:02     Проверить правильнсть расстановки круглых скобкок
вынесите проверку if ( ( f_o==1 && !f_z) || ( f_o!=1 && f_z==1 ) )
из тела цикла и упростите ее. Для удобства переведите целочисленные переменные флагов в булевые переменные, вы сами себя ими запутали.

Добавлено через 8 минут
Тоже работающий вариант, сделанный по типу вашего
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
void main ()
{
    char txt[256];
    printf("Введите произвольный текст имеющий скобки\n");
    gets(txt);
 
    int f_o=0; //Флажок, открывающей скобки
    int f_z=0; //Флажок, закрывающей скобки
    int f_e=0; //Флажок ошибки
    for (int i=0; i<strlen(txt); i++) // Запускаю цикл проверки
    {
        if (txt[i]=='(')
            f_o=1;
 
        if (txt[i]==')')
            f_z=1;
    }
 
    if ( f_o == 0 || f_z == 0 )
        f_e = 1;
 
    if (f_e == 1)
        printf("Ошибка");
    else
        printf("Верно");
 
    getch ();
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru