Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.Начало.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

Задания для самостоятельной работы

  1. Hарисовать на белом экране прямоугольник с границей красного цвета и зелены­ми диагоналями.

  2. Hарисовать светофор

  3. Hарисовать российский флаг, японский флаг

  4. Hарисовать елочку зеленого цвета с желтой границей, как показано на рисунке:

  1. Hарисовать снеговика

  2. Нарисовать олимпийские кольца.

  3. Изобразить домик в центре экрана, размеры произвольные, крыша – красная, стены – синие, двери, окна – зеленые. Внизу сделать подпись.

  4. Hарисовать радугу на голубом фоне.

  5. Hарисовать схему изображения городов, координаты которых вводятся с кла­виатуры, причем размер кружочка, обозначающего город, зависит от численности населения города.

Занятие 7. Циклы

Часто бывает необходимо однотипные операции повторить несколько раз, например, нарисовать несколько разноцветных точек на экране, рисовать концентрические окружности на экране до тех пор, пока они не выйдут за границы экрана, посчитать сумму ряда чисел и т. д. Для решения подобных задач используют циклический алгоритм, цикл (повтор). В языке Pascal используется 3 вида циклов:

  1. Цикл со счетчиком: for

  2. Цикл с предусловием: while

  3. Цикл с постусловием: repeat.. until.

Цикл со счетчиком: for

Цикл for используется, если известно число повторов (шагов) цикла. В таких циклах имеется переменная целого типа, которая называется счетчиком цикла. Оператор цикла состоит из двух частей:

  • в первой, называемой заголовком, указывается переменная – счетчик цикла, задается ее начальное и конечное значения, а также шаг изменения.

  • во второй части, называемой тело цикла, задаются операторы, которые будут повторяться заданное счетчиком число раз.

Блок-схема цикла изображена на рисунке:

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

Синтаксис оператора for имеет следующий вид:

For <счетчик>:=<начальное значение> {TO | DOWNTO} <конечное значение > Do

<оператор>;

Если перевести на русский язык все английские слова этого оператора, то эта фраза будет означать следующее: для счетчика от начального значения до конечного значения делать операторы цикла.

При этом <счетчик> всегда переменная типа integer;

в фигурных скобках указывается выбор из двух вариантов:

TO – обозначает, что шаг изменения счетчика равен 1;

DOWNTO – обозначает, что шаг изменения счетчика равен –1(минус 1).

<оператор> – любой, чаще всего составной оператор.

Если в теле цикла должны выполняться несколько операторов, они должны оформляться в виде так называемого составного оператора, т.е. заключаться в операторные скобки begin.. end.

Пример1. Посчитать сумму всех чисел от 1 до 100:

Var

sum, i: integer;

begin

sum:=0;

for i: = 1 to 100 do sum := sum + i;

end;

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

procedure TForm1.FormPaint(Sender: TObject);

var i:integer;

x0,y0:integer;

begin

x0:=Width div 2 - 5;

y0:= Height div 2 - 5;

with canvas do

begin

pen.Color:=clRed;

pen.Width:=3;

{ делаем окружности прозрачными }

brush.Style:=bsClear;

for i:=1 to 20 do

begin

ellipse(x0,y0,x0+i*10,y0+i*10);

x0:=x0 - 5; y0:= y0 - 5;

end;

end;

end;

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]