Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания по ЯиСП 1-14 ИВТ.doc
Скачиваний:
53
Добавлен:
01.04.2015
Размер:
648.7 Кб
Скачать

Задания для самостоятельного выполнения лабораторной работы 9.

1 Вычислите значение функции у=х32+16х-43 для х изменяющегося в диапазоне от -4 до 4 включительно с шагом 0,5.

2 Напишите программу вычисления функции

y= х-4 для х>2

у= х2+14 для х< -2

y= х/4 в остальных случаях

для х изменяющегося от -5 до 3 с шагом 0,25.

3 Вычислить сумму ряда s=sin(l) + sin(2) + ... +sin(n), для n вве­дённого с клавиатуры.

4 Вычислить сумму ряда s = cos(х) + cos(х)*cos(х) + ... +cos(х)*cos(х)*...*cos(х), для х и n введённых с клавиатуры.

5 Изобразите фрагмент дуги радуги.

6 Напишите программу, которая рисует последовательность из n окруж­ностей радиуса r и цвета с, для n, r и с введённых с клавиатуры.

7 Нарисовать "диагональ" экрана, состоящую из 15 разноцветных треу­гольников.

8 Нарисуйте ромб из 40 разноцветных прямоугольников одинакового раз­мера.

9 Нарисовать сетку из пересекающихся окружностей разного цвета, раз­мером nхn, для n введённого с клавиатуры.

10 Нарисуйте окружность состоящую из 36 разноцветных окружностей уве­личивающегося размера.

Лабораторная работа 10. Циклические конструкции. Оператор цикла с параметром

Оператор цикла с параметром

Оператор цикла с параметром организует выполнение одного операто­ра заранее известное количество раз.

Структура оператора

Существует два варианта оператора.

Вариант первый:

FOR i:= start ТО finish DO <оператор>

Вариант второй:

FOR i:= start DOWNTO finish DO <оператор>

В этих структурах: i - параметр цикла; start - начальное значение параметра; finish - конечное значение параметра; <оператор> - тело цикла.

Тип переменной цикла i и значений start и finish должен быть по­рядковым! (целочисленным)

Порядок выполнения оператора:

Вычисляются и запоминаются начальное - start, и конечное - finish, значения параметра цикла. Start и finish могут быть представлены в виде конкретного значения (в этом случае нет необходимости в вычис­лениях) или в виде выражения, значение которого вычисляется в нача­ле выполнения цикла.

Параметру цикла i присваивается значение start.

Значение параметра цикла i сравнивается со значением finish. Опера­тор "тело цикла" будет выполнен при выполнении следующего условия:

первый вариант оператора: i<= finish;

второй вариант оператора: i>= rinisn.

В противном случае происходит прекращение выполнения циклического оператора.

Параметру цикла присваивается:

первый вариант оператора: следующее большее значение; второй вариант оператора: следующее меньшее значение.

Выполняется пункт 3 данной схемы.

Часто говорят, что первый вариант оператора цикла с параметром, -цикл с возрастающим параметром; второй вариант, - с убывающим парамет­ром.

Если при первой-же проверке, параметр цикла не будет удовлетво­рять условий пункта 3, тело цикла не выполнится ни разу.

Телом цикла может быть только один оператор. Для того, чтобы в теле цикла с параметром выполнить несколько операторов, их необходимо объединить операторными скобками BEGIN END.

После прекращения выполнения оператора, значение параметра цикла не определено, за исключением случаев, когда выход из оператора был осуществлён с помощью GOTO или стандартной процедуры Break.

Break

Процедура Bгеак может использоваться во всех циклических операто­рах. Эта процедура позволяет досрочно выйти из цикла, не дожидаясь выполнения условия выхода.

Continue

Процедура Continue может использоваться во всех циклических опе­раторах. Она позволяет перейти к "началу" цикла, или к следующему вы­полнению тела цикла, даже если выполнение тела цикла не завершено. Другими словами, эта процедура позволяет прекратить выполнение тела цикла. При этом выполнение самого циклического оператора не прекраща­ется.

Примеры применения

Пример 1. Вычислить сумму S = 1 + 1/2 + 1/3 +…1/50.

PROGRAM ех_1;

VAR i:integer; s:real;

BEGIN

s :=0;

for i:=l to 50 do s:=s + 1/i;

Writeln(‘Сумма равна: ‘, s);

END.

Пpимep 2. Вычислить сумму синусов чисел от 1 до 1000. Сумми­ровать и выводить на экран только положительные значения синусов.

PROGRAM ех_2;

VAR i: integer; s: real;

BEGIN

s := 0;

FOR i:=l TO 1000 DO

Begin

If sin(i) < 0 then continue;

s:= s + sin(i);

writeln(‘ sin(‘,i,’) = ‘, sin(i)) ;

End;

Writeln(‘Сумма равна: ‘, s);

Readln;

END.

Контрольные вопросы.

1 Сколько раз выполняется оператор цикла с параметром?

2 Сколько существует вариантов цикла с параметром?

3 Что называют параметром цикла, начальным и конечным значением пара* метра цикла?

4 Что называют телом цикла с параметром?

5 Объясните порядок выполнения цикла с параметром.

6 Объясните блок-схемы цикла с параметром.

7 Объясните назначение и применение процедур Згеак и Continue.

8 Приведите примеры применения цикла с параметром.