Объект Свойство Значение Label1 Caption Моя первая программа


procedure TForm1.LT(X,Y:integer); begin



бет14/23
Дата25.09.2023
өлшемі1.52 Mb.
#478523
түріПрограмма
1   ...   10   11   12   13   14   15   16   17   ...   23
Лабораторные

procedure TForm1.LT(X,Y:integer);
begin
with bm.Canvas do
begin
Pen.Color:=clBlue;
MoveTo(X,Y);
LineTo(X,Y+120);
LineTo(X+120,Y);
LineTo(X,Y);
Brush.Color:=clBlue;
FloodFill(X+1,Y+1,clBlue,fsBorder);
end;
end;

  1. Пишем код, выполняемый на каждое событие таймера

procedure TForm1.Timer1Timer(Sender: TObject);
var
I,J:Integer;
begin
bm.canvas.Brush.Color:=clBlack;
bm.Canvas.FillRect(Rect);
for I:=0 to 3 do
for J:=0 to 3 do
begin
Application.ProcessMessages;
case random(4) of
0:LT(I*120,J*120);
1:RT(I*120,J*120);
2:LB(I*120,J*120);
3:RB(I*120,J*120);
end;
end;
Canvas.StretchDraw(Rect, Bm);
end;

  1. Запустите программу и проверьте её в работе.

  2. Выполните контрольные задания

КОНТРОЛЬНЫЕ ЗАДАНИЯ

  1. Добавьте к программе ещё один режим работы. В этом режиме при щелчке на каждом из 16 составляющих квадратиков будет происходить циклическая смена состояния этого квадратика

  2. «Научите» программу собирать симметричные относительно 4-х осей симметрии комбинации

  3. «Научите» программу собирать симметричные относительно центра симметрии комбинации

ЛИТЕРАТУРА

    1. Delphi 5: учебный курс, С. Бобровский, Питер 2002 г.

    2. Аладьев В.З., Хунт Ю.Я., Шишаков М.Л., Основы информатики. Учебное пособие, М., Филин, 1998, 496с.

    3. Информатика. Учебник под ред. Проф. Н.В. Макаровой, Финансы и статистика, 2001, 768с.

    4. Балафанов Е.К., Бурибаев Б., Даулеткулов А.. 30 уроков по информатике, Алматы, Джагамбек, 1999г, 442с (на русском и казахском языках)

    5. Фигурнов В.З. IBM PC для пользователя, 7 изд., Москва, ИНФРА, 1998, 328с.

    6. Каймин В.А., Питеркин В.М., Уртминцев А.Г. Информатика. Учебное пособие, 1998, 208с.

    7. Кенин А.М., Печенкин Н. Окно в мир компьютеров, Екатеринбург, Деловая книга, 1996

Лабораторная работа № 12
Игра сапёр
ЦЕЛЬ РАБОТЫ
Цель лабораторной работы – освоение студентами основных понятий программирования, интерфейса среды программирования методов управления свойствами компонент.
САПЁР

  1. Откройте среду программирования Delphi

  2. В программе игровое поле представлено массивом N+2 на M+2, где N xM — размер игрового поля. Элементы массива с номерами строк от 1 до N и номерами столбцов от 1 до М соответствуют клеткам игрового поля, первые и последние столбцы и строки соответствуют границе игрового поля

  3. В начале игры каждый элемент массива, соответствующий клеткам игрового поля, может содержать число от 0 до 9. Ноль соответствует пустой клетке, рядом с которой нет мин. Клеткам, в которых нет мин, но рядом с которыми мины есть, соответствуют числа от 1 до 8. Элементы массива, соответствующие клеткам, в которых находятся мины, имеют значение 9

  4. Элементы массива, соответствующие границе поля, содержат -3.

  5. В процессе игры состояние игрового поля меняется (игрок открывает клетки и ставит флажки) и, соответственно, меняются значения элементов массива. Если игрок поставил в клетку флажок, то значение соответствующего элемента массива увеличивается на 100. Например, если флажок поставлен правильно в клетку, в которой есть мина, то значение соответствующего элемента массива станет 109. Если флажок поставлен ошибочно, например, в пустую клетку, элемент массива будет содержать число 100. Если игрок открыл клетку, то значение элемента массива увеличивается на 200. Такой способ кодирования позволяет сохранить информацию об исходном состоянии клетки.

  6. Г лавная (стартовая) форма игры Сапер 2002 приведена на рис.

  7. Подключите к программе два модуля StdCtrls и OleCtrls

  8. В части реализации декларируем константы и переменные

const
MR = 10; // кол-во клеток по вертикали
MC = 10; // кол-во клеток по горизонтали
NM = 10; // кол-во мин
W = 40; // ширина клетки поля
H = 40; // высота клетки поля
var
Pole: array[0..MR+1, 0.. MC+1] of integer; // минное поле
nMin : integer; // кол-во найденных мин
nFlag : integer; // кол-во поставленных флагов
status : integer; // 0 - начало игры; 1- игра; 2 -результат

  1. Теперь декларируем процедуры и функции с ключевым словом Forward означающим, что описание функции находится далее



Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   23




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет