Ввод/вывод чисел.
Программирование: delphi
Может показаться, что каждой переменной соответствует компонент в форме. Это не так: переменных может быть значительно больше, они используются для хранения всех промежуточных значений, а компоненты форм — только для общения с пользователем. Будем использовать также другой способ вывода, с помощью процедуры ShowMessage. При вызове она создает отдельное окно, содержащее указанное сообщение… Читать ещё >
Ввод/вывод чисел. Программирование: delphi (реферат, курсовая, диплом, контрольная)
Цель работы — создать программы, выполняющую ввод и вывод чисел. Для общения с пользователем визуальная программа использует компоненты формы. Вспомним:
- • любой компонент имеет тип;
- • любой компонент имеет имя;
- • по имени можно обратиться к компоненту и что-то запросить (например, текст, который там находится);
- • любые действия мы можем оформить только как обработчик некоторого события (например, нажатия на кнопку).
Для получения данных от пользователя (т. е. для ввода) чаще всего будем использовать Edit, а для вывода результата — Label. Edit хранит введенный текст в поле Text, a Label — в поле Caption.
Для того чтобы получить текст, введенный, например, в Edit с именем AEdit, надо написать AEdit.Text. Если необходимо получить не просто текст, а число, введенное в AEdit, то для преобразования текста в число используются две функции:
- • StrToInt — преобразует текст в целое число (integer);
- • StrToFloat — преобразует текст в вещественное число (extended).
Пример Чтобы из Edit с именем AEdit получить введенное число и положить его в целую переменную А, следует написать:
А := StrToInt (AEdit.Text);
Если в AEdit введено не число или ничего не введено, мы получим сообщение об ошибке.
Для того чтобы вывести число, находящееся в целой переменной А в Label с именем ALabel, надо перевести это число в строку, а затем присвоить полю Caption объекта ALabel. Для преобразования числа в строку используются 2 функции:
- • intToStr — преобразует целое число (integer) в строку;
- • FloatToStr— преобразует вещественное число (extended) в строку.
Пример Чтобы из целой переменной, А вывести число в Label с именем ALabel, следует написать:
ALabel.Caption := IntToStr (А);
Компоненты, так же как и переменные, имеют имя. Компоненты и переменные не следует называть одинаково.
Может показаться, что каждой переменной соответствует компонент в форме. Это не так: переменных может быть значительно больше, они используются для хранения всех промежуточных значений, а компоненты форм — только для общения с пользователем.
Будем использовать также другой способ вывода, с помощью процедуры ShowMessage. При вызове она создает отдельное окно, содержащее указанное сообщение, и кнопку ОК. Только после нажатия пользователем этой кнопки программа продолжит работу.
Пример
ShowMessage (' Hallo '); // Выводится сообщение «HaLLo».
ShowMessage (intToStr (A)); // Выводится значение
// целочисленной переменной А
Задача 1. Сложить два введенных числа
Описание плана разработки программы
- 1. Откройте новый проект.
- 2. Разместите на форме экземпляры компонентов: два текстовых поля Edit, метку Label и кнопку Button.
- 3. Выполните действия, перечисленные в табл. 4.
Таблица 4
Выделенный объект. | Вкладка окна Object Inspector. | Имя свойства / имя события. | Действие. |
Forml. | Properties. | Caption. | Установка имени формы «Сложение чисел». |
Editl. | Properties. | Text. | Очистить значение свойства Text. |
Edit2. | Properties. | Text. | Очистить значение свойства Text. |
Label 1. | Properties. | Caption. | Ввод текста надписи «Вывод результата». |
Button 1. | Properties. | Caption. | Установка имени кнопки «Сложить». |
Events. | OnClick. | Labell. Caption: = IntToStr. (Res); |
4. Сохраните проект, запустите и протестируйте его.
Фрагмент программы
procedure TForml. ButtonlClick (Sender: TObject); var
A, B, Res: Integer;
begin
A := StrToInt (Edit1.Text);
В := StrToInt (Edit2.Text);
Res := A + B;
Labell.Caption := IntToStr (Res);
end;
Когда обработчик начинает работать (т. е. когда нажата кнопка), пользователь уже ввел числа в Editl и Edit2, поэтому мы их можем оттуда взять (что и делают первые 2 строчки). Затем значения складываются (следующая строчка), результат сложения кладется в переменную Res и выводится в Labell (последняя строчка).
Задача 2. Вычислить площадь круга
Описание плана разработки программы
- 1. Откройте новый проект.
- 2. Разместите на форме экземпляры компонентов: текстовое поле Edit, метку Label и кнопку Button.
- 3. Выполните действия, перечисленные в табл. 5.
Таблица 5
Выделенный объект. | Вкладка окна Object Inspector. | Имя свойства / имя события. | Действие. |
Forml. | Properties. | Caption. | Установка имени формы «Площадь круга». |
Editl. | Properties. | Text. | Очистить значение свойства Text. |
Labell. | Properties. | Caption. | Ввод текста надписи «Площадь круга». |
Buttonl. | Properties. | Caption. | Установка имени кнопки «Вычислить». |
Events. | OnClick. | Labell.Caption := IntToStr (Sq); |
4. Сохраните проект, запустите и протестируйте его.
Фрагмент программы
procedure TForml. ButtonlClick (Sender: TObject); var
R, Sq: Integer; begin
R := StrToFloat (REdit.Text);
Sq := Pi*Sqr®;
Labell.Caption := IntToStr (Sq); end;
В данном примере вычисления выполняются с вещественными числами.
Задача 3. Поменять местами значения двух переменных
Описание плана разработки программы
- 1. Откройте новый проект.
- 2. Разместите на форме экземпляры компонентов: два текстовых поля Edit, кнопку Button.
- 3. Выполните действия, перечисленные в табл. 6.
Таблица б
Выделенный объект. | Вкладка окна Object Inspector. | Имя свойства / имя события. | Действие. |
Forml. | Properties. | Caption. | Установка имени формы «Значения двух переменных». |
Editl. | Properties. | Text. | Очистить значение свойства Text. |
Edit2. | Properties. | Text. | Очистить значение свойства Text. |
Buttonl. | Properties. | Caption. | Установка имени кнопки «Поменять значения». |
4. Сохраните проект, запустите и протестируйте его.
Фрагмент программы
procedure TForml. ButtonlClick (Sender: TObject); var
А, В, C: Integer; begin
A := StrToInt (Edit1.Text);
В := StrToInt (Edit2.Text);
C := A;
A := B;
В := C;
Editl.Text := IntToStr (A);
Edit2.Text := IntToStr (B) end;
В данном примере переменные, А и В меняются местами и затем выводятся в исходные Edit. Для этих целей используется третья переменная С. Смысл задачи состоит не в том, чтобы поменять местами значения, находящиеся в Edit, а в том, чтобы поменять местами значения в переменных Л и В.
Задача 4. Возведение в степень с использованием функций Ехр (х) и Ln (x)
Описание плана разработки программы
- 1. Откройте новый проект.
- 2. Разместите на форме экземпляры компонентов: два текстовых поля Edit, кнопку Button.
3. Выполните действия, перечисленные в табл. 7.
Таблица 7
Выделенный объект. | Вкладка окна Object Inspector. | Имя свойства / имя события. | Действие. |
Forml. | Properties. | Caption. | Установка имени формы «Степень». |
Editl. | Properties. | Text. | Очистить значение свойства Text. |
Edit2. | Properties. | Text. | Очистить значение свойства Text. |
Labell. | Properties. | Caption. | Ввод текста надписи «Степень числа». |
Buttonl. | Properties. | Caption. | Установка имени кнопки «Возвести в степень». |
4. Сохраните проект, запустите и протестируйте его.
Фрагмент программы
procedure TForml. ButtonlClick (Sender: TObject);
var
X} Yj Step: Extended;
begin
X := StrToFloat (Editl.Text);
Y := StrToFloat (Edit2.Text);
Step := Exp (Y * Ln (X));
Labell.Caption := FloatToStr (Step).
end;
Здесь нужно вспомнить формулу для вычисления степени с использованием функций Ехр (х) и Ln (x).
Задание для самостоятельного выполнения
Создать программу, выполняющую следующие действия.
- 1. После запуска программы отображаются: две строки для ввода текущих курсов для евро и доллара; строка для ввода денежной суммы в рублях; две строки для вывода эквивалента в евро, долларах.
- 2. Ввести текущий курс для евро и доллара.
- 3. Ввести денежную сумму в рублях.
- 4. По щелчку мышью на кнопке «Подсчитать эквивалент» вывести денежную сумму в евро и долларах.
- 5. Ввести новый текущий курс для евро и доллара.
- 6. Ввести новую денежную сумму в рублях.
- 7. По щелчку мышью на кнопке «Подсчитать эквивалент» выводится новая денежная сумма в евро и долларах.
- 8. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Рис. 22. Окно разработанной программы до ввода данных