- •Лабораторная работа №1 Структура программы на языке Pascal и организация ввода-вывода данных
- •Var Form1: tForm1;
- •Var z: integer;
- •Лабораторная работа № 2
- •Var X,a,y:real;
- •Лабораторная работа № 3 Проект с несколькими формами
- •Form1 (Unit1)
- •Var Form1: tForm1; X,y,s,r,p:real;
- •Implementation
- •Form2 (Unit2)
- •Implementation
- •Лабораторная работа №4
- •Var X ,I: integer;
- •Inc (I);{следующий номер делителя}
- •Var m,n,nod,nok:word; I,k:word;
- •Лабораторная работа №5
- •Var I,p:integer;
- •Var a:array[size]of integer;
- •I,n,imax:size;
- •Var I:size;
- •Var n:integer;//количество строк в поле Memo1
- •Var I,p:integer;
- •Var a:array[size,size]of integer; m,n:size; max:integer;
- •Imax,jmax: size; I,j,k: integer;
- •Лабораторная работа №6
- •Var Str:string; otvet, I, n: integer;
- •Лабораторная работа №7
- •Var f: textfile; I: integer;
- •Var f: textfile; ch:string; I,s: integer;
- •Vozr,rost:integer;
- •Var st,r:string; rzap:sz; I:integer; f1:TextFile;
- •Лабораторная работа №8
- •Interface
- •Лабораторная работа №9
- •Var I,j,k:integer;
- •Var I,j:integer;
- •Var b:vec; n1,I,j,k:integer;
- •Приложение 1
- •Приложение 2
Var Form1: tForm1;
{Объявление типов, констант, переменных, функций и процедур, к которым будет доступ из других модулей, но которые не включаются в класс формы}
implementation // реализация модуля {$R *.DFM} {Могут находиться предложения uses, объявления типов, констант, переменных, к которым не будет доступа из других модулей, должны быть реализации всех объявленных в разделе interface функций и процедур, реализации любых дополнительных, не объявленных раннее функций и процедур} end.
Задание к лабораторной работе №1
Разработать приложение, в котором при щелчке на кнопке "Старт" на форме с именем "Задание №1" появляется номер вашей группы и ваша фамилия.
Изменить приложение так, чтобы при щелчке на кнопке "Старт", надпись передвигалась слева направо.
Добавить кнопку "Стоп" для остановки надписи.
Изменить приложение, чтобы при достижении надписью при движении слева направо правой вертикальной границы формы надпись меняла шрифт и цвет и начинала движение в обратную сторону.
Изменить, чтобы надпись двигалась по периметру.
Разместить на форме вопрос и две кнопки с ответами "Да" и "Нет". Разработать приложение, при выполнении которого пользователь не может ответить на вопрос утвердительно, т.к. кнопка "Да" при подведении к ней курсора перемещается в пределах формы, при щелчке на кнопке "Нет", на форме появляется бегущая надпись. Сравните свое решение с приведенными ниже примерами.
Пример 1.1 "Бегущая строка" Вид формы:
Описание данных программы:
Имя |
Семантика |
Тип |
Диапазон изменения |
a |
Массив с текстом |
Array of char(255) |
Символы, вводимые с клавиатуры |
i |
Счетчик цикла |
integer |
1..100 |
j |
Цвет текста |
integer |
20..245 |
h |
Выбор цвета |
integer |
-10;10 |
r,g,b |
Выбор цвета |
integer |
20..245 |
Col |
Хранит выбранный цвет |
char |
r,g,b,y,m,l |
Temp |
Временное хранение |
string |
“ “(пробел) |
Z |
Случайное число |
integer |
0..6 |
Процедура обработки события "Открытие формы":
procedure TForm1.FormCreate(Sender: TObject);
var
temp: string;
begin
j:=25; h:=10; r:=0; g:=0; b:=0; col:='r';
setlength(a,255);
for i:=1 to 100 - length(label1.caption) do
temp:=temp+' ';
Label1.Caption := Label1.Caption +temp;
for i:=1 to 100 do a[i]:= Label1.Caption[i];
end;
Процедура обработки таймера 1:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
for i:=100 downto 2 do a[i]:=a[i-1];
a[1]:=a[100];
Label1.Caption :='';
for i:= 1 to 100 do
Label1.Caption:=Label1.Caption +a[i];
end;
Процедура обработки таймера 2:
procedure TForm1.Timer2Timer(Sender: TObject);