IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Аифметика, выражение вводится строкой
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

Репутация: -  0  +


Задача (дословно)
В строке вводиться арифметическое выражение, состоящее из целых чисел и знаков "+" и "-" . Вычислить значение этого выражения.
Требования:: во время ввода или модификации выражения нажатия на клавиши должны быть ограничены (если последней введена цифра, то за ней может быть нажата цифра, знак или пробел; если последним введеным символом явдяется знак, то за ним может быть введены либо пробел, либо цифра; для пробела определить ограничения самостоятельно).

как это реализовывается?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 10)
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Вводишь символы по одному с клавиатуры, анализируешь и, если подходит, выводишь на экран (при необходимости - одновременно в буфер).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

Репутация: -  0  +


Цитата(andriano @ 25.09.2008 18:50) *

Вводишь символы по одному с клавиатуры, анализируешь и, если подходит, выводишь на экран (при необходимости - одновременно в буфер).


А расскажите как реализовать это в Delphi
А то я там пока полный ламер((
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

Репутация: -  0  +


ну или скажите, где можно прочитать
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

Репутация: -  0  +


Цитата(andriano @ 25.09.2008 18:50) *

Вводишь символы по одному с клавиатуры, анализируешь и, если подходит, выводишь на экран (при необходимости - одновременно в буфер).


фишка в том, что нужно не только анализировать, но и посчитать потом да ещё и с возможностью редактирования этой строки
так что всё не так просто((
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


А куда вводится-то? В форму или абстрактно?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Поиск -> Калькулятор


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Цитата(klem4 @ 19.10.2008 8:58) *

Поиск -> Калькулятор

Если бы калькулятор...
Нужно вводить строку обрабатывать при вводе
Но и после ввода обработать, чтобы посчитать выражение
Так же возможно редактирование всего выражения
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Ну и что ? Главное написать функцию вычисления выражения, а вызывать ее можешь хоть после каждого клика мышки.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Цитата
Нужно вводить строку обрабатывать при вводе
Обрабатывай:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Edit1.Text <> '') then
case Edit1.Text[Length(Edit1.Text)] of
'+', '-':
begin
if not (Key in ['0'..'9', ' ',#8]) then Key := #0;
end;
'0' .. '9':
begin
if not (Key in ['0'..'9', '+','-',' ',#8]) then Key := #0;
end;
end;
end;

(для пробела добавишь свои правила)... Как закончишь вводить выражение - начнешь вычислять... Где искать тебе уже написали.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

Репутация: -  0  +


а можно как-нибудь обрисовать структуру проекта?
алгоритм
шаги
просто пока не понимаю, что, куда и как(
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 19:16
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name