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

Содержание документа

В описании языка должны быть изложены следующие сведения:

  1. Назначение и сфера применения языка.

  2. Чем является текст, написанный на этом языке. Иначе говоря, что на этом языке пишут: программы, макросы, документы определенного назначения и т.п.

  3. Основные синтаксические правила языка, т. е. типы элементов текста и допустимые способы их соединения друг с другом. Например, программа на алгоритмическом языке вроде Фортрана или Бейсика представляет собой последовательность операторов, а XML-документ — дерево вложенных друг в друга элементов.

  4. Логика исполнения программы или обработки документа. В разных языках она, вообще говоря, разная. Например, операторы в программе на алгоритмическом языке обрабатываются последовательно сверху вниз (если эта последовательность не изменяется явно посредством всевозможных операторов перехода и ветвления или неявно механизмами вроде исключений). И совсем по-другому происходит применение XSLT-стиля к XML-документу или CSS-стиля к HTML-документу.

  5. Конкретные элементы языка и связанные с ними синтаксические конструкции. В случае языка программирования это, как правило, операторы, в случае языка разметки всевозможные элементы или ключи.

  6. Встроенные функциональные блоки, например, стандартные функции (хотя это касается, скорее, определенного транслятора, фреймворка или парсера, нежели языка как такового).

Кроме того, в описании языка могут быть приведены:

  • рекомендации по стилю программирования (кодирования);

  • типология ошибок, методы их выявления и поиска;

  • методы оптимизации по быстродействию, памяти и прочим параметрам;

  • перечень рекомендованных трансляторов, фреймворков или парсеров.

И любые другие детали, знание которых помогает пользователю делать свою работу по возможности хорошо и быстро.

  1. Простые и сложные циклы

К циклическим относятся алгоритмы, в которых одно или несколько действий повторяются.

Эту повторяющуюся часть в алгоритме называют циклом, а операторы, которые повторяются, называют телом цикла. Циклы бывают простые и сложные.

Цикл называется сложным, если он содержит в себе еще один или несколько циклов. Цикл находящийся внутри называется вложенным (внутренним), а цикл, содержащий в себе др. циклы называется охватывающим (внешним). Чтобы сложные циклы работали нормально, необходимо чтобы внутренний цикл заканчивался раньше внешнего.

Все циклы можно разделить еще на циклы с заранее известным количеством шагов (повторений) и циклы с неизвестным количеством шагов (итерационные)

  1. Детерминированные циклы

Алгоритм циклической структуры - это алгоритм, в котором происходит многократное повторение одного и того же участка программы. Такие повторяемые участки вычислительного процесса называются циклами. Программа циклической структуры содержит один или несколько циклов. Различают детерминированные циклы с заранее известным числом повторений и итерационные циклы, в которых число повторений заранее неизвестно. Изменяющаяся в цикле переменная называется параметром цикла. Для организации цикла необходимо выполнить следующие действия:

1) задать перед циклом начальное значение параметра цикла;

2) изменять параметр перед каждым новым повторением цикла;

3) проверять условие повторения цикла;

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

В языке Паскаль существует 3 вида циклов:

1) цикл с параметром или цикл типа for,

2) цикл с предусловием или цикл типа while,

3) цикл с постусловием или цикл типа repeat ... until.

В цикле типа for число повторений известно заранее, в циклах типа while и repeat ... until число повторений цикла заранее неизвестно, производится проверка условия повторения цикла: в цикле типа while - перед циклом, в цикле типа repeat ... until - после его окончания. В циклах типов for и while повторяющяся часть (тело цикла) состоит из одного оператора, если требуется выполнить в цикле несколько операторов, они заключаются в операторные скобки begin ... end, образуя составной оператор. В цикле типа repeat ... until тело цикла помещается между зарезервированными словами языка (лексемами) repeat и until, операторные скобки не требуются, в названии цикла его тело условно обозначается тремя точками. С помощью цикла типа for удобно находить суммы, произведения, искать максимальные и минимальные значения и т.п. При нахождении суммы некоторой переменной, например S присваивается значение 0, затем в цикле к этой переменной прибавляется соответствующий член заданной последовательности. При нахождении произведения переменной присваивается значение 1, затем в цикле эта переменная умножается на общий член последовательности.

  1. Итерационные циклы

Алгоритм циклической структуры - это алгоритм, в котором происходит многократное повторение одного и того же участка программы. Такие повторяемые участки вычислительного процесса называются циклами. Программа циклической структуры содержит один или несколько циклов. Различают детерминированные циклы с заранее известным числом повторений и итерационные циклы, в которых число повторений заранее неизвестно.

1) задать перед циклом начальное значение параметра цикла;

2) изменять параметр перед каждым новым повторением цикла;

3) проверять условие повторения цикла;

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

В языке Паскаль существует 3 вида циклов:

1) цикл с параметром или цикл типа for,

2) цикл с предусловием или цикл типа while,

3) цикл с постусловием или цикл типа repeat ... until.

В цикле типа for число повторений известно заранее, в циклах типа while и repeat ... until число повторений цикла заранее неизвестно, производится проверка условия повторения цикла: в цикле типа while - перед циклом, в цикле типа repeat ... until - после его окончания. В циклах типов for и while повторяющяся часть (тело цикла) состоит из одного оператора, если требуется выполнить в цикле несколько операторов, они заключаются в операторные скобки begin ... end, образуя составной оператор. В цикле типа repeat ... until тело цикла помещается между зарезервированными словами языка (лексемами) repeat и until, операторные скобки не требуются, в названии цикла его тело условно обозначается тремя точками. С помощью цикла типа for удобно находить суммы, произведения, искать максимальные и минимальные значения и т.п. При нахождении суммы некоторой переменной, например S присваивается значение 0, затем в цикле к этой переменной прибавляется соответствующий член заданной последовательности. При нахождении произведения переменной присваивается значение 1, затем в цикле эта переменная умножается на общий член последовательности.

  1. Типовой приём алгоритмизации: определение суммы

Определение суммы или произведения членов числовой последовательности производится в цикле с заданным числом повторений или итерационном, в зависимости от того, известно число членов этого ряда, входящих в сумму (произведение), или оно будет определяться каким-то условием, проверяемым каждый раз после очередного увеличения суммы (произведения). При этом предварительно, перед открытием цикла, для вычисления суммы переменная, отслеживающая сумму, обнуляется (S=0), а при вычислении произ­ведения - прирав­нивается к 1 (Р=1). Сумма элементов одномерного массива А1, A2,...,AN вычисляется в цикле с заданным числом повторений путем прибавления каждого очередного элемента массива к сумме предыдущих элементов. При этом используется операция прис­ваивания для накопления суммы: S = S + АI,. Она указывает на необходимость прибавления к уже известному значе­нию суммы (пере­менная S в правой части арифметического выражения) значения очередного слагаемого AI и присваивания полученного значения в качестве нового значения переменной S.

Повторяя в цикле операцию присваивания, получаем процесс, реализующий вычисление требуемой суммы: S = S + А,+ А2 + А3 + ... + AN(pиc. 1.14a). В процессе вычисления суммы при первом прохождении цикла первоначальное значение переменной S прибавляется к значению первого элемента массива А,, следовательно, начальное значение S не должно влиять на конечный результат, что возможно, только если оно равно 0. Поэтому перед выполнением цикла переменной S присваивается нулевое значение.

  1. Типовой приём алгоритмизации: определение произведения

На рис. 1.146 приведена схема вычисления произведения элементов одномерного массива. Как видим, произведение элементов массива накапливается по аналогичной формуле Р = Р*АI, при обязательном присвоении переменной начального значения Р, равного 1 (Р=1).

  1. Типовой приём алгоритмизации: определение суммы положительных (отрицательных) чисел с заданной последовательностью

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