Вторник, 20.11.2018, 22:59
Приветствую Вас Гость | RSS

Сайт учителя информатики Швец Елены Петровны

Наш опрос
Как вы используете Интернет для подготовки к урокам?
Всего ответов: 9
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Сетевой этикет

Составление алгоритмов для работы с графикой

Составление алгоритмов для работы с графикой

Пример 1. Нарисовать прямоугольный треугольник, соответствующий рисунку (катеты треугольника параллельны осям координат). Длины катетов и координаты прямого угла вводятся.

Этапы выполнения задания

I.  Исходные данные: a и b (длины катетов), x и y (координаты вершины прямого угла).

II.  Результат: изображение прямоугольного треугольника.

III.  Алгоритм решения задачи.

1.  Ввод исходных данных.

2.  Чтобы изобразить треугольник, нужно выполнить следующие действия:

1)   построить линии из точки с координатой  (x; y) в точки с координатами

(x + a; y) и  (x; y + b);

2)  соединить линией точки  (x + a; y) и  (x; y + b);

3)  закрасить треугольник. Для закрашивания треугольника нужно знать координаты какой-либо точки внутри треугольника. Такой точкой в данном случае может быть точка с координатами  (x + 2; y + 2).

IV.  Описание переменных: все переменные имеют тип integer.

V.  Программа:

uses GraphABC;

var a,b,x,y,x_c, y_c:integer;

begin

  writeln('Введите координаты');

  read(x,y); writeln (x,' ',y);

  writeln('Введите длины катетов');

  read(a,b); writeln (a,' ',b);

  Line(x,y,x+a,y); Line(x,y,x,y+b);

  Line(x+a,y,x,y+b);

  //Координаты точки внутри треугольника

   x_c := x + 2; y_c := y + 2;

   FloodFill(x_c,y_c,clRandom);

end.

Случайные  числа  имеют  широкое применение в программировании. Они используются  в  шифровании  и  в  моделировании.  Многие  компьютерные игры используют случайные числа. На основе случайных чисел генерируются капчи  и  пароли, реализуются  различные лотереи.

В PascalABC для  получения  случайного  числа  используют  функцию random. Способы записи функции:

Random(a, b);— возвращает  случайное целое в диапазоне от a до b;

Random(a);— возвращает  случайное целое в диапазоне от 0 до a – 1;

Random;— возвращает  случайное вещественное в диапазоне [0..1).

Функция  clRandom  позволяет  задать случайный цвет.

Пример 2. Написать программу для рисования на экране 10 разноцветных окружностей. Расположение окружностей, их радиусы и цвет определяются случайным образом.

Этапы выполнения задания

I—II. Результатом работы программы, не зависящей от исходных данных, будет изображение 10 окружностей.

III. Алгоритм решения задачи.

1.  Установим толщину линий в 3 пикселя и прозрачную заливку.

2.  Значения координат центра окружности и ее радиуса определяются функцией random. Значение цвета для границы круга — clRandom.

3.  Так как количество повторений известно, будем использовать цикл for.

IV. Описание переменных: x, y (координаты центра), r (радиус) имеют тип integer.

V.  Программа:

Задание 4.

uses GraphABC;
var n, x, y, a, i : integer;
procedure pr_treug (x, y, a, b : integer);
var x_c, y_c:integer;
begin
line(x, y, x + a,y);
line(x, y, x, y + b);
line(x + a, y, x, y + b);
x_c := x + 2; y_c := y + 2;
FloodFill(x_c,y_c,clRandom);
end;
begin
writeln('Введите количество');
read(n); writeln (n);
writeln('Введите длину катета');
read(a); writeln (a);
for i:= 1 to n do
begin
x:= random(500);
y:= random(400);
pr_treug(x, y, a, a);
end;
end.

Составление алгоритмов для работы с графикой

Задание 1. Заполните пропуски в программе, которая строит случайным образом изображения 20 горизонтальных отрезков длиной 30 пикселей.  Задайте в программе толщину отрезка в 3 пикселя.

uses GraphABC;

var x1,x2,y1,y2,i: integer;

begin

   SetPenWidth(  );

for i:= 1 to    do

  begin

    SetPenColor(clRandom);

    x1:=random(600);

    x2:=x1+30;

    y1:=random(400);

    y2:=y1;

    line (   ,    ,     ,   );

    end;

end.

Задание 2. Внесите изменения в программу, чтобы толщина отрезков была случайным числом от 0 до 7, длина отрезков 40 пикселей.

Задание 3. Внесите изменения в программу так, чтобы пользователь мог вводить количество отображаемых на экране отрезков.

Задание 4. Внесите изменения в программу, чтобы вместо горизонтальных отрезков изображались вертикальные.

Задание 5. Внесите изменения в программу, чтобы отображались диагональные отрезки случайной длины от 0 до 50.

Вход на сайт
Поиск
Календарь
«  Ноябрь 2018  »
ПнВтСрЧтПтСбВс
   1234
567891011
12131415161718
19202122232425
2627282930
Часы

Погода
Яндекс.Погода

Copyright MyCorp © 2018
uCoz