Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2009, 21:13   #1
Степа Верхозин
 
Регистрация: 08.05.2009
Сообщений: 9
По умолчанию Вопрос по Делфи

Вопрос вот какой:
Значит в поле Edit1 надо ввести число от 4 до 9, в Label рядом нужно вывести квадрат от числа,введенного в Edit. Вот мой программный код, но он чего то не работает, число в Лэйбл неправильное выводится:
procedure TForm1.Edit1Change(Sender: TObject);
var
a:String;
b,c:Integer;
begin
b:=0;
//d:=0;
a:=Edit1.Text;
begin
if StrToInt(a)<5 then showmessage ('Insert a number from 5 to 9') else
if StrToInt(a)>9 then showmessage ('Insert a number from 5 to 9') else
if b=5 then c:=sqr(b);//else



Label1.Caption:=IntToStr(c);
end;

Заранее Спасибо!
Степа Верхозин вне форума Ответить с цитированием
Старый 08.05.2009, 21:28   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Такое подойдет?
Код:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
a:Integer;
begin
a := Key-48;
if (a>=4) and (a<=9) then
 Label1.Caption := IntToStr(sqr(a))
else
 Label1.Caption := 'Error!';
Edit1.Clear;

end;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.05.2009, 21:36   #3
Степа Верхозин
 
Регистрация: 08.05.2009
Сообщений: 9
По умолчанию

Да,спасибо большое А не могли бы Вы еще объяснить что значит "a := Key-48;"???
Степа Верхозин вне форума Ответить с цитированием
Старый 08.05.2009, 21:38   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
что значит "a := Key-48;"???
Key - код нажатой клавиши. Коды цифр находятся в диапазоне 48-57. Поэтому, чтобы получить саму цифру, нужно отнять от ее кода 48.

Естественно, такой подход годится только для данной задачи (когда вводится одна цифра).
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.05.2009, 21:41   #5
Степа Верхозин
 
Регистрация: 08.05.2009
Сообщений: 9
По умолчанию

Спасибо еще раз, Вы мне очень помогли
Степа Верхозин вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37
Вопрос по Делфи (дубль 2) MasterX Общие вопросы Delphi 4 06.03.2009 21:43
Вопрос по Делфи MasterX Общие вопросы Delphi 1 06.03.2009 19:57
Вопрос по делфи и по форуму :) Killbrum Помощь студентам 6 13.08.2008 12:57
вопрос по сокетам и общение как в ICQ.Сложный вопрос... Руслантус Общие вопросы C/C++ 2 12.08.2008 21:10