Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Для любопытных. Графические программы с применением массивов.




Рассмотрите приведенный ниже пример.

Задача. Нарисовать олимпийский флаг. Обеспечьте в программе ввод радиуса колец (R) и расположение флага на экране, задавая координаты его верхнего правого угла (Х, Y). Для хранения цветов колец использовать массив.

Program Flag;

Uses

Graph;

Var

...

U, V, X, Y, R, A, B, L, i: integer;

Palitra: array [1..5] of integer;

Begin

write('R=');

readln (R);

write('X=');

readln (X);

write('Y=');

readln (Y);

...{Инициализация графического режима}

Palitra [1]:= LightBlue;

Palitra [2]:= Black;

Palitra [3]:= Red; {Задание цветов колец}

Palitra [4]:= Yellow;

Palitra [5]:= Green;

A:= 7*R;

B:= 5*R; {Вычисление размера флага}

L:= 2*R-round(R/4); {Вычисление расстояния между кольцами}

SetFillStyle(1, 15);

Bar (X, Y, X+A, Y+B); {Рисование белого флага}

SetLineStyle(0, 1, 3);

U:= X+Round (1.75*R); {Координаты первого верхнего кольца}

V:= Y+L;

for i:= 1 to 5 do {Рисование пяти колец}

begin

if i=4

Then

Begin

U:= X+Round(2.65*R); {Координаты первого нижнего кольца}

V:= Y+3*R;

End;

SetColor(Pal[i]); {Задание цвета i-го кольца}

Circle(U, V, R); {Рисование кольца}

U:= U+L; {Расположение следующего кольца}

end;

readln;

CloseGraph;

End.

Выберите самостоятельно задачу из ниже предложенного перечня:

1. Нарисовать радугу в нижней части экрана.

2. Вывести разноцветные концентрические кольца с центром в середине экрана. Обеспечить диалоговый ввод последовательности меняющихся цветов колец и контроль выхода за границы экрана.

3. Модифицировать задачу 2 для рисования разноцветных неконцентрических колец, цвета которых вводятся в диалоге.

4. Нарисовать шахматную доску. Расставить шашечную позицию, которая запрашивается с экрана. Расположение шашки задается парой чисел: номером клетки по вертикали и по горизонтали.

5. Нарисовать схему расположения городов, которые отмечаются на экране кружочками. Координаты городов предварительно вводятся с клавиатуры.

6. Модифицировать предыдущую задачу, предполагая, что размер кружка зависит от численности населения города.

7. Изобразить на экране движение шара по биллиардному столу с лузами. Расположить лузы по краям биллиардного стола, задав их координаты в диалоге. Движение шара прекращается при попадании его в лузу.

8. Получить мультфильм "Круги на воде", используя концентрические окружности. Центры окружностей должны быть совмещены с центром экрана. Иллюзия движения создается последовательной сменой цветов всех окружностей, начиная с внутренней и кончая внешней. Обеспечить ввод максимального и минимального радиусов в диалоге, а также количество волн и последовательность сменяющихся цветов.

9. Промоделировать работу светофора без учета дорожной обстановки. Обеспечить ввод временных интервалов смены цветов. Для обеспечения временной задержки используйте процедуру Delay.

10. Нарисовать поле размером 10х10 для игры в "Морской бой". На нем с помощью датчика случайных чисел расставить 10 однопалубных кораблей, чтобы они не соприкасались друг с другом. Изобразить позицию на экране компьютера.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных