Школьный алгоритмический язык Алгоритмизация
Языки – русский, иностранный… Правила
Основные служебные слова Алг (алгоритм) Арг (аргумент) Рез (результат) Нач (начало) Кон (конец) Цел (целый) Вещ (вещественный) Сим (символьный) Лит (литерный) Лог (логический) Таб (таблица) Нц (начало цикла) Кн (конец цикла) Длин (длина)
Основные служебные слова Дано Надо если то Иначе Все Пока Для От До Знач И Или Да Нет При Выбор Ввод Вывод утв
Общий вид алгоритма: алг название алгоритма (аргументы и результаты) дано условия применимости алгоритма надо цель выполнения алгоритма нач описание промежуточных величин | последовательность команд (тело алгоритма) кон заголовок Тело
В предложении алг после названия алгоритма в круглых скобках указываются характеристики (арг, рез) и тип значения (цел, вещ, сим, лит или лог) всех входных (аргументы) и выходных (результаты) переменных. алг Корни Кв Ур ( арг вещ а, b, c, рез вещ x1, x2, рез лит t ) алг Исключить элемент ( арг цел N, арг рез вещ таб А[1:N] )
Пример записи алгоритма на АЯ алг Сумма квадратов (арг цел n, рез цел S) дано | n > 0 надо | S = 1*1 + 2*2 + 3* n*n нач цел i ввод n; S:=0 нц для i от 1 до n S:=S+i*i кц вывод "S = ", S кон
Базовые алгоритмические структуры Следование Ветвление Цикл.
1. Базовая структура "следование". алгоритмический язык действие 1 действие действие n Язык блок-схем
2. Базовая структура "ветвление". Структура ветвление существует в четырех основных вариантах: если то; если тоиначе; выбор; выбор иначе.
если то алгоритмический язык если условие то действия все Язык блок-схем
если то алгоритмический язык если x > 0 то y := sin(x) все Язык блок-схем
если тоиначе алгоритмический язык если условие то действия 1 иначе действия 2 все Язык блок-схем
если тоиначе алгоритмический язык если a > b то a := 2*a; b := 1 иначе b := 2*b все Язык блок-схем
выбор алгоритмический язык выбор при условие 1: действия 1 при условие 2: действия при условие N: действия N все Язык блок-схем
выбор алгоритмический язык выбор при n = 1: y := sin(x) при n = 2: y := cos(x) при n = 3: y := 0 все Язык блок-схем
выбор иначе алгоритмический язык выбор при условие 1: действия 1 при условие 2: действия при условие N: действия N иначе действия N+1 все Язык блок-схем
выбор иначе алгоритмический язык выбор при a > 5: i := i+1 при a = 0: j := j+1 иначе i := 10; j:=0 все Язык блок-схем
3. Базовая структура "цикл" Алгоритмический язык нц пока условие тело цикла (последовательность действий) кц Цикл типа пока. Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока. Язык блок-схем
Алгоритмический язык нц пока i <= 5 S := S+A[i] i := i+1 кц Язык блок-схем
Алгоритмический язык нц для i от i1 до i2 тело цикла (последовательность действий) кц Цикл типа для. Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне. Язык блок-схем
Алгоритмический язык нц для i от 1 до 5 X[i] := i*i*i Y[i] := X[i]/2 кц Язык блок-схем
Какие компоненты образуют алгоритмический язык? Алгоритмический язык (как и любой другой язык) образуют три его составляющие: алфавит синтаксис семантика
Алфавит это фиксированный для данного языка набор основных символов, т.е. "букв алфавита", из которых должен состоять любой текст на этом языке никакие другие символы в тексте не допускаются.
Синтаксис это правила построения фраз, позволяющие определить, правильно или неправильно написана та или иная фраза. Точнее говоря, синтаксис языка представляет собой набор правил, устанавливающих, какие комбинации символов являются осмысленными предложениями на этом языке.
Семантика определяет смысловое значение предложений языка. Являясь системой правил истолкования отдельных языковых конструкций, семантика устанавливает, какие последовательности действий описываются теми или иными фразами языка и, в конечном итоге, какой алгоритм определен данным текстом на алгоритмическом языке.
Понятие языка определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образуется данное понятие из других понятий и букв алфавита, а семантические правила определяют свойства данного понятия
Основные понятия 1. Имена (идентификаторы) употребляются для обозначения объектов пpогpаммы (переменных, массивов, функций и др.). 2. Операции. Типы операций: арифметические операции +,, *, / и др. ; логические операции и, или, не ; операции отношения, =, =, <> ; операция сцепки (иначе, "присоединения", "конкатенации" ) символьных значений дуг с другом с образованием одной длинной строки; изображается знаком "+".
3. Данные величины, обрабатываемые пpогpаммой. Имеется три основных вида данных: константы, переменные и массивы. Константы это данные, которые зафиксированы в тексте программы и не изменяются в процессе ее выполнения. Пpимеpы констант: числовые 7.5, 12 ; логические да (истина), нет (ложь); символьные (содержат ровно один символ) "А", "+" ; литерные (содержат произвольное количество символов) "a0", "Мир", "" (пустая строка). Пеpеменные обозначаются именами и могут изменять свои значения в ходе выполнения пpогpаммы. Пеpеменные бывают целые, вещественные, логические, символьные и литерные. Массивы последовательности однотипных элементов, число которых фиксировано и которым присвоено одно имя. Положение элемента в массиве однозначно определяется его индексами (одним, в случае одномерного массива, или несколькими, если массив многомерный). Иногда массивы называют таблицами.
4. Выpажения предназначаются для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций (напpимеp, exp(x)), объединенных знаками операций. Выражения записываются в виде линейных последовательностей символов (без подстрочных и надстрочных символов, "многоэтажных" дробей и т.д.), что позволяет вводить их в компьютер, последовательно нажимая на соответствующие клавиши клавиатуры. Различают выражения арифметические, логические и строковые. Арифметические выражения служат для определения одного числового значения. Например, (1+sin(x))/2. Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения "истина" или "ложь" (да или нет). Cтроковые (литерные) выражения, значениями которых являются тексты.
5. Операторы (команды). Оператор это наиболее крупное и содержательное понятие языка: каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных. В состав опеpатоpов входят: ключевые слова; данные; выражения и т.д.
Таблица стандартных функций алгоритмического языка Название и математическое обозначение функции Указатель функции Абсолютная величина (модуль)| х |abs(x) Корень квадратный sqrt(x) Натуральный логарифм ln x ln(x) Минимум из чисел х и ymin(x,y) Максимум из чисел х и ymax(x,y) Частное от деления целого х на целое y div(x,y) Остаток от деления целого х на целое y mod(x,y)