![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 27.03.2013
Сообщений: 22
|
![]()
Всем привет!
Ребят,есть задание: написать программу,которая решает любые примеры(количество используемых чисел и знаков не ограничено ). Например,я ввожу (2+2)^3= он мне выводит ответ:64 Программа в консольном виде... я сидел,раздумывал над алгоритмом решения задачи,вот что пришло в голову: 1)пример я буду вводить как строку 2)потом в цикле в этой строке я буду проверять что является числом,а что знаком и заносить их в соответствующие массивы(chisla , znaki) 3)дальше буду выполнять математические действия. Но при шаге номер 2 у меня возник вопрос: как можно определить число в строке? т.е. например: 1)ввёл 23+3-6= 2) 2- это нулевой элемент массива chisla ,а 3 это первый элемент массива chisla. ВОТ в этом и вся проблема.Как сделать так,чтобы всё число записывалось в определённый элемент массива,а не по разрядам?! Очень жду ваших советов!Заранее спасибо) |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Скобки не забыли? Они заметно усложняют жизнь, знаете ли.
Число можно читать посимвольно: "если очередной символ есть цифра, то текущее число умножить на 10 и прибавить соответствующее значение". Другие замечания по поводу вычисления сложного выражения обсуждались в этой теме. |
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 27.03.2013
Сообщений: 22
|
![]() Цитата:
скобки и знаки типа умножить,делить,степень расставляют приоритет очерёдности выполнения действий,что я забыл учесть... но хотелось бы видеть конкретные рекомендации по этим вопросам... |
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 26.01.2009
Сообщений: 360
|
![]()
Это первое, что нашел.
Код:
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 26.01.2009
Сообщений: 360
|
![]()
Также вот это может помочь - синтаксический анализатор.
В гугле очень много ссылок. Учитесь пользоваться поиском)) |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 27.03.2013
Сообщений: 22
|
![]() |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 26.01.2009
Сообщений: 360
|
![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Блок примеров C# | sorcerer | C# (си шарп) | 0 | 30.05.2011 11:22 |
Задача в Excel - помoгите с решением | yarikseo | Microsoft Office Excel | 4 | 24.01.2011 10:52 |
Добавление примеров | LENA_M | Microsoft Office Excel | 8 | 02.05.2009 19:22 |
Помогите разобратся (генератор примеров) | FAiver | Общие вопросы Delphi | 6 | 15.03.2008 11:51 |