
- •Удмуртский государственный университет Факультет информационных технологий и вычислительной техники
- •1. Решение задач в среде разработки программ Delphi
- •1.2 Задача № 2 Создание консольного приложения
- •Var a: integer;
- •1.3 Задача № 3 «Приветствие»
- •Implementation
- •1.4 Задача № 4 «Случайный выбор»
- •Implementation
- •1.5 Задача № 5 Изменение заголовка формы
- •Implementation
- •1.6 Задача № 6 «Двигающая кнопка»
- •Implementation
- •1.7 Задача № 7 «Альбом»
- •Implementation
- •Image1.Picture.LoadFromFile
- •1.7. Задача № 7 «Альбом»
- •Implementation
- •Image1.Picture.LoadFromFile('auto.Jpg');
- •Image1.Picture.LoadFromFile('flower.Jpg');
- •1.8 Задача № 8 Работа с меню
- •1.10. Задача № 10 Простейший плеер
- •Image1: tImage;
- •Implementation
- •1.11 Задача № 11 «Прыгающая кнопка»
- •Var I: Integer;
- •1.12 Задача № 12 «Таблица умножения»
- •1.13 Задача № 13 Применение полос прокрутки
- •1.14 Задача № 14 «Светофор»
- •Implementation
- •1.15 Задача № 15 «Ханойские башни»
- •Implementation
- •Var I, c, k, ak: Integer;
1.12 Задача № 12 «Таблица умножения»
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается два движка.
2. Необходимо выбрать два числовых значения и найти их произведение.
3. Если выбирается одно число, то находится его квадрат.
4. Изменить программу так, чтобы находить произведения не только двузначных, но и
трехзначных чисел от 2 до 199.
5. Изменить программу так, чтобы находить сумму двух чисел.
Листинг программы:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
TrackBar2.Position :=
TrackBar1.Position;
end;
procedure TForm1.CheckBox2Click(Sender: TObject);
begin
if CheckBox2.Checked then
GroupBox1.Caption := 'Сумма'
else
GroupBox1.Caption := 'Произведение'
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
Label1.Caption :=
IntToStr(TrackBar1.Position);
if CheckBox2.Checked then begin
Label3.Caption :=
I
ntToStr(TrackBar1.Position
+
TrackBar2.Position);
end else begin
Label3.Caption :=
IntToStr(TrackBar1.Position *
TrackBar2.Position);
end;
if CheckBox1.Checked then Рисунок 14
TrackBar2.Position :=TrackBar1.Position;
end;
procedure TForm1.TrackBar2Change(Sender: TObject);
begin
Label2.Caption :=
IntToStr(TrackBar2.Position);
if CheckBox2.Checked then begin
Label3.Caption :=
IntToStr(TrackBar1.Position +
TrackBar2.Position);
end else begin
Label3.Caption :=
IntToStr(TrackBar1.Position *
TrackBar2.Position);
end;
if CheckBox1.Checked then
TrackBar1.Position :=
TrackBar2.Position;
end;
end.
1.13 Задача № 13 Применение полос прокрутки
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается две полосы прокрутки. Вертикальная
полоса будет управлять движением по вертикали, горизонтальная – по горизонтали.
2. Наводя указатель мыши на одну из двух фигур, можно выбирать, какая из этих фигур
связана с полосами прокрутки.
3. Требуются дополнительные объекты, с помощью которых ограничивается область
движения фигур в окне.
4. Если полоса прокрутки активная, то она должна реагировать на клавиши ВВЕХ, ВНИЗ,
ВЛЕВО, ВПРАВО, PAGE UP, PAGE DOWN.
5. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в
строке заголовка.
Листинг программы:
var Num: Boolean = True;
procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
if num then Shape1.Left := ScrollBar1.Position
else Shape2.Left := ScrollBar1.Position
end;
procedure TForm1.ScrollBar2Change(Sender: TObject);
begin
if num then Shape1.Top := ScrollBar2.Position
else Shape2.Top := ScrollBar2.Position
end;
procedure TForm1.Shape1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Shape1.Brush.Color := clAqua;
Shape2.Brush.Color := clFuchsia;
Num := True;
ScrollBar1.Position:= Shape1.Left;
ScrollBar2.Position:= Shape1.Top;
end;
procedure TForm1.Shape2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Shape1.Brush.Color := clFuchsia;
Shape2.Brush.Color := clAqua;
Num := False;
ScrollBar1.Position:= Shape2.Left;
ScrollBar2.Position:= Shape2.Top; end; end.
Рисунок 15