Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Арифметическое выражение - C++

14.06.2009, 14:52. Просмотров 964. Ответов 7
Метки нет (Все метки)

В записи арифметического выражения используются круглые, квадратные и фигурные скобки. Проверить, верно ли расставлены скобки, соответствие открытых и закрытых скобок. Входные данные - строка символов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2009, 14:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Арифметическое выражение (C++):

Арифметическое выражение - C++
составить структурную схему алгоритма и проект программы вычисления функции, один параметр ввести с клавиатуры, а другой задать как...

[C++] Вычислить арифметическое выражение - C++
Вычислить арифметическое выражение, заданное в формате строки. Строка может содержать целые числа, а также операции сложения и...

Составить арифметическое выражение - C++
Здравствуйте. Помогите пожалуйста с составлением арифметического выражения, не до конца понял куда там скобки ставить и float Два...

Вычислить арифметическое выражение - C++
Помогите пожалуйста :boredom: Нужно разработать консольное приложение для вычисления арифметического выражения. Использовать функции...

С++ Вывести арифметическое выражение - C++
Ввести строку произвольной длины, которую трактовать как арифметическое выражение, идентификаторы переменных, константы, знаки...

Вычислить арифметическое выражение - C++
Вычислить:

7
Evg
Эксперт CАвтор FAQ
18377 / 6424 / 441
Регистрация: 30.03.2009
Сообщений: 17,815
Записей в блоге: 28
14.06.2009, 15:37 #2
Баланс скобок

пост 2 - написано прицип работы
пост 10 - разжёвано на конкретном примере
пост 15 - готовая программа для скобок одного типа (правда хз, проверял её кто-то или нет)

От тебя требуется допилить до использования нескольких типов скобок: в момент доставания из стека надо проверять соотвествие левой и правой скобки
0
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
14.06.2009, 15:46 #3
по-моему лучше сделать через рекурсивную функцию:
запускаем цикл в котором считываются символы, если находим открывающуюся скобку(любую) то вызываем функцию
функция продолжает "забег" по строке(в качесве параметра передается тип открывающейся скобки) если видим закрывающаюся скобку и она не совпадает с той что в параметре возвращаем ошибку(если совпадающую, то функция завершает свою работу и мы снова попадаем в цикл)
если открывающуюся то снова вызываемм функцию, но уже с новым параметром
если строка заканчивается внутри функции то тоже возвращаем ошибку
0
Evg
Эксперт CАвтор FAQ
18377 / 6424 / 441
Регистрация: 30.03.2009
Сообщений: 17,815
Записей в блоге: 28
14.06.2009, 16:20 #4
Цитата Сообщение от CartmanRules Посмотреть сообщение
по-моему лучше сделать через рекурсивную функцию:
запускаем цикл в котором считываются символы, если находим открывающуюся скобку(любую) то вызываем функцию
функция продолжает "забег" по строке(в качесве параметра передается тип открывающейся скобки) если видим закрывающаюся скобку и она не совпадает с той что в параметре возвращаем ошибку(если совпадающую, то функция завершает свою работу и мы снова попадаем в цикл)
если открывающуюся то снова вызываемм функцию, но уже с новым параметром
если строка заканчивается внутри функции то тоже возвращаем ошибку
Можно и так. Вообще рекурсия во многих случаях предпочтительнее цикла именно по той причине, что не надо вести стек. Вот данный случай - хороший пример для этого. Правда вот так сходу сложно сказать, упростит это программу, или усложнит
0
Gravity
564 / 558 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
14.06.2009, 16:26 #5
Баланс скобок
Там еще была реализация без стека, может пригодится.
0
nikitos00
0 / 0 / 0
Регистрация: 05.04.2009
Сообщений: 22
14.06.2009, 17:59  [ТС] #6
Gravity, чёт я там ваще ничё не понял!
0
Gravity
564 / 558 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
14.06.2009, 18:16 #7
nikitos00, понимаю, бывает...
0
Evg
Эксперт CАвтор FAQ
18377 / 6424 / 441
Регистрация: 30.03.2009
Сообщений: 17,815
Записей в блоге: 28
14.06.2009, 18:22 #8
Если тебя не устраивает даже то, что тебе выложили готовую программу, то тебе скорее всего сюда http://www.cyberforum.ru/order-program/
Либо жди, пока появится кто-то добрый и тебе всё напишет, разжуёт и разложит по полочкам
0
14.06.2009, 18:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2009, 18:22
Привет! Вот еще темы с ответами:

Записать арифметическое выражение - C++
Собсна само выражение и мой жалкий и неработающий код, если можно то объясните что не так. #include <iostream> using...

вычислить арифметическое выражение - C++
вычислить арифметическое выражение y=A*B+tg(A) заранее большое спасибо!

Составить арифметическое выражение - C++
Учительница математики попросила школьников составить арифметическое выражение так, чтобы его значение было равно данному числу N, и...

Вычислить арифметическое выражение - C++
пожалуйста помогите : Дано натуральное число n. Вычислить


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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