Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 33

Проверить правильно ли расставлены скобки в арифметическом выражении

24.12.2014, 10:30. Показов 2579. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Строка содержит арифметическое выражение, в котором используются круглые скобки, в том числе вложенные. Проверить, правильно ли в нем расставлены скобки.

а) Ответом должны служить слова ДА или НЕТ

б) В случае неправильности расстановки скобок:

1) если имеются лишние правые (закрывающие) скобки, то выдать сообщение с указанием позиции первой такой скобки

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
#include "stdafx.h"
#include <iostream>
 
int CheckS(unsigned char* s, unsigned int len ) 
{
   int k = 0;
   for(int i=0; i<len; i++)
   {
      switch (s[i])
      {
         case '(': k++; break;
         case ')': if(k) k--; else 
         {
            cout<<"НЕТ. Лишняя правая скобка в позиции "<<i+1<<endl;
            return i+1;
         }
         break;
      }
   } 
   if (k) 
cout<<"НЕТ. Лишние левые скобки. Их количество "<<k<<endl;
   else 
cout<<"ДА"<<endl.
 
   return k;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.12.2014, 10:30
Ответы с готовыми решениями:

Проверить, правильно ли в арифметическом выражении расставлены скобки.
Строка содержит арифметическое выражение, в котором используются круглые скобки, в том числе вложенные. Проверить, правильно ли в нем...

Проверить, правильно ли расставлены скобки в выражении
Задача: &quot;Строка содержит арифметическое выражение, в котором используются круглые скобки, в том числе и вложенные. Проверить, правильно ли...

Проверить, что в заданной последовательности символов правильно расставлены скобки
Проверить в заданной последовательности символов расставленые скобки (то есть справа от каждой открывающей скобки есть соответствующая...

4
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
24.12.2014, 11:31
Эмиль95, а что с вашим кодом не так?

я бы, правда, написал проверку явную:
C++ Скопировано
1
case ')': if(k>0) k--; else
но, по сути, ваш код тоже должен работать.

Добавлено через 1 минуту
Цитата Сообщение от Эмиль95 Посмотреть сообщение
cout<<"ДА"<<endl.
ну и тут вместо точки просится точка с запятой...
C++ Скопировано
1
cout<<"ДА"<<endl;
0
2687 / 2259 / 244
Регистрация: 03.07.2012
Сообщений: 8,227
Записей в блоге: 1
24.12.2014, 12:11
Не надо дублировать тему:Задача со скобками
0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 33
24.12.2014, 12:12  [ТС]
но все же не работает(
0
Модератор
Эксперт С++
 Аватар для zss
13756 / 10951 / 6487
Регистрация: 18.12.2011
Сообщений: 29,204
24.12.2014, 12:37
Цитата Сообщение от Эмиль95 Посмотреть сообщение
не работает
Это не информативно.
На каком примере и в какой строке (пройдитесь отладчиком по коду) не так?
https://www.cyberforum.ru/cpp-... 62479.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.12.2014, 12:37
Помогаю со студенческими работами здесь

Дан файл с текстом проверить правильно ли в нем расставлены круглые скобки
Дан файл с текстом проверить, правильно ли в нем расставлены круглые скобки и исправленный вариант закинуть в новый файл Заранее...

Дана строка, содержащая произвольный текст. Проверить, правильно ли в нем расставлены круглые скобки
Дана строка, содержащая произвольный текст. Проверить, правильно ли в нем расставлены круглые скобки (т.е. находится ли правее каждой...

Правильно ли расставлены скобки в алгебраическом выражении
Разработать программу, которая проверяет, правильно ли расставлены скобки в алгебраическом выражении (каждой открывающей скобке должна...

Проверить правильно ли расставлены скобки
Строка содержит арифметическое выражение, в котором используются круглые скобки, в том числе вложенные. Проверить , правильно ли в нем...

Проверить,правильно ли расставлены круглые скобки
Проверить, правильно ли в данной строке расставлены круглые скобки (т.е. находится ли справа от каждой открывающей скобки ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Списки и кортежи в Python: различия, особенности, применение
py-thonny 13.04.2025
Python славится своей гибкостью при работе с данными. В арсенале языка есть две основные последовательные структуры данных, которые программисты используют ежедневно — списки и кортежи. Эти структуры. . .
Middleware в ASP.NET Core
UnmanagedCoder 13.04.2025
В ASP. NET Core термин "middleware" занимает особое место. Что же это такое? Middleware представляет собой программные компоненты, которые формируют конвейер обработки HTTP-запросов в приложении. . . .
Таблицы лута в Unity с MinMaxCurve и AnimationCurve
GameUnited 12.04.2025
Создание сбалансированного лута в играх — задача не из простых. Разработчики постоянно ищут способы настройки систем выпадения предметов, которые будут одновременно справедливыми для игроков и. . .
std::expected в C++: Управление ошибками
bytestream 12.04.2025
Обработка ошибок всегда была важной и одновременно сложной задачей в программировании на C++. На протяжении долгого времени разработчики использовали различные подходы: возвращаемые коды ошибок,. . .
Nullable типы и операторы объединения null в C#
UnmanagedCoder 12.04.2025
Многие шутят, что null — это миллиардная ошибка в программировании. И в этой шутке только доля шутки. Тони Хоар, создатель null-ссылки, сам назвал её своей "ошибкой на миллиард долларов". Почему?. . .
Аутентификация и авторизация JWT в микросервисах с API Gateway
stackOverflow 12.04.2025
В традиционных монолитных приложениях безопасность часто реализуется как единый защитный периметр - пользователь проходит аутентификацию один раз, после чего получает доступ ко всем функциям системы. . . .
TypeScript: Интерфейсы vs Типы
run.dev 11.04.2025
Современная разработка на JavaScript сталкивается с множеством проблем при масштабировании проектов. Типизация кода стала хорошим инструментом, помогающим избежать ошибок во время выполнения,. . .
Управление топиками и разделами Kafka
Javaican 11.04.2025
Apache Kafka — распределенная платформа потоковой передачи данных, которая стала стандартом для построения высоконагруженных систем обмена сообщениями. В современной архитектуре микросервисов,. . .
Миграция монолита в Event-Driven микросервисную архитектуру на C#
stackOverflow 11.04.2025
Монолитная архитектура – классический подход к разработке программного обеспечения. Это приложение, построенное как единое целое, где все компоненты тесно связаны между собой. Большинство проектов. . .
Go в Kubernetes: Управление ресурсами
golander 11.04.2025
Разработчики Go-приложений в Kubernetes часто сталкиваются с неожиданными проблемами производительности и даже внезапными отказами контейнеров. Причина этого кроется в особенностях взаимодействия. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер