Лабораторная работа №5. Алгоритмы и алгоритмизация
Понятия используемые в алгоритмических языках?
Каждое понятие алгоритмического языка подразумевает некоторую синтаксическую единицу (конструкцию) и определяемые ею свойства программных объектов или процесса обработки данных.
Понятие языка определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образуется данное понятие из других понятий и букв алфавита, а семантические правила определяют свойства данного понятия
Основными понятиями в алгоритмических языках обычно являются следующие:
Имена (идентификаторы) — употребляются для обозначения объектов программы (переменных, массивов, функций и др.).
Операции. Типы операций:
арифметические операции + , - , * , / и др. ;
логические операции и, или, не;
операции отношения < , > , <=, >= , = , <> ;
операция сцепки (иначе, "присоединения", "конкатенации") символьных значений друг с другом с образованием одной длинной строки; изображается знаком "+".
Данные — величины, обрабатываемые программой. Имеется три основных вида данных: константы, переменные и массивы.
Константы — это данные, которые зафиксированы в тексте программы и не изменяются в процессе ее выполнения.
Примеры констант:
числовые 7.5, 12;
логические да (истина), нет (ложь);
символьные "А", "+";
литерные "abcde", "информатика", "" (пустая строка).
Переменные обозначаются именами и могут изменять свои значения в ходе выполнения программы. Переменные бывают целые, вещественные, логические, символьные и литерные.
Массивы — последовательности однотипных элементов, число которых фиксировано и которым присвоено одно имя. Положение элемента в массиве однозначно определяется его индексами (одним, в случае одномерного массива, или несколькими, если массив многомерный). Иногда массивы называют таблицами.
Выражения — предназначаются для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций (например, exр(x)), объединенных знаками операций.
Выражения записываются в виде линейных последовательностей символов (без подстрочных и надстрочных символов, "многоэтажных" дробей и т.д.), что позволяет вводить их в компьютер, последовательно нажимая на соответствующие клавиши клавиатуры.
Различают выражения арифметические, логические и строковые.
Арифметические выражения служат для определения одного числового значения. Например, (1+sin(x))/2. Значение этого выражения при x=0 равно 0.5, а при x=р/2 - единице.
Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения — "истина" или "ложь" (да или нет). Рассмотрим в качестве примера логическое выражение x*x + y*y < r*r , определяющее принадлежность точки с координатами (x,y) внутренней области круга радиусом r c центром в начале координат. При x=1, y=1, r=2 значение этого выражения — "истина", а при x=2, y=2, r=1 — "ложь".
Значения строковых (литерных) выражений — текcты. В них могут входить литерные константы, литерные переменные и литерные функции, разделенные знаком операции сцепки. Например, А + В означает присоединение строки В к концу строки А. Если А = "куст ", а В = "зеленый", то значение выражения А+В есть "куст зеленый".
Операторы (команды). Оператор — это наиболее крупное и содержательное понятие языка: каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных. В состав операторов входят:
ключевые слова;
данные;
выражения и т.д.
Операторы подразделяются на исполняемые и неисполняемые. Неисполняемые операторы предназначены для описания данных и структуры программы, а исполняемые — для выполнения различных действий (например, оператор присваивания, операторы ввода и вывода, условный оператор, операторы цикла, оператор процедуры и др.).
Стандартные функции
При решении различных задач с помощью компьютера бывает необходимо вычислить логарифм или модуль числа, синус угла и т.д. Вычисления часто употребляемых функций осуществляются посредством подпрограмм, называемых стандартными функциями, которые заранее запрограммированы и встроены в транслятор языка.
Таблица стандартных функций школьного алгоритмического языка
Название и математическое обозначение функции | Указатель функции | |
Абсолютная величина (модуль) | | х | | abs(x) |
Корень квадратный | ![]() | sqrt(x) |
Натуральный логарифм | ln x | ln(x) |
Десятичный логарифм | lg x | lg(x) |
Экспонента (степень числа е " 2.72) | ex | exр(x) |
Знак числа x (-1,если х<0; 0,если x=0; 1,если x>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((exр(x)+1)**2) min(min(a,b),min(c,d)) |
Каждый язык программирования имеет свой набор стандартных функций.
страница 1 ... страница 3страница 4страница 5страница 6страница 7
скачать
Другие похожие работы: