Для тех ,кто решил зарегистрироваться на форуме «Беседка» !
Категорически запрещена регистрация  с одноразового и временного e-mail !Такие пользователи будут отправляться в бан без объяснения причин.
После регистрации необходимо активировать свою учетную запись .Если Вы в почте не обнаружили письмо с активацией рекомендуется проверить папку «Спам».
С уважением
 Администрация форума

* Недавно обновленные темы

Автор Тема: Язык Pascal в среде Delphi  (Прочитано 5181 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #15 : 04 Январь 2013, 21:31 »
Сделала
(открыть/скрыть)

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #16 : 04 Январь 2013, 21:42 »
Ок, получилось. Единственный нюанс в обработчике вычитания
Y  := X2 - X1;
Я думаю что нужно было из X1 вычитать X2, но это уже тонкости...

Так... никуда не уходите, щас новое задание дам, чуть усложним.... :smile:

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #17 : 04 Январь 2013, 21:54 »
Как думаете, сможете сделать как на картинке?
Если не знаете с чего начать - не стесняйтесь, сделаю подсказку. :smile:

гости не могут видеть изображения , пожалуйста зарегистрируйтесь или авторизуйтесь


Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #18 : 05 Январь 2013, 00:41 »
Сделала
(открыть/скрыть)

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #19 : 05 Январь 2013, 00:56 »
Замечательно!
Ну давайте теперь попробуем, как вы хотели.
Интерфейс чуть меняем - сдвигаем кнопку Сброс чуть левее, а рядом добавляем новую кнопку Равно.

[attach=1]

Теперь. Что хотим сделать?
До этого мы вводили первое число, потом вводили второе число и только потом нажимали кнопку действия, что и приводило к вычислениям. Такой режим не совсем обычен для обычных арифметических калькуляторов (он используется в калькуляторах программируемых), но мы пока особо ничего менять не будем. Сделаем просто, что бы вычисление можно было бы делать не одно, а несколько.

Для этого делаем так...
Набираем первое число, набираем второе число, нажимаем кнопку действия - вычисления производятся, но результат копируется в первое поле ввода, второе поле очищается, а в поле результата выводится сделанное действие. Сейчас попробую реализовать...

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #20 : 05 Январь 2013, 01:24 »
Чисто вычисление и перенос результата в первое поле ввода и последующаяя очистка второго поля делается без проблем.

 X1 := StrToFloat(Edit1.Text);
 X2 := StrToFloat(Edit2.Text);
 Y  := X1 + X2;
 Edit1.Text := FloatToStr(Y);
 Edit2.Text := '';

А вот с выводом информации в поле результата дело обстоит чуть сложнее.
Фишка в том, что есть разница - это первое вычисление или это вычисление последующее. Нужно будет использовать команды условий.

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #21 : 05 Январь 2013, 01:42 »
Процедура для сложения должна выглядеть так

procedure TForm1.Button1Click(Sender: TObject);
begin   // нажатие на кнопку плюс
 X1 := StrToFloat(Edit1.Text);
 X2 := StrToFloat(Edit2.Text);
 Y  := X1 + X2;
 Edit1.Text := FloatToStr(Y);
 Edit2.Text := '';
 If (Label1.Caption = '') then
  begin
     Label1.Caption := FloatToStr(X1);
  end;
 Label1.Caption := Label1.Caption + '+' + FloatToStr(X2);
end;

гости не могут видеть изображения , пожалуйста зарегистрируйтесь или авторизуйтесь



Попробуйте сделать, что бы работали и остальные арифметические клавиши, а если сообразите, то и обработчик кнопки Равно сделайте. :smile:

Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #22 : 05 Январь 2013, 03:50 »
Я вот такой калькулятор сделала

Вроде все работает.

[attach=1]

(открыть/скрыть)

Добавить бы проценты,возведение в степень и извлечение квадратного корня и получилось бы вообще прекрасно  :good:

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #23 : 05 Январь 2013, 16:45 »
Цитата
Вроде все работает.
Да, код посмотрел - особых ошибок вроде нет. Правда у себя запустить не могу - нужен весь ваш проект.

Цитата
Добавить бы проценты,возведение в степень и извлечение квадратного корня и получилось бы вообще прекрасно
Делайте по аналогии. Добавляйте кнопки, прописывайте обработчики. Ничего особого...

Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #24 : 05 Январь 2013, 17:19 »
Могу скинуть на мыло.Вот еще бы и иконку изменить,а я пока в этом профан,если ты поможешь.

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #25 : 05 Январь 2013, 17:43 »
Цитата
Вот еще бы и иконку изменить
Ищите в свойствах формы

[attach=1]

Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #26 : 05 Январь 2013, 17:44 »
Вот мой калькулятор.
Там иконку надо создавать, готовых нет.

Оффлайн Olga

  • *
  • Сообщений: 236
  • Пол: Женский
  • Имя : Ольга

Re: Язык Pascal в среде Delphi 7
« Ответ #27 : 05 Январь 2013, 17:54 »
А теперь предлагаю перейти ко второй лабе.
(открыть/скрыть)

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #28 : 05 Январь 2013, 18:04 »
Цитата
Для выполнения данной лабораторной работы следует использовать
компоненты Button, Edit, Label
Да мы её уже выполнили в произвольной форме, не интересно... (((

Оффлайн технарь

  • *
  • Сообщений: 4250
  • Пол: Мужской

Re: Язык Pascal в среде Delphi 7
« Ответ #29 : 05 Январь 2013, 18:14 »
В самом калькуляторе ещё море доработок можно сделать.
Например исключить вариант неверного ввода.

Любая программа должна учитывать, что пользователь с ней будет делать что-то не так, и либо игнорировать эти действия, либо выкидывать окно с предупреждениями. Попробуйте нажать кнопку действия не заполнив поля ввода или вписав туда буквы - получим ошибку.