- •1.Информатика. Основные понятия
- •1.1. Понятие об информации, информационных процессах, информационных системах и информационных технологиях
- •Ошибка! Закладка не определена.. Информационные технологии
- •1.1.1. Информационные системы
- •1.2. Предмет информатики
- •1.3. Информация, сообщения, знаки и символы
- •1.3.1. Сообщения, сигналы
- •1.3.2. Знаки, коды, символы и слова
- •1.4. Алгоритмы. Основные понятия
- •1.4.1. Определение алгоритма. Запись алгоритма. Свойства алгоритмов
- •1.4.2. Примеры алгоритмов. Способы, используемые при записи алгоритмов: рекурсия, итерация, разбор случаев, иерархическое построение
- •1.4.3. Объекты, типы объектов
- •1.4.4. Псевдокод для записи алгоритмов
- •1.4.5. Неструктурированная форма записи алгоритмов
- •1.4.6. Структурированная форма записи алгоритмов
- •1.4.7. Последовательный оператор
- •1.4.8. Условный оператор
- •1.4.9. Оператор цикла
- •1.5. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- •1.6. Подходы к оценке количества информации
- •2.Основные сведения о компьютерах
- •2.1. Системы счисления
- •2.2. Классификация эвм (компьютеров)
- •2.3. Структура и состав персонального компьютера
- •2.4. Микропроцессоры
- •2.6. Устройства ввода информации Клавиатура
- •Другие устройства ввода информации
- •2.7. Устройства вывода информации Дисплеи
- •Принтеры и графопостроители
- •2.8. Эволюция пк
- •3. Программное обеспечение персональных компьютеров
- •3.1. Классификация программного обеспечения
- •3.2. Операционные системы (ос)
- •3.4. Инструментальные системы
- •3.4.1. Языки и системы программирования
- •3.4.2. Системы управления базами данных
- •3.4.3. Инструментарий искусственного интеллекта
- •3.4.4. Текстовые редакторы
- •3.4.5. Интегрированные системы
- •3.5. Прикладное программное обеспечение
- •4. Операционная система. Основные сведения
- •4.1. Операционные системы и файлы
- •4.2.3. Именование каталогов
- •4.2.4. Файловая структура
- •5. Программирование
- •5.1. Компьютерное решение задач. Основные этапы
- •5.1.1. Математическая формулировка и разработка методов решения задачи
- •5.1.2. Разработка алгоритма решения задачи
- •5.1.3. Разработка программы решения задачи. Отладка и тестирование программы
- •5.1.4. Решение поставленных задач на компьютере и анализ результатов
- •5.2. Алгоритмический язык программирования Basic
- •5.2.1. Основные понятия
- •5.2.2. Данные
- •5.2.3. Типы данных
- •5.2.4. Элементарные типы данных
- •5.2.5. Константы
- •5.2.6. Переменная. Оператор объявления переменных
- •5.2.7. Выражения
- •5.2.8. Арифметические выражения
- •5.2.9. Строковые выражения
- •"КазаньÈкгтуÈим.А.Н.Туполева"
- •5.2.10. Логические выражения
- •5.2.11. Оператор присваивания
- •5.2.12. Составные типы данных
- •5.2.13. Структуры. Оператор описания типа данных. Переменные структурного типа
- •5.2.14. Массивы. Переменные типа массива
- •5.2.15. Оператор вывода данных на экран
- •5.2.16. Операторы управления выводом информации на экран
- •5.2.17. Оператор ввода информации с клавиатуры
- •Input ИмяПерем1, ...., ИмяПеремN
- •123,3.1415E-3,"Казань"
- •5.2.18. Составные операторы, задающие последовательность действий
- •If Условие then
- •5.2.20. Оператор выбора
- •Input "введите номер сотрудника", n
- •5.2.21. Оператор цикла
- •5.2.22. Оператор цикла со счетчиком
1.4.9. Оператор цикла
Оператор цикла является составным оператором, используемым для реализации одного из способов построения алгоритмов - итерации (см.
1.4.2). Оператор цикла (циклический оператор) задает многократное выполнение заданных действий. Основная форма циклического оператора имеет вид:
циклпока УСЛОВИЕ
ОПЕРАТОР
конеццикла
и эквивалентна в неструктурированной форме следующему фрагменту записи:
Пункт 1. Определить истинность логического выражения УСЛОВИЕ.
Если оно истинно, то перейти к пункту 2, иначе перейти к пункту 3.
Пункт 2. ОПЕРАТОР.
Перейти к пункту 1.
Пункт 3. Перейти к следующему пункту алгоритма,
частью которого является данный фрагмент.
Циклический оператор определяет многократное выполнение действия, задаваемого оператором "ОПЕРАТОР". Действия повторяются до тех пор, пока истинно логическое выражение "УСЛОВИЕ". Как только оно становится ложным, выполнение циклического оператора прекращается.
1. Для конструирования циклического оператора используются два ключевых слова: "циклпока" и "конеццикла". Еще раз отметим необходимость применения отступов для большей наглядности записи.
2. "ОПЕРАТОР" может быть ни разу не выполнен, если окажется, что выражение "УСЛОВИЕ" ложно при первом же вхождении в цикл.
3. Предполагается, что при выполнении оператора "ОПЕРАТОР" изменяется состояния некоторых объектов, которые используются в выражении "УСЛОВИЕ", таким образом, что рано или поздно выражение "УСЛОВИЕ" станет ложным и выполнение циклического оператора прекратится. В противном случае, если выражение "УСЛОВИЕ" всегда будет оставаться истинным, произойдет так называемое "зацикливание" - бесконечное выполнение данного циклического оператора.
Использование циклического оператора проиллюстрируем на примере записи алгоритма нахождения остатка от деления двух целых положительных чисел a и b:
1 2 3 4 5 6 7 8 |
числовой объект A числовой объект B A ¬ a B ¬ b циклпока A ³ B A ¬ A - B конеццикла Выдать ответ: остатком является значение объекта с именем a |
Отметим, что данный алгоритм обладает свойством результативности, так как какими бы ни были первоначальные значения положительных чисел a и b, с каждым повторением внутреннего оператора в цикле значение объекта A уменьшается. Рано или поздно условие A ³ B станет ложным и выполнение прекратится. Например, проиллюстрируем выполнение алгоритма для двух целых положительных чисел 10 и 3 :
Последовательность выполнения операторов алгоритма. Номера соответствуют номерам |
Значения после выполнения оператора |
||
строк записи |
объект A |
объект B |
условие A ³ B |
1 |
? |
? |
? |
2 |
? |
? |
? |
3 |
10 |
? |
? |
4 |
10 |
3 |
истина |
5 |
10 |
3 |
истина |
6 |
7 |
3 |
истина |
7 |
7 |
3 |
истина |
5 |
7 |
3 |
истина |
6 |
4 |
3 |
истина |
7 |
4 |
3 |
истина |
5 |
4 |
3 |
истина |
6 |
1 |
3 |
ложь |
7 |
1 |
3 |
ложь |
1 |
1 |
3 |
ложь |
8 |
1 |
3 |
ложь |
Кроме вышеприведенной формы циклического оператора используются и некоторые другие варианты. Некоторые из них будут приведены позднее на примере конкретного языка программирования.
На этом завершим рассмотрение основных черт нашего псевдоязыка записи алгоритмов.