Непроцедурный язык программирования примеры

Понятие о непроцедурных языках программирования и парадигмах программирования. Изучение второго языка программирования

Непроцедурные (декларативные) языки — это языки, при использовании которых в программе в явном виде указывается, какими свойствами должен обладать результат, но не говорится, каким способом он должен быть получен. Непроцедурные языки делятся на две группы: функциональные и логические.

Декларативные языки программирования — это языки программирования высокого уровня, в которых операторы представляют собой объявления или высказывания в символьной логике. Типичным примером таких языков являются языки логического программирования (языки, основанные на системе правил и фактов). Характерной особенностью декларативных языков является их декларативная семантика. Основная концепция декларативной семантики заключается в том, что смысл каждого оператора не зависит от того, как этот оператор используется в программе. Декларативная семантика намного проще семантики императивных языков, что может рассматриваться как преимущество декларативных языков над императивными.

Парадиигма программиирования — это совокупность идей и понятий, определяющих стиль написания компьютерных программ (подход к программированию). Это способ концептуализации , определяющий организацию вычислений и структурирование работы, выполняемой компьютером.

Парадигма программирования не определяется однозначно языком программирования; практически все современные языки программирования в той или иной мере допускают использование различных парадигм ( мультипарадигмальное программирование ). Так, на языке Си , который не является объектно-ориентированным, можно работать в соответствии с принципами объектно-ориентированного программирования, хотя это и сопряжено с определёнными сложностями; функциональное программирование можно применять при работе на любом императивном языке, в котором имеются функции, и т. д.

1. Опишите основную структуру языка Паскаль

2. Укажите подразделы раздела описаний в программе

Читайте также:  Geekbrains программирование с нуля

3. Из каких элементов состоит алфавит языка Паскаль?

4. Укажите раздел операторов

5. Укажите операторы вывода

Критерии оценивания

Поляков К.Ю. Информатика. Углубленный уровень: учебник для 10 класса: в 2 ч., Ч.1/ К.Ю.Поляков, Е.А.Еремин. – М. БИНОМ. Лаборатория знаний, 2015 – 433 стр., ил — ISBN 978-5-9963-1416-4. — https://may.alleng.org/d/comp/comp111.htm

4. Электронные ресурсы: Youtube

Классификация языков программирования по поколениям и уровням. Что такое машинный код и ассемблер — https://www.youtube.com/watch?v=vtuqJKeaGmM

5.Внеаудиторная самостоятельная работа: Изучение второго языка программирования — презентация

6.Адрес почты: Выполненные задания присылать на электронную почту

Галкиной Г.С. — galkinag2020@gmail.com

Догадаевой Т.Ю. – dogadaevat@mail.ru

Дата добавления: 2020-11-23 ; просмотров: 1035 ; Мы поможем в написании вашей работы!

Источник

2.2.4. Непроцедурные языки

Непроцедурные языки составляют группу языков, описывающих организацию данных, обрабатываемых по фиксированным алгоритмам (табличные языки и генераторы отчетов), и языков связи с операционными системами.

Позволяя четко описывать как задачу, так и необходимые для её решения действия, таблицы решений дают возможность в наглядной форме определить, какие условия должны быть выполнены прежде чем переходить к какому-либо действию. Одна таблица решений, описывающая некоторую ситуацию, содержит все возможные блок-схемы реализаций алгоритмов решения.

Табличные методы легко осваиваются специалистами любых профессий.

Программы, составленные на табличном языке, удобно описывают сложные ситуации, возникающие при системном анализе.

Развитие языков программирования

Ассемблер

Язык Ассемблера – это символическое представление машинного языка. Он облегчает процесс программирования по сравнению с программированием в машинных кодах.

Программисту не обязательно употреблять настоящие адреса ячеек памяти с размещенными в них данными, участвующими в операции, и вычисляемые результаты, а также адреса тех команд, к которым программа не обращается.

Некоторые задачи, например, обмен с нестандартными устройствами обработки данных сложных структур невозможно решить с помощью языков программирования высокого уровня. Это под силу ассемблеру.

В принципе, язык Ассемблер является машинным языком. И программист реализующий какую-либо задачу на языках высокого уровня, с помощью Ассемблера может определить осмыслено ли решение данной задачи, с точки зрения использования ЭВМ.

Умея разобраться в распечатке языка ассемблера, дает возможность облегчить поиск ошибок в программах, т.к. некоторые языки являются компиляторами (см. п. 1.2.).

    1. Лисп Один из самых старых языков программирования Фортран был создан в 50-х гг. нашего века. Фортран и подобные ему языки программирования (Алгол, ПЛ/1) предназначались для решения вычислительных задач, возникающих в математике, физике, инженерных расчетах, экономике и т.п. Эти языки в основном работают с числами.

    Второй старейший язык программирования Лисп (List Information Symbol Processing), Дж. Маккарти в 1962 г. скорее для работы со строками символов, нежели для работы с числами. Это особое предназначение Лиспа открыло для программистов новую область деятельности, известную ныне, как «искусственный интеллект». В настоящее время Лисп успешно применяется в экспертных системах, системах аналитических вычислений и т.п.

    Обширность области возможных приложений Лиспа вызвала появление множества различных диалектов Лиспа. Это легко объяснимо: применение Лиспа для понимания естественного языка требует определенного набора базисных функций, отличных, например, от используемого в задачах медицинской диагностики.

    Существование множества различных диалектов Лиспа привело к созданию в начале 80-х гг. Common LISP Комитета, который должен был выбрать наиболее подходящий диалект Лиспа и предложить его в качестве основного. Этот диалект, выбранный Комитетом в 1985г., получил название Common LISP . В дальнейшем он был принят в университетах США, а также многими разработчиками систем искусственного интеллекта, в качестве основного диалекта языка Лисп.

    Язык программирования Лисп существенно отличается от других языков программирования, таких, как Паскаль, Си и т.п. Работа с символами и работа с числами как с основными элементами требует разных способов мышления.

    Первоначально Лисп был задуман как теоретическое средство для рекурсивных построений, а сегодня он превратился в мощное средство, обеспечивающее программиста разнообразной поддержкой, позволяющей ему быстро строить прототипы весьма и весьма серьезных систем.

    Профессор Массачусетского технологического института Дж. Самман заметил, что математическая ясность и предельная четкость Лиспа – это еще не все. Главное – Лисп позволяет сформулировать и запомнить «идиомы», столь характерные для проектов по искусственному интеллекту.

    Источник

    лекция_непроцедурные_яп

    Не-процедурные языки программирования Не-процедурные языки более эффективны для написания программ по поиску больших объёмов данных, а так же когда невозможно точно описать процесс решения задачи. К языкам не-процедурным относятся декларативные и объектно-ориентированные языки программирования. При использовании декларативных языков подробно описываются критерии, которым должен соответствовать искомый результат, имеющийся исходной структуры и связи между ними, но не указываются способы достижения (т.е. нет готового алгоритма). Делятся декларативные языки на две группы: 1. логические (например, Prolog ) 2. Функциональные ( Lisp ) При использовании логического программирования, разработчик задаёт совокупность определённых фактов , логических правил , отношений между ними в виде формул , создаёт запросы по искомой проблеме. Далее, система сама решает данную проблему, применяя механизмы логического вывода, основанные на математической логике . Программа, написанная на Prolog , состоит из двух частей: 1. Факты , совокупность которых составляет реляционную базу данных.

    2. Правила, состоящие из заголовка и подцелей. Функциональное программирование основано на формулировании задачи в качестве совокупности определённых функций . Здесь программа выглядит как набор уравнений, которые определяют функции и значение . Причём значения являются функциями от других значений . Объектно-ориентированное программирование . Данная методика появилась в конце 20 века, основное понятие здесь — объект . С помощью ООП создаётся окружение в виде большого кол-ва объектов, каждый из которых является независимым блоком. Блоки используют для решения задач, не вникая в принципы их внутреннего функционирования. Наиболее популярным сегодня языком ООП является C++ . По ориентации на класс задач По ориентации на класс задач языки делятся на: 1. Универсальные — нацеленные на решение широкого спектра задач ( Python, C++, Delphi ) 2. Специализированные — многие ЯП разрабатывались для решения строго определённого круга задач , с учётом специфики конкретной области. ( Экономика , WEB программирование , Скрипты , языки разметки , для работы с БД , для решения учебных задач ,

    Источник

Оцените статью