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

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

  1. Опишите синтаксис оператора While..do.

  2. Опишите синтаксис оператора Repeat..Until.

  3. Как работает оператор Break?

  4. Как работает оператор Continue?

Лабораторная работа №6. Циклы с параметром

Оператор повтора for

Оператор повтора for используется в том случае, если заранее известно количество повторений цикла. Приведем наиболее распространенную его форму:

for <параметр цикла> := <значение 1> to <значение 2> do

<оператор>;

где <параметр цикла> — это переменная любого порядкового типа данных (переменные вещественных типов данных недопустимы); <значение 1> и <значение 2> — выражения, определяющие соответственно начальное и конечное значения параметра цикла (они вычисляются только один раз перед началом работы цикла); <оператор> — тело цикла.

Оператор for обеспечивает выполнение тела цикла до тех пор, пока не будут перебраны все значения параметра цикла от начального до конечного. После каждого повтора значение параметра цикла увеличивается на единицу. Например, в результате выполнения следующей программы на экран будут выведены все значения параметра цикла (от 1 до 10), причем каждое значение — в отдельной строке:

program Console;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

I: Integer;

begin

for I := 1 to 10 do Writeln(I);

Writeln('Press Enter to exit...');

Readln;

end.

Заметим, что если начальное значение параметра цикла больше конечного значения, цикл не выполнится ни разу.

В качестве начального и конечного значений параметра цикла могут использоваться выражения. Они вычисляются только один раз перед началом выполнения оператора for. В этом состоит важная особенность цикла for в языке Delphi, которую следует учитывать тем, кто имеет опыт программирования на языках C/C++.

После выполнения цикла значение параметра цикла считается неопределенным, поэтому в предыдущем примере нельзя полагаться на то, что значение переменной I равно 10 при выходе из цикла.

Вторая форма записи оператора for обеспечивает перебор значений параметра цикла не по возрастанию, а по убыванию:

for <параметр цикла> := <значение 1> downto <значение 2> do

<оператор>;

Например, в результате выполнения следующей программы на экран будут выведены значения параметра цикла в порядке убывания (от 10 до 1):

program Console;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

I: Integer;

begin

for I := 10 downto 1 do Writeln(I);

Writeln('Press Enter to exit...');

Readln;

end.

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

Задачи по лабораторной работе №6

№ Задачи

Вариант №1

1

5

9

13

17

21

Вариант №2

2

6

10

14

18

22

Вариант №3

3

7

11

15

19

23

Вариант №4

4

8

12

16

20

24

Задача 1.

Написать программу возведения числа А в целую степень N.

Задача 2.

Написать программу вычисления факториала заданного целого числа. Факториал числа N вычисляется по следующей формуле:

N! = 1 ∙ 2 ∙ 3 ∙ ... ∙ N.

Задача 3.

Написать программу вычисления суммы S квадратов четных и кубов нечетных чисел от 1 до N Проверку числа на четность осуществить с помощью встроенной функции ODD.

Задача 4.

Написать программу выбора наименьшего из 10 данных чисел.

Задача 5.

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

Задача 6.

Написать программу вычисления суммы положительных и количества отрицательных чисел, содержащихся среди данных 10 чисел.

Задача 7.

Написать программу, выясняющую, есть ли среди чисел:

cos i3 ∙ sin in, i = 1, ..., n,

меньшие 0.0001. Если такие числа есть - вывести их на экран.

Задача 8.

Написать программу, выясняющую, есть ли среди чисел

i3 - 17in2 + n3, i = 1, ..., n

числа кратные заданному числу А и одновременно не кратные

заданному числу В.Вывести найденные числа на печать.

Контрольный пример: n = 10, A = 3, B = 2.

Ответ: -699, -10557.

Задача 9.

Написать программу, выясняющую, есть ли среди данных 10 чисел точные квадраты. Если такие есть, то после ввода числа должно появляться сообщение «Точный квадрат».

Задача 10.

Написать программу, в которой определяется сумма S всех целых чисел в интервале, заданном переменными N и М, а также сумма SА четных и SB нечетных чисел в том же интервале.

Задача 11.

Вычислить сумму чисел от 1 до N, возведенных в степень М. Возведение в степень оформить как многократное умножение.

Задача 12.

Даны действительные числа. Вычислить их среднее арифметическое.

Задача 13.

Дано 10 вещественных чисел. Вычислить разность между максимальным и минимальным из них.

Задача 14.

Вычислить:

.

Ответ: 2.469926

Задача 15.

Вычислить:

Y= 1! + 2! + 3! + ... + N! (N > 1)

Факториал числа N вычисляется по следующей формуле:

N! = 1 ∙ 2 ∙ 3 ∙ ... ∙ N.

Задача 16.

Определить 20-е число Фибоначчи.

Числа Фибоначчи вычисляются с помощью следующих соотношений:

F0 = 0; F1 = 1; Fi = Fi-1 + Fi-2 для i > 1.

Ответ: 6765.

Задача 17.

Дано 10 вещественных чисел. Определить, образуют ли они возрастающую последовательность.

Задача 18.

Дана последовательность из 10 целых чисел. Определить, со скольких отрицательных чисел она начинается.

Задача 19.

Дано число N. Определить, является ли это число простым.

Задача 20.

Дано натуральное число n. Вычислить:

.

Задача 21.

Написать программу, печатающую все буквы латинского алфавита от А до Z.

Задача 22.

Написать программу, печатающую все буквы латинского алфавита от

Z до А.

Задача 23.

Написать программу вывода последовательности букв:

А

АВ

ABC

ABC...XYZ.

Задача 24.

Написать программу вывода последовательности букв: ZYYXXX...AAA...A