Реферат "ОБЩИЕ КОНСТРУКЦИИ АЛГОРИТМИЧЕСКИХ ЯЗЫКОВ"
Реферат "ОБЩИЕ КОНСТРУКЦИИ АЛГОРИТМИЧЕСКИХ ЯЗЫКОВ"
Алгоритмический язык программирования — формальный язык, используемый для записи, реализации и изучения алгоритмов. В отличие от большинства языков программирования, алгоритмический язык не привязан к архитектуре компьютера, не содержит деталей, связанных с устройством машины.
Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Просмотр содержимого документа
«Реферат "ОБЩИЕ КОНСТРУКЦИИ АЛГОРИТМИЧЕСКИХ ЯЗЫКОВ"»
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ«МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ М. Е. ЕВСЕВЬЕВА»
Физико-математический факультет
Кафедра информатики и вычислительной техники
РЕФЕРАТ
ОБЩИЕ КОНСТРУКЦИИ АЛГОРИТМИЧЕСКИХ ЯЗЫКОВ: АЛФАВИТ, ВЕЛИЧИНА (ТИП, ИМЯ И ЗНАЧЕНИЕ). ВЫРАЖЕНИЕ. ТИП ВЫРАЖЕНИЯ. АРИФМЕТИЧЕСКОЕ ВЫРАЖЕНИЕ. СИМВОЛЬНОЕ ВЫРАЖЕНИЕ. ЛОГИЧЕСКОЕ ВЫРАЖЕНИЕ. СТАНДАРТНЫЕ ФУНКЦИИ. СТРУКТУРА ПРОГРАММЫ.
Автор работы
студентка 5 курса группы МДФ-117 ________________________ А. Н. Родькина
Направление подготовки 44.03.05 Педагогическое образование.
Профиль Физика. Информатика
Руководитель работы
канд. физ.-мат. наук, доцент__________________________ Т. В. Кормилицына
Оценка ____________________
Саранск 2021
Введение
Алгоритмический язык программирования — формальный язык, используемый для записи, реализации и изучения алгоритмов. В отличие от большинства языков программирования, алгоритмический язык не привязан к архитектуре компьютера, не содержит деталей, связанных с устройством машины.
Для изучения основ алгоритмизации применяется так называемый Русский алгоритмический язык (школьный алгоритмический язык), использующий понятные школьнику слова на русском языке.
Алголо-подобный алгоритмический язык с русским синтаксисом был введён в употребление академиком А. П. Ершовым в середине 1980-х годов, в качестве основы для «безмашинного» курса информатики.
Алфавит языка
Обычный разговорный язык состоит из четырех основных элементов: символов, слов, словосочетаний и предложений. Алгоритмический язык содержит подобные элементы, только слова называют элементарными конструкциями, словосочетания - выражениями, предложения - операторами. Алгоритмический язык (как и любой другой язык), образуют три его составляющие: алфавит, синтаксис и семантика.
Алфавит – это фиксированный для данного языка набор основных символов, т. е. «букв», из которых должен состоять любой текст на этом языке – никакие другие символы в тексте не допускаются.
Синтаксис – это правила построения фраз, позволяющие определить, правильно или неправильно написана та или иная фраза.
Семантика определяет смысловое значение предложений языка. Являясь системой правил истолкования отдельных языковых конструкций, семантика устанавливает, какие последовательности действий описываются теми или иными фразами языка и, в конечном итоге, какой алгоритм определен данным текстом на алгоритмическом языке.
Основными понятиями в языках программирования обычно являются алфавит языка, константы, переменные, встроенные функции, логические и арифметические выражения.
Алфавит языка включает:
• буквы латинского алфавита от A до Z (строчные и прописные)
• буквы русского алфавита используются только для записи текстовых констант и комментариев к программе.
Величина (тип, имя, значение)
Термин величина, который используется в алгоритмическом языке, ввел Андрей Петрович Ершов, заимствовав его из математики и физики, считая, что так школьникам будет проще для понимания. В производственных языках программирования обычно используется термин переменная, который все чаще вытесняется термином объект. При этом в объектно-ориентированном программировании говорят про объект и состояние объекта.
Для того чтобы информацию можно было запоминать, изменять и использовать, в алгоритмическом языке используются величины. Каждая величина имеет имя (обозначение), значение и тип.
Во время выполнения алгоритма в каждый конкретный момент времени величина может иметь какое-то значение(например, 3 или -502,78) либо ее значение может быть не определено(к данному моменту не вычислено). С точки зрения ЭВМ: значение величины – это содержимое соответствующей ей ячейки памяти.
С целью рационального распределения памяти и дополнительного контроля за правильностью программ, величины распределяются по типам. Тип, к которому принадлежит данная величина, задействованная в некотором алгоритме, зависит от того, какие значения возможны для нее в указанном алгоритме. От типа величины зависит размер выделяемой ей ячейки памяти.
Если в ходе выполнения данного алгоритма значением величины может быть только целое число, то говорят, что эта величина в данном алгоритме имеет целый тип (обозначается служебным словом цел). В памяти такой величине отводится ячейка меньшего размера. Заметим, кстати, что по правилам алгоритмического языка в цикле «n раз» и в цикле «для» в качестве их параметров можно использовать только величины этого типа.
Если в ходе выполнения данного алгоритма значением величины может быть не только целое, но и «дробное» число, то говорят, что эта величина в данном алгоритме имеет вещественный тип (обозначается служебным словом вещ). В памяти такой величине отводится ячейка большего размера. Встречаются также величины и других типов: символьного, логического и т.д.
Для того чтобы ЭВМ могла работать с величиной, ей необходимо ее описание. Описать величину - значит указать ее тип и имя (например, цел n).
Величины, используемые в промежуточных вычислениях (т.е. не являющиеся ни аргументами, ни результатами алгоритма), описываются в строке за словом нач. Например:
Алг график (арг вещ a,b, цел n) нач цел k, m, l, вещ x,y
и т.д.
Все величины в алгоритме разделяют на постоянные (константы) и переменные. Константа не может изменять свои значения в процессе работы алгоритма. Переменная может приобретать различные значения, которые сохраняются до тех пор, пока она не получит новое значение. Переменным величинам назначают имена. Таким образом, переменная — это именуемая величина, которая в процессе выполнения алгоритма может приобретать и хранить различные значения.
В алгоритмическом языке не существует специальных правил именования переменных. Однако их названия не должны совпадать со служебными словами алгоритмического языка. Во многих языках программирования для имен можно использовать только латинские буквы, цифры, знак подчеркивания. Имена обязательно должны начинаться с буквы, при этом строчные и прописные буквы в именах не различаются. В одном алгоритме не могут существовать разные объекты с одинаковыми именами. Все имена являются уникальными. Имена переменных и констант стараются выбирать так, чтобы они напоминали их смысл. Например, имена переменных и констант: S, p12, result, итог.
При представлении алгоритма на алгоритмическом языке именуются не только величины, но и сам алгоритм, и другие объекты. Имя алгоритма выбирают так же, как и имена переменных.
Величина — переменная, с которой связывается определенное множество значений. Этой величине присваивается имя (в языках программирования его называют идентификатор).
Выражение
Выражения – элементы языка, которые предназначаются для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций, объединенных знаками операций. Выражения записываются в виде линейных последовательностей символов (без подстрочных и надстрочных символов, «многоэтажных» дробей и т. д.), что позволяет вводить их в компьютер, последовательно нажимая на соответствующие клавиши клавиатуры.
Различают выражения арифметические, логические и строковые.
Арифметические выражения служат для определения одного числового значения. Арифметические выражения записываются по следующим правилам:
1. Нельзя опускать знак умножения между сомножителями и ставить рядом два знака операций.
2. Индексы элементов массивов записываются в скобках.
3. Операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, потом умножение и деление и в последнюю очередь - сложение и вычитание.
4. Операции одного старшинства выполняются слева направо.
Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения – «истина» или «ложь» (да или нет).
В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения и логические операции.
Значения строковых выражений - тексты. В них могут входить строковые константы, строковые переменные и строковые функции, разделенные знаком операции конкатенации.
Стандартные функции
Функция – это программная единица, которая может быть употреблена в выражении. Функция прямо возвращает величину, которая используется при вычислении этого выражения, и, кроме того, может возвращать величины через параметры.
Процесс разработки много модульных программ эффективнее, особенно если разрабатывается программа большого размера, когда над реализацией проекта может работать несколько программистов, каждый из которых имеет возможность модифицировать фрагменты программы, не мешая работе остальных.
Подпрограммы и функции позволяют создавать большие структурированные программы, которые можно делить на части. Это дает преимущества в следующих ситуациях:
1. Если программа большая, разделение ее на части облегчает создание, тестирование и ее сборку.
2. Если программа большая и повторная компиляция всего исходного текста занимает много времени, разделение ее на части экономит время компиляции.
3. Если процедуру надо использовать в разных случаях разным образом, можно записать ее в отдельный файл и скомпилировать отдельно.
Название и математическое обозначение функции
Указатель функции
Абсолютная величина (модуль)
| х |
abs(x)
Корень квадратный
sqrt(x)
Натуральный логарифм
ln x
ln(x)
Десятичный логарифм
lg x
lg(x)
Экспонента (степень числа е ~ 2.72)
ex
exp(x)
Знак числа x ( - 1, если х 0)
sign x
sign(x)
Целая часть х (т.е. максимальное целое число,не превосходящее х)
int(x)
Минимум из чисел х и y
min(x,y)
Максимум из чисел х и y
max(x,y)
Частное от деления целого х на целое y
div(x,y)
Остаток от деления целого х на целое y
mod(x,y)
Случайное число в диапазоне от 0 до х - 1
rnd(x)
Синус (угол в радианах)
sin x
sin(x)
Косинус (угол в радианах)
cos x
cos(x)
Тангенс (угол в радианах)
tg x
tg(x)
Котангенс (угол в радианах)
ctg x
ctg(x)
Арксинус (главное значение в радианах)
arcsin x
arcsin(x)
Арккосинус (главное значение в радианах)
arccos x
arccos(x)
Арктангенс (главное значение в радианах)
arctg x
arctg(x)
Арккотангенс (главное значение в радианах)
arcctg x
arcctg(x)
В качестве аргументов функций можно использовать константы, переменные и выражения. Например:
sin ( 3.05 ) min ( a, 5)
sin ( x ) min ( a, b )
sin ( 2 * y + t / 2 ) min ( a + b , a * b )
sin((exp(x) + 1) ** 2) min(min(a, b), min(c, d))
Каждый язык программирования имеет свой набор стандартных функций.
Структура программы
Для записи алгоритмов на школьном алгоритмическом языке используется некоторое ограниченное число слов, смысл и способ употребления которых заданы раз и навсегда. Это так называемые служебные слова: алг (алгоритм), дано, надо, нач (начало), кон (конец), арг (аргумент), рез (результат) и др. При записи алгоритмов в книгах служебные слова выделяются жирным шрифтом, в тетради и на доске —подчёркиванием.
В общем виде программу на школьном алгоритмическом языке можно представить так:
алг (аргумент и результат)
дано условия применимости алгоритма
надо цель выполнения алгоритма
нач описание промежуточных величин
последовательность команд (тело алгоритма)
кон
В первой строке после команды алг вы указываете название вашей программы (алгоритма). Далее для нашего удобства мы можем описать данные задачи и что необходимо получить после выполнения нашего алгоритма. Строка 4 указывает на начало алгоритма, после команды нач и до команды кон необходимо описать алгоритм (записать команды для исполнителя, которые будут выполняться последовательно).
Команды алгоритмического языка:
Команда
Запись
Пример
Ввод данных
ввод имена переменных
ввод N, K, PP
Вывод
вывод тексты, имена величин, выражения
вывод N, K, PP
Присваивания (служит для задания значения величин)
имя величины:= выражение
K:=1
Цикл
нцпока условие
тело цикла (последовательность команд)
кц
нцдля I от A до B
тело цикла (последовательность команд)
кц
нцпока K0
K:=K-1
M:=M+1
Кц
нцдля N от 1 до 5
Z:=Z/2
I:=I+2
кц
Условие «если»
если условие
то серия 1
иначе серия 2
всё
если условие
то серия 1
всё
если К0
то M:=K
иначе M:=-K
всё
если K
то K:=-K
всё
Заключение
Основные преимущества алгоритмических языков перед машинными таковы:
алфавит алгоритмического языка значительно шире алфавита машинного языка, что существенно повышает наглядность текста программы;
набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;
формат предложений достаточно гибок и удобен для использования, что позволяет с помощью одного предложения задать достаточно содержательный этап обработки данных;
требуемые операции задаются с помощью общепринятых математических обозначений;
данным в алгоритмических языках присваиваются индивидуальные имена, выбираемые программистом;
в языке может быть предусмотрен значительно более широкий набор типов данных по сравнению с набором машинных типов данных.
Таким образом, алгоритмические языки в значительной мере являются машинно–независимыми. Они облегчают работу программиста и повышают надежность создаваемых программ.
Список использованных источников
Борисенко, В. В. Основы программирования : учебное пособие / В. В. Борисенко. – Москва : Интернет-Университет Информационных Технологий (ИНТУИТ), 2005. – 328 с. – (Основы информатики и математики). – Режим доступа: по подписке. – URL : https://biblioclub.ru/index.php?page=book&id=232996 (дата обращения: 18.10.2021). – ISBN 5-9556-0039-6. – Текст : электронный.
Зюзьков, В. М. Программирование : учебное пособие / В. М. Зюзьков ; Томский Государственный университет систем управления и радиоэлектроники (ТУСУР). – Томск : Эль Контент, 2013. – 186 с. : ил. – Режим доступа: по подписке. – URL: https://biblioclub.ru/index.php?page=book&id=480616 (дата обращения: 18.10.2021). – Библиогр. в кн. – ISBN 978-5-4332-0141-5. – Текст : электронный.
Лубашева, Т. В. Основы алгоритмизации и программирования : учебное пособие : [12+] / Т. В. Лубашева, Б. А. Железко. – Минск : РИПО, 2016. – 378 с. : ил. – Режим доступа: по подписке. – URL : https://biblioclub.ru/index.php?page=book&id=463632(дата обращения: 18.10.2021). – Библиогр. в кн. – ISBN 978-985-503-625-9. – Текст : электронный.
Хиценко, В. П. Основы программирования : учебное пособие / В. П. Хиценко ; Новосибирский государственный технический университет. – Новосибирск : Новосибирский государственный технический университет, 2015. – 83 с. : схем. – Режим доступа: по подписке. – URL:https://biblioclub.ru/index.php?page=book&id=438365(дата обращения: 18.10.2021). – Библиогр. в кн. – ISBN 978-5-7782-2706-4. – Текст : электронный.
Черпаков, И. В. Основы программирования : учебник и практикум для вузов / И. В. Черпаков. — Москва : Издательство Юрайт, 2021. — 219 с. — (Высшее образование). — ISBN 978-5-9916-9983-9. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/469570 (дата обращения: 28.12.2021).