|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.05.2016, 18:37 | #1 |
Регистрация: 04.04.2015
Сообщений: 8
|
Помогите найти ошибку в коде калькулятора
Складывает только нормально. А вот отнимать не хочет: 1-1-1 = -3. Сначала складывает, а потом к результату добавляет минус. Как и делить, и умножать. Как не смотрела - не вижу ошибку.
Код:
Последний раз редактировалось Кари; 14.05.2016 в 19:01. |
14.05.2016, 19:30 | #2 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
при нажатии кнопок надо выполнять не то что нажали сейчас, а то что было нажато РАНЬШЕ.
(именно в таком режиме работают "классические" калькуляторы с одним окном ввода числа) и выполнение последней запомненной операции по '=' CALC(ch, Parse(Edit.text));//выполнить запомненную (сохраненную в переменной ch) ch=.... // запомнить новую
программа — запись алгоритма на языке понятном транслятору
|
14.05.2016, 19:37 | #3 |
Регистрация: 04.04.2015
Сообщений: 8
|
Есть еще один textBox, в нем отображается вот именно это "30+2-1", но в вычислении он не принимает участия.
Последний раз редактировалось Кари; 14.05.2016 в 19:42. |
14.05.2016, 21:06 | #4 |
Регистрация: 04.04.2015
Сообщений: 8
|
Я нашла ошибку. Переменная sum изначально равна нулю. Нужно присвоить как-то первое значение этой переменной. Но вот как пока не знаю.
|
14.05.2016, 21:19 | #5 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
каковы ваши действия (последовательность ввода) при вычислении 30 +2 -1 ???
1. сразу набираем ВСЕ выражение в ОДНОМ окне именно в таком виде '30 + 2 - 1 =' и выполняем расчет формулы (все операции за раз) ? или же 2.1. вводим число '30' 2.2. нажимаем '+' (калькулятор ЗАПОМИНАЕТ введенное число) обычно просто суммирование к нулю. 2.3. вводим число '2' 2.4. нажимаем '-' (при этом "обычный" калькулятор вычисляет результат предыдущей операции 30 +2 =32 и может даже его вывести 2.5. вводим число '1' 2.6. нажимаем '=' (идет выполнение и вывод результата 'последней' операции ) 32 - 1 =31
программа — запись алгоритма на языке понятном транслятору
|
14.05.2016, 21:45 | #6 |
Регистрация: 04.04.2015
Сообщений: 8
|
Второй вариант, последовательно.
|
15.05.2016, 09:27 | #7 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Цитата:
Цитата:
исключением является кнопка '=' .
программа — запись алгоритма на языке понятном транслятору
|
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите найти ошибку в коде | timcryt | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 13.03.2016 18:23 |
Помогите найти ошибку в коде! | Igrohim | Общие вопросы Delphi | 10 | 29.12.2014 00:01 |
Помогите найти ошибку в коде | vbn1 | Общие вопросы C/C++ | 4 | 12.12.2014 20:50 |
Помогите найти ошибку в коде С++ | JokerCD | Помощь студентам | 0 | 26.12.2013 12:38 |
помогите найти ошибку в коде | xaero93 | Помощь студентам | 4 | 20.04.2009 16:05 |