Программа. Написать программу движения по экрану слева направо окружности. Написать программу движения по экрану слева направо окружности

Задача.

Написать программу движения по экрану слева направо окружности.

Сначала нарисуем слева окружность и тут же сотрём её, для чего нарисуем её на том же месте, но чёрным цветом. Несмотря на то, что окружность тут же сотрём, она успеет мелькнуть на экране и глаз это заметит. Затем надо нарисовать и стереть такую же окружность чуть правее, затем ещё правее, и т.д. Так как в цикле окружность последний раз стирается, т.е. рисуется чёрным цветом, то после цикла необходимо её еще раз нарисовать белым цветом.

USES Graph;

VAR Device,Mode,x:Integer;

BEGIN

Device:=0;

InitGraph(Device,Mode,'a:\TP\BGI');

x:=40;

Repeat

SetColor(15);

Circle(x,100,10); {рисуем белую окружность}

SetColor(0);

Circle(x,100,10); {рисуем чёрную окружность}

x:=x+1;

Until x>600;

SetColor(15);

Circle(x,100,10); {рисуем последний раз белую окружность}

ReadLn;

CloseGraph

END.

Замечание.

Изменить скорость движения можно, увеличив или уменьшив шаг движения. Если фигуры рисовать толстой линией, то движение сильно замедлится, так как толстая линия рисуется гораздо дольше тонкой, то же относится и к закрашенной окружности. Замедлить движение можно и с помощью оператора Delay, введя её между рисованием и стиранием фигуры.

Задачи:

  1. Нарисовать две окружности, которые движутся слева направо.
  2. Нарисовать две окружности, одна из которых движется вниз, а другая – направо.
  3. Нарисовать окружность, которая бесконечно движется, отскакивая от правого и левого края экрана.
  4. Нарисовать кораблик, плывущий по реке.

МАССИВЫ

I. Переменные с индексами.

Поскольку в алфавите Паскаля нет подстрочных букв и цифр, то индексированные переменные на Паскале обозначаются так:

x [1], y [I], z [I, j].

Рассмотрим бесконечный ряд чисел Фибоначчи: 1 1 2 3 5 8 13 21 34 … Каждое из чисел Фибоначчи обозначается индексированной переменной таким образом:

f [1] =1 f [2] =1 f [3] =2 f [4] =3 f [5] =5 …

В этом ряду каждое из чисел является суммой двух предыдущих. В индексном виде это записывается так:

f [1] = f [I-2] + f [I-1].

Задача.

Запишите в индексном виде, как получается из предыдущего числа ряда последующее:

а) 14 18 22 26 … f [I] = f [I-1] + 4

б) 6 12 24 48 … f [I] = f [I-1] * 2

в) 3 5 9 17 33 65 … f [I] = 2 * f [I-1] – 1

II. Определение массива.

Массив – это совокупность конечного числа элементов одного и того же типа, в которой каждый элемент имеет номер, а все элементы – общее имя.

Номер элемента массива назначается его индексом, причем индексов может быть несколько. Массив с одним индексом называют одномерным массивом, с двумя – двумерным и т.д.

Если в программе используется массив, его следует описать в разделе описаний программы.

III. Одномерные массивы.

Описание одномерного массива имеет вид:

VAR имя_массива: array [нач_инд.. кон_инд] of тип_данных;

Здесь имя_массива выбирается в соответствии с обычными привилами Раскаля. Array – читается "эррэй"; переводится "массив" – зарезервированное слово, указывающее, что имя относится к массиву. Нач_инд и кон_инд – это целые числа, определяющие диапазон изменения индексов элементов массива:

VAR temp: array [1..31] of Real;

Нумерация массива не обязательно начинается с 1, но нижняя граница должна быть меньше верхней. Количество элементов в массиве можно найти по формуле: кон_инд – нач_инд + 1.

Так, например, массив VAR sum: array [6..8] of Integer; состоит всего из трех элементов 8 – 6 + 1=3.

Обратимся к элементу массива как к обычной переменной можно, указав имя массива и индекс элемента в квадратных скобках [ ]. С элементами массива можно выполнять все операции, которые допускаются его типом.

Пример задания одномерного массива:

1 способ (примитивное присваивание VAR a: array [1..4]\ of integer;

BEGIN

a [1]: = 8; a [2]: = 9; a [3]: = - 35; a [4]: = 2;

2 способ (с помощью клавиатуры)

const n = 10;

VAR a: array [1..n] of integer; I: integer;

BEGIN

For I:1 to n do begin

writeln (' Введите a [', I, '] ');

Readhn (a [I]);

end; for

Задача.

Дана таблица чисел. Найти сумму положительных элементов.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: