Блог начинающего кодера
Простой калькулятор на делфи
Привет! Сейчас я расскажу вам, как можно сделать простой калькулятор на Delphi
В этой статье я на примере покажу как можно быстро сделать калькулятор на языке программирования Delphi.
Откроем новый проект в делфи. Создадим примерно вот такую форму:
Измените все надписи примерно вот так:
Затем, не запуская программу, нажмем 2 раза на кнопку «Сложить». Открылся код нашего калькулятора. Колесиком подымем до строки VAR
Объявим там переменные (если не понятно, просто следуйте инструкции)
Впишем под VAR переменные A, B, C и укажем их тип
a, b, c:Extended;
Затем вернемся к процедуре, которая создалась у нас при двойном нажатии на кнопку «Сложить». Если кто-нибудь не понял, где это, то это почти в самом низу кода, начинается на:
procedure TForm1.Button4Click(Sender: TObject);
и заканчивается на:
Но если все равно кто-то не понял, то обратитесь в нашей нарисованной форме, и снова дважды нажмите на на кнопку — и вы попадете аккурат в нашу процедуру — курсор будет находиться между begin и end;
Итак продолжим.
Нам нужно сложение? Значит нам нужно три переменных — первое слагаемое, второе слагаемое и сумма.
У нас на форме уже есть три поля Edit — нетрудно догадаться, что в двух из них будут слагаемые, а в третьей выводиться результат операции (в нашем случае сложения).
Нам нужно присвоить переменным вводимые данные из полей. Для этого нужно вписать между begin иend; вот такие строки:
A := Edit1.Text;
B := Edit2.Text;
Тут все просто, каждую строку можно прочесть.
Но возникает проблема — переменные A, B, C у нас тип числа (c:Extended ), а данные, которые мы получаем из полей — строковые. Это можно решить встроенной функцией StrToInt. Следовательно, код должен выглядеть вот так:
A := StrToFloat(Edit1.Text);
Теперь результат нам нужно вывести в поле Edit3
Все поля Edit имеют свойство Text — это свойство показывает текст в этом поле
Присвоим полю Edit3 значение переменной C :
Edit3.Text := C;
Тут возникает другая проблема переменные A иB у нас стоковые, а нам для вывода нужны числовые. Воспользуемся обратной функцией FloatToStr
Вот готовый код:
A := StrToFloat(Edit1.Text);
B := StrToFloat(Edit2.Text);
Edit3.Text :=FloatToStr(c);
Можно запустить программу. Вот что должно получится:
Работает? Отлично! Нет? Пересмотрите правильность ввода данных.
Но стоп, у нас ведь калькулятор, а не сумматор? Значит остальным кнопкам нужно присвоить соответствующие значения. Тут все просто, копируем код сложения, затем дважды нажимаем на нужную кнопку, к примеру «Отнять», и вставляем. Нужно лишь заменить знак сложения + на знак вычитания -
Аналогично с другими кнопками.
Теперь рассмотрим кнопку «Очистить»
Эта кнопка должна очищать поле вывода результата. Так же дважды на нее. Откроется код. Впишем туда:
Эта значит, что при нажатии на кнопку поле Edit3 должно очиститься. Проверим? Запускайте программу, выполните какое-нибудь математическое действие, и нажмите «Очистить». Чудеса! Результат пропал!
Вот и все! Наш калькулятор готов. Но выглядит он как то убого — я добавил в него парочку пояснений и вот что у меня вышло:
На этом я закончу свой первый урок. Надеюсь, что все было понятно и интересно!