Здравствуйте,ясдавала 15 тестов и экзамен. Мне нужно сейчас посмотреть результаты тестов.Как это сдлеать? |
Формальные языки и грамматики
Выражение, записанное на метаязыке с помощью конечного (счетного) числа операций и операндов, называется регулярным выражением.
В формальных грамматиках рассматриваются три основные проблемы:
- проблема вхождения – построить алгоритм, который для каждого задаваемого слова выясняет, принадлежит ли оно языку, допускаемому данной грамматикой ;
- проблема анализа – построить алгоритм, который для каждого слова, допускаемого данной грамматикой, строит вывод этого слова;
- проблема оценки сложности алгоритма вывода (вычислений).
Если первые две задачи – более "грамматического" характера, то третья задача – более "алгоритмического" характера.
С появлением компьютеров повысились требования к точности и структурированности алгоритма. Для этих целей разрабатываются алгоритмические языки. Это формальный язык, формализованный язык, так как он включает в себя и математическую символику, например, числа, знаки операций, переменные, выражения и др.
Алгоритмический язык – средство записи алгоритмов для исполнения, изучения логики алгоритма. Основное отличие алгоритмического языка от языка программирования (хотя их часто отождествляют) состоит в том, что последний предназначен для записи и исполнения алгоритмов в виде, понятном и исполнимом ЭВМ.
Основные атрибуты языка алгоритмического (программирования):
- константы – постоянные величины (числовые, символьные, логические);
- символы – знаки, имеющие различные коды при переводе;
- идентификаторы – имена, именования различных объектов алгоритма;
- переменные – для именования изменяемых величин, параметров;
- метки – именования различных частей, участков алгоритмов;
- процедуры – функционально завершенные именованные части алгоритма;
- описания – соглашения о типе, характере, структуре используемых данных и стандартизации представления (описания) данных;
- комментарии – пояснения к различным участкам алгоритма;
- операторы – команды преобразования используемых, получаемых данных или изменения порядка их выполнения;
- выражения – записи, образуемые из постоянных, переменных и знаков операций и являющиеся источниками значений; сюда отнесем и функции стандартные (встроенные), с которыми можно оперировать, как и с переменными, в соответствии с их атрибутами.
Любые математические выражения записываются на алгоритмических языках по правилам не только математики, но и этого языка.
Пример. На алгоритмическом языке Паскаль математическое выражение
будет записано в виде y = exp(x*ln(2)) + 3*sin(x – 4/5)*ln(x + sqrt(x + 5)).
Пример. Выражению Паскаля w = sqrt(sqr(b + c) + 2/a*x/c) соответствует математическое выражение вида .
Вычисление значений выражений на алгоритмическом языке происходит в соответствии с принятым в языке старшинством операций.
Пример. Найдем b = ln(ехр(5)) + min(max(3,2),6) + mod(15,4)*int(1.99). Результат равен: b = 5 + min(3,6) + 3*1 = 5 + 3 + 3 = 11.
Первые ЭВМ поставлялись без программного обеспечения, и программисту приходилось описывать в программе все необходимое для ее работы. Разработка первых алгоритмических языков (например ForTran) упростила программирование, увеличила число людей, решающих на компьютере свои задачи без привлечения программистов, положила начало двум основным направлениям в программировании: прикладному и системному программированию, а затем и третьему – инструментальному программированию.
Прикладной программист (обычно на языках программирования высокого уровня) разрабатывает программы решения конкретных естественнонаучных задач.
Системный программист (обычно на языках программирования низкого уровня) разрабатывает программы автоматизации процесса написания и отладки прикладных программ, распределения ресурсов между прикладными программами, управления процессом прохождения таких прикладных программ на ЭВМ, например разрабатывает ОС.
Язык считается тем более высокого уровня, чем более он близок к языку естественному, и считается тем более низкого уровня, чем он ближе к языкам, реализуемым аппаратно, машинным.