С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 22
1

Изменить вид многократно вложенных скобок

18.10.2019, 18:47. Показов 1590. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Текст (например, арифметическое выражение) содержит многократно вложенные круглые скобки. Исправить его, оставив скобки первого уровня круглыми, второго – заменить на квадратные, третьего – на фигурные, четвертого – на круглые и т.д. Убедиться в корректности использования скобок. Пример. ln(sin((a+b)c–d)) заменить выражением ln(sin[{a+b}c–d]).
Вот что у меня получилось.
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
58
#include <iostream>
 
int main() 
{
    using namespace std;
    
    char text[100];
    cin.getline(text, 100);
    
    int open=0,x=0,i;
 
    bool correct = true;
    
    for(int i=0; text[i]!='\0'; i++)
    {
        if (text[i]=='(') open++;
        if (text[i]==')') x++;
        if (open < x)
        {
            correct = false;
            break;
        } 
    }
    
    if (open != x) correct = false;
    
    if (!correct) 
    {
        cout << "error";
        return -1;
    }
    
    open=0;
    
    for(int i=0; text[i]!='\0'; i++)
    {
        if (text[i] = '(')
        {
            open++;
            //if (k == 0) tecloset[i] = '(';
            if (open == 2) text[i] = '[';
            if (open > 2) text[i] = '{';
        }
        if (text[i] = ')')
        {
            open--;
            //if (k == 0) text[i] = ')';
            if (open == 2) text[i] = ']';
            if (open > 2) text[i] = '}';
        }
        
    //   )awsedasd(
    }   
    
    cout << text;
    
    return 0;
}
Но он почему та просто заменяет все символы на скобки .
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2019, 18:47
Ответы с готовыми решениями:

Шаблон для ListView. Изменить внешний вид ColumHeader. Изменить внешний вид ListViewItem'ов. Подробности, код, скриншоты внутри...
Здравствуйте. Есть ListView, я к нему делаю шаблон. И появилось несколько вопросов. 1) Как в...

Сколько может быть вложенных скобок в if()
Сколько может быть вложенных скобок в if () У меня вот такая вот шляпа : if ((doparr == 42)...

Исключить все символы между круглыми скобками, включая сами скобки. Рассмотреть случай вложенных скобок
исключить все символы между круглыми скобками, включая сами скобки. Рассмотреть случай вложенных...

Как можно изменить свойства вложенных обектов?
как можно изменить свойства вложенных обектов? &lt;div onmouseover='this.style.color='red''&gt; ...

2
Модератор
Эксперт С++
13721 / 10918 / 6478
Регистрация: 18.12.2011
Сообщений: 29,147
18.10.2019, 18:55 2
Лучший ответ Сообщение было отмечено Shiki007 как решение

Решение

Цитата Сообщение от Shiki007 Посмотреть сообщение
if (text[i] = '(')
Цитата Сообщение от Shiki007 Посмотреть сообщение
if (text[i] = ')')
надо два знака равно
==
1
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 22
18.10.2019, 19:42  [ТС] 3
Добавлено через 2 минуты
zss,
Спасибо большое за помощь, очень выручили.
И как я не заметил такую ошибку.
0
18.10.2019, 19:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2019, 19:42
Помогаю со студенческими работами здесь

Изменить вид кнопок
Никак не могу изменить вид кнопок... В редакторе ресурсов кнопка &quot;ОК&quot; как в WinXP, а после...

Изменить вид формы
Доброго времени суток ! Как изменить вид формы в програме ? Например стандартная форма выглядит...

Изменить вид ссылок
Добрый день! Никак не найду, как в Джумла 2.5 изменить ссылки вида...

Изменить вид файла
На рабочем столе и в проводнике фото и видио файлы стали не видны. То есть, видны но как файл! Как...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru