Краткая теория
Функция FloatToStrF(x, ffFixed, W, D),
где
x - вещественное число или переменная вещественного типа,
ffFixed - константа, вписывается без изменений,
W - ширина поля, отводимого под всё число, если W = 0,
то ширина определяется автоматически по длине числа,
D - количество цифр в дробной части.
Пример
x := 2.718291829;
Label1.Caption := FloatToStrF(x, ffFixed, 0, 3);
Дает вывод: 2,718
Об отметках
Основные упражнения не отмечены никакими специальными знаками, их выполнения достаточно для удовлетворительной оценки. Дополнительные упражнения отмечены "звездочками", их выполнение необходимо для получения повышенной оценки.
"5" - в отчете выполнены все основные упражнения, дополнительно выполнены упражнения с одной и двумя "звездочками".
"4" - в отчете выполнены все основные упражнения дополнительно выполнены упражнения с одной "звездочкой".
"3" - в отчете выполнены все основные упражнения.
Упражнения
1. Ввести несколько целых чисел в Edit1 по одному, щелкая
после каждого числа по кнопке Button1. При щелчке по кнопке Button1
должны выполняться два действия:
1) поле Edit1 очищается,
2) если число положительное, то выводить его в Label1,
если отрицатльное, то - в Label2.
Пример
На форму поместить:
Edit1
Label1
Label2
Button1
// Глобальные переменные.
var
s1, s2 : string;
procedure TForm1.Form1Create(Sender: TObject);
begin
s1 := '';
s2 := '';
end;
procedure TForm1.Button1Click(Sender: TObject);
var
x : Integer;
s : string;
begin
s := Edit1.Text; // Присваиваем символы из поля 1.
if s <> '' then x := StrToInt(s)
else ShowMessage('Введите целое число!');
if x > 0 then begin
s1 := s1 + IntToStr(x) + ' ';
Label1.Caption := s1;
end;
if x < 0 then begin
s2 := s2 + IntToStr(x) + ' ';
Label2.Caption := s2;
end;
end;
2. Задать целочисленный массив с помощью генератора
псевдослучайных чисел числами из отрезка [A, B].
В поле Edit1 ввести число d.
Вывести в Label1 те элементы массива, которые больше d,
а в Label2 - те , которые меньше d.
В Label3 вывести все элементы массива.
На форму поместить:
Edit1
Label1
Label2
Label3
Button1
Пример
const
N_MAX = 5;
A = -25;
B = 15;
var
z : array [1..N_MAX] of Integer;
i : Byte;
z_str1,
z_str2 : string;
begin
for i := 1 to N_MAX do begin
z[i] := Random(B - A + 1) + A;
end;
z_str1 := '';
z_str2 := '';
for i := 1 to N_MAX do begin
if z[i] > d then
z_str1 := z_str1 + IntToStr(z[i]) + ' ';
if z[i] < d then
z_str2 := z_str2 + IntToStr(z[i]) + ' ';
end;
Label1.Caption := z_str1;
Label2.Caption := z_str2;
// Вывод всех элементов массива.
//... Label3
end;
3. Задать вещественный массив с помощью генератора
псевдослучайных чисел числами из отрезка [A, B].
Вывести элементы массива в Label1 в строку, а в Label2 -
в столбик. Вещественные числа выводить с двумя цифрами
в дробной части.
Указание к выполнению: использовать для преобразования типов
функцию FloatToStrF, см. Краткую теорию выше.
Пример
На форму поместить:
Label1
Label2
Button1
const
N_MAX = 5;
A = -1.5;
B = 2.3;
var
z : array [1..N_MAX] of double;
i : Byte;
z_str : string;
begin
for i := 1 to N_MAX do begin
z[i] := (B - A)*Random + A;
end;
// ...
end;
4.* Задать границы отрезка [A, B] в Edit1 и Edit2
и количество выводимых элементов массива в Edit3,
в Edit4 ввести символ-разделитель элементов массива.
Выполнить упражнение и для целых, и для вещественных
чисел.
5.** Вывести двумерный целочисленный массив в Label1.
Дополнительные задания к занятию
Лабораторная работа 2
Массивы
6.* Для упражнения 1 добавить Edit2, в котором указать,
сколько раз N можно вводить число. Если количество
введенных чисел достигнет N, то сделать кнопку
Button1 недоступной, а поле Edit1 - невидимым.
7.** Вывести одномерный целочисленный массив
в заданное количество колонок и строк с помощью Label1.
Количество колонок задать в Edit1, а количество строк в Edit2.