Файл: Основы алгоритмизации и программирования. Классификация языков программирования высокого уровня..pdf
Добавлен: 25.04.2023
Просмотров: 292
Скачиваний: 1
Логический язык программирования – это программирование в терминах логики. Логическое программирование представляет собой попытку возложить на программиста только постановку задачи, а поиски путей ее решения предоставить транслятору. Язык этой группы Prolog (Пролог) был создан в начале 70-х годов ХХ века Аланом Колмероэ. В его основу положена математическая модель теории исчисления предикатов[26]. Программа на этом языке строится из последовательности фактов и правил, а затем формулируется утверждение, которое Пролог будет пытаться доказать с помощью введенных правил. Человек только описывает структуру задачи, а внутренний «мотор» Пролога сам ищет решение с помощью методов поиска и сопоставления.[27]
Языки декларативного программирования
Язык функционального программирования:
Lisp (59 г. ХХ века) – позволяет обрабатывать большие объёмы текстовой информации.
Язык логического программирования:
Пролог (73 г. ХХ века) – язык искусственного интелекта. Программа на зяыке Пролог строится из последовательности фактов и правил, затем формулируется утверждения, которое в дальнейшем пытается доказать с помощью правил. Язык сам ищет решение с помощь методов поиска и сопоставления, которые в нем заложены.
Основные области применения Пролога:
- быстрая разработка прототипов прикладных программ;
- автоматический перевод с одного языка на другой;
- создание естественно-языковых интерфейсов для существующих систем;
- символьные вычисления для решения уравнений, дифференцирования и интегрирования;
- проектирование динамических реляционных баз данных;
- экспертные системы и оболочки экспертных систем;
- автоматизированное управление производственными процессами;
- автоматическое доказательство теорем;
- полуавтоматическое составление расписаний;
- системы автоматизированного проектирования, базирующееся на знаниях программное обеспечение;
- организация сервера данных или, точнее, сервера знаний, к которому может обращаться клиентское приложение, написанное на каком-либо языке программирования.
Области, для которых Пролог не предназначен: большой объем арифметических вычислений (обработка аудио, видео и т.д.); написание драйверов.
Изобретение языков программирования высшего уровня, а также их постоянное совершенствование и развитие, позволило человеку не только общаться с машиной и понимать ее, но использовать ЭВМ для сложнейших расчетов в области самолетостроения, ракетостроения, медицины и даже экономики.
Обобщающий вывод по первой главе.
На сегодняшний день, любое среднее и крупное предприятие, имеет в своем штате группу программистов, обладающими знаниями программирования различными языками, которые редактируют, изменяют, и модифицируют программы используемыми сотрудниками предприятия. Это говорит о том, что на рынке труда пользуются спросом обладающими знаниями и опытом работы с различными языками программирования.
В данной курсовой работе, мной были рассмотрены самые распространенные языки программирования, такие как: Фортран, Паскаль, Бейсик, которые используется для научных вычислений, для обучения программированию начинающих программистов.
Несмотря на то, что современный уровень развития языков программирования находятся на высоком уровне, тенденция их развития, а также развития информационных технологий в целом, складывается таким образом, что можно предположить, что в ближайшем будущем, человеческие познания в этой сфере, помогут произвести на свет языки, умеющие принимать, обрабатывать и передавать информации в виде мысли, слова, звука или жеста.
ГЛАВА 2. ПРИМЕРЫ В ВИДЕ ПРОГРАММ И РЯД ФУНКЦИЙ НА ЯЗЫКАХ ВЫСОКОГО УРОВНЯ ПРОГРАММИРОВАНИЯ
Для того чтобы понять выбранную тему курсовой работы, нужно «углубиться» в сами программы, написанные на языках программирования высокого уровня. Для этого следует рассмотреть следующие языки в виде программ и ряда функций:
- Perl,
- Php,
- Tcl/Tk,
- Vrml,
- Lisp,
- Prolog,
- Basic.
- Perl
Создание текстовых документов с использованием языка Perl представляет собой тривиальную задачу. Для начала необходимо удостовериться, что мы поместили правильный НТМL заголовок в начале текстового документа. Например, следующий скрипт создает простой текстовый документ, содержащий сообщение Hello, world:
print “Content-type: text/plain\n\n”;
print “Hello, world\n”;
Создание текстовых документов HTML также очень легко. Например, в следующем фрагменте текста создается простой документ HTML[28]:
print <<HTML;
Content-type: text/html
<HTML>
<HEAD><TITLE>Test Using HTML</TITLE></HEAD>
<BODY>
<H1><CENTER>
Hello, world
</CENTER></H1>
</BODY></HTML>
HTML
Эти примеры больше походят на исходные коды HTML, чем на программу на языке Perl. Действительно, если удалить несколько строк, можно получить HTML-файл. Эта иллюстративная программа использует свойства языка Perl, которые достаточно просты для понимания. Строка <<HTML и последняя строка с символами HTML представляют собой конструкцию, называемую «здесь-документ» (here document), которая перешла сюда из терминологии программирования shell для UNIX. «Здесь-документ» представляет собой просто несколько строк литералов. Perl обрабатывает «здесь-документ», как строку в двойных кавычках.
Поскольку «здесь-документ» делает исходный код на языке Perl легким для чтения, то использование такой конструкции является идеальным для создания HTML-документов. Используя конструкцию «здесь-документ», скрипт на языке Perl может не иметь символов цитирования и символов новой строки, и не должен содержать функций printf[29].
- Php
Язык PHP предназначен для веб-программирования, он сочетает в себе достоинства языков C и Perl и при этом весьма прост в изучении, обладает значительными преимуществами перед традиционными языками программирования. Синтаксис PHP очень напоминает синтаксис языка C и во многом заимствован из таких языков как Java и Perl. Программист С может очень быстро освоить язык PHP и сможет использовать его с максимальной эффективностью. В PHP есть практически все операторы и функции, имеющиеся в стандартном GNU С (или их аналоги), например есть циклы (while, for), операторы выбора (if, switch), функции работы с файловой системой и процессами (fopen, *dir, stat, unlink, popen, exec), функции ввода-вывода (fgets,fputs,printf) и множество других.
Синтаксис любого языка программирования гораздо легче "почувствовать" на примерах, нежели используя какие-то диаграммы и схемы. Поэтому приведем пример простейшего скрипта на PHP[30]:
<html>
<head>
<title>Пример</title>
</head>
<body>
<?
echo "Привет, я - скрипт PHP!";
?>
</body>
</html>
Это классический скрипт, с которого начинают изучение языка программирования, необходимо обратить внимание на то, что HTML-код корректно обрабатывается интерпретатором PHP.[31]
PHP устроен так, что любой текст, который расположен вне программных блоков, ограниченных «<? и ?>», выводится в браузер непосредственно. В этом и заключается главная особенность PHP, в отличие от Perl и C, где вывод осуществляется только с помощью стандартных операторов.
Типы данных в PHP. PHP поддерживает восемь простых типов данных:
Скалярный тип:
- boolean (двоичные данные)
- integer (целые числа)
- float (числа с плавающей точкой или 'double')
- string (строки)
Смешанный тип:
- array (массивы)
- object (объекты)
Специальный тип:
- resource (ресурсы)
- NULL ("пустые")
Псевдо типы:
- mixed (смешанные)
- number (числа)
- callback (обратного вызова)
- Tcl/Tk
Tcl — это аббревиатура от Tool Command Language. Команды выполняют различные действия, например: вывод строки, вычисление значения арифметического выражения или отображение компонентов (widget) на экране. В Tcl в виде команд представляются все действия, даже присвоение значений переменным и определение процедур. Для вызова команд в языке Tcl предусмотрены достаточно простые синтаксические конструкции. Все сложные действия выполняет интерпретатор, реализующий команды. Команда Tcl записывается в следующем виде:
команда параметр1 параметр2 параметр3...
Команда может представлять собой либо встроенную команду Tcl, либо процедуру. Имя команды отделяется от параметров с помощью одного или нескольких пробелов или знаков табуляции; те же символы используются для разделения параметров. Символ конца строки или точка с запятой завершают команду. В процессе интерпретации Tcl осуществляет группировку (объединение нескольких слов в один параметр) и подстановку (замену переменных и вызовов вложенных процедур). Действия интерпретатора Tcl по обработке команд можно разделить на три этапа[32].
• Группировка параметров,
• Подстановка вложенных команд, переменных и символов, которым предшествует обратная косая черта,
• Вызов команды. Интерпретация параметров самой командой.
Примеры подстановки
Если в составе команды присутствует несколько подстановок, не разделенных пробелами или знаками табуляции, группировка выполняется по умолчанию. Использовать двойные кавычки в этом случае не обязательно. В приведенной ниже команде осуществляется конкатенация значений переменных a, b и c.
set concat $a$b$c
Если же нам необходимо разделить значения переменных пробелами, тогда нужно использовать кавычки.
set concat "$a $b $c"
При работе с Tk имя компонента часто используется как имя команды. $text insert end "Hello, World!"
Таблица 1. Арифметические операции (приводятся по убыванию приоритета)[33]
|
-~! |
Унарный минус, побитовое отрицание, логическое отрицание |
|
*/% |
Умножение, деление, остаток от деления |
|
+ - |
Сложение, вычитание |
|
<< >> |
Сдвиг влево, сдвиг вправо |
|
< > <= >= |
Сравнение: меньше, больше, меньше или равно, больше или равно |
|
== != eq ne |
Равенство, неравенство, равенство строк (Tcl 8.4), неравенство строк (Tcl 8.4) |
|
& |
Побитовое И |
|
ˆ |
Побитовое исключающее ИЛИ (XOR) |
|
| |
Побитовое ИЛИ |
|
&& |
Логическое И |
|
|| |
Логическое ИЛИ |
|
x?y:z |
Если x, то y; иначе — z |
- Vrml
Язык VRML (Virtual Reality Modeling Language) предназначен для описания интерактивных 3D объектов и миров. Он был разработан для применения в сетях INTERNET и INTRANET. На сегодняшний день этот язык является сетевым стандартом и поддерживается ведущими мировыми производителями программного обеспечения. VRML дает разработчику возможность создавать статические и динамические 3D модели а также позволяет включать и обрабатывать в моделях гиперссылки на звуковые, видео, html файлы, другие VRML объекты. По своей структуре язык является объектно-ориентированным. Ему присущи такие характеристики объектного языка, как инкапсуляция и наследование. Полиморфизм в привычном понимании этого слова отсутствует[34].
Для описания простых VRML объектов подходит любой текстовый редактор, имеющий возможность сохранять файлы в обычном текстовом формате. Описание VRML-объектов (мира) хранится в текстовом файле с расширением wrl.[35]
Для воспроизведения VRML объектов необходим VRML браузер, поддерживающий язык VRML в спецификации 2.0 К популярным VRML-браузерам, поддерживающим Microsoft Internet Explorer, Opera и Mozila Firefox, относятся blaxxun Contact (www.blaxxun.com), Cortona3D Viewer (www.cortona3d.com), BS Contact VRML/X3D (www.bitmanagement.de), Octaga Player (www.octaga.com) и др.
Формы описываются с помощью узла - Shape, который объединяет геометрические свойства объектов ( форму,структуру ) и свойства, определяющие внешний вид этих объектов ( цвет, текстуру поверхности и т.д. . Геометрические свойства описываются с помощью поля geometry. Свойства, определяющие внешний вид описываются с помощью поля appearance.