Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
bilety_informatika.docx
Скачиваний:
181
Добавлен:
16.04.2015
Размер:
530.78 Кб
Скачать

34 Алгоритмическая структура «цикл». Привести примеры.

  1. Алгоритмическая структура «цикл». Привести примеры.

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

Циклические алгоритмические структуры бывают двух типов:

— циклы со счетчиком, в которых тело цикла выполняется определенное количество раз;

— циклы с условием, в которых тело цикла выполняется до тех пор, пока выполняется условие.

Алгоритмическая структура цикл может быть зафиксирована различными способами:

— графически, с помощью блок-схемы;

— на языке программирования, например на языках Visual Basic и VBA, с использованием специальных инструкций, реализующих циклы различного типа.

Цикл со счетчиком. Когда заранее известно, какое число повторений тела цикла необходимо выполнить, можно воспользоваться циклической инструкцией (оператором цикла со счетчиком) For. . . Next (рис. 19).

Синтаксис оператора For. . . Next следующий: строка, начинающаяся с ключевого слова For, является заголовком цикла, а строка с ключевым словом

Next — концом цикла; между ними располагаются операторы, представляющие собой тело цикла.

В начале выполнения цикла значение переменной Счетчик устанавливается равным НачЗнач. При каждом «проходе» цикла переменная Счетчик увеличивается на величину шага. Если она достигает величины КонЗнач, то цикл завершается и выполняются следующие за ним операторы.

Циклы с условием. Часто бывает так, что необходимо повторить тело цикла, но заранее неизвестно, какое количество раз это надо сделать. В таких случаях количество повторений зависит от некоторого условия. Этот цикл реализуется с помощью инструкции Do... Loop.

Условие выхода из цикла можно поставить в начале, перед телом цикла (рис. 20) или в конце, после тела цикла (рис. 21).

Проверка условия выхода из цикла проводится с помощью ключевых слов While или Until. Эти слова

придают одному и тому же условию противоположный смысл. Ключевое слово While обеспечивает выполнение цикла до тех пор, пока выполняется условие, т. е. пока условие имеет значение истина. В этом случае условие является условием продолжения цикла. Как только условие примет значение ложь, выполнение цикла закончится.

Ключевое слово Until обеспечивает выполнение цикла до тех пор, пока не выполняется условие, т. е. пока условие имеет значение ложь. В этом случае условие становится условием завершения цикла. Как только условие примет значение истина, выполнение цикла закончится

35 Одномерные массивы и алгоритмы их обработки. Привести примеры.

Переменные-массивыявляются переменными сложного (структурированного) типа и представляют собой организованную группу элементов одного типа (линейную или прямоугольную таблицу).

Массив- это упорядоченная совокупность однотипных данных, имеющая одно общее имя.

Линейные таблицы представляют собой одномерныемассивы, а прямоугольные таблицы -двумерныемассивы.

-5

6

12

67

-90

34

-45

0

-4

83

-24

0

1

2

3

4

5

6

7

8

9

10

Порядковые номера элементов массива ( индексы )

A [10] - одномерный массив.

Так как массив имеет одно общее имя, его элементы различаются только номерами (индексами).

При объявлении массива в программе после имени массива в квадратных скобках указывается его размерность, то есть количество элементов. Элементы такого массива идут по порядку с 0 по 10 (всего 11 элементов). Нулевой элемент можно не использовать.

Таким образом, массив имеет следующие свойства:

  • Массив имеет имя, которое задает программист

  • Массив имеет сквозную нумерацию элементов

  • Массив имеет размерность, то есть определенное количество элементов

  • Массив имеет тип, определяющий тип всех входящих в него элементов

  • Массив имеет значенияэлементов, которые могут быть заданы в процессе выполнения программы и могут изменяться в пределах диапазона объявленного типа в ходе выполнения программы

Объявление массива. Перед началом работы с массивом необходимо объявить его и зарезервировать место в памяти под соответствующие количество элементов.

Объявление одномерного массива в программе:

Type Mas=array[1..10]ofinteger; { объявляем тип массив из 10 целых элементов }

Var A,B:Mas; { переменныеA,Bтипа массив }

Массивы можно объявить и так:

Var A,B:array[1..10]ofinteger; { переменныеA,Bтипа массив из 10 целых элементов }

Первый способ объявления предпочтительнее, так как при этом программа получается более наглядной. Кроме того, при использовании подпрограмм массивы следует объявлять с явным указанием типа, чтобы массивы в главной программе и массивы в подпрограммах принадлежали к одному и тому же типу. В противном случае при передаче данных в подпрограммы и обратно возникнет ошибка.

Ввод элементов массиваможет осуществляться разными способами. Любая обработка массивов, в том числе ввод и вывод, производится поэлементно, т.е. в цикле.

Приведем пример организации ввода одномерного массива целых чисел А [10]. Нулевой элемент использовать не будем.

Ввод элементов одномерного массива с клавиатуры:

For i:=1 to 10 do begin

Writeln(‘Введите значение A[’, i, ‘]: ’);

Readln(A[i]);

End;

При запуске на выполнение необходимо поочередно ввести 10 элементов массива (долго, не всегда удобно).

Ввод элементов одномерного массива случайным образом:

Randomize;

For i:=1 to 10 do begin

A[i]:=random(200)-100;

End;

При запуске программы на выполнение элементы массива получат случайные значения при помощи генератора случайных чисел Randomв интервале [-100; 100[.

Вывод значений элементов массива на экран.Осуществляется при помощи цикла. Перед выводом лучше очистить экран командойClrScr. Вывод одномерного числового массива на экран можно осуществлять в строчку или столбик.

Вывод значений элементов одномерного массива на экран:

ClrScr; { очищение экрана }

For i:=1 to 10 do begin

Write(A[i]:5); { вывод элементов массива в строчку, на каждый элемент отводится 5 позиций}

End;

ClrScr; { очищение экрана }

For i:=1 to 10 do begin

Writeln(A[i]);

{ вывод элементов массива в столбик }

End;

Обработка массивов обычно связана с подсчетом суммы, произведения элементов массива, всех или выборочно, с поиском максимального или минимального элемента, подсчетом количества положительных, отрицательных, четных, нечетных либо каких-то еще элементов массива. Возможны также преобразования массивов: перестановка элементов, сдвиг элементов и т. д. Обработка массивов осуществляется при помощи циклов.

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