Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

См. предыдущий вопрос




37. Укажите типы выражений, используемые в традиционных (императивных) языках программирования и опишите их структуру

Императивное программирование — это парадигма программирования, которая, в отличие от декларативного программирования, описывает процесс вычисления в виде инструкций, изменяющих состояние программы. Императивная программа очень похожа на приказы, выражаемые повелительным наклонением в естественных языках, то есть это последовательность команд, которые должен выполнить компьютер. Развитие языков программирования происходит по ряду направлений. С одной стороны, происходит значительное расширение возможностей традиционных (императивных) языков программирования, таких как FORTRAN, Pascal, C, которые иногда называют языками высокого уровня, так как они не связаны с кодом конкретной машины, но, тем не менее, они ориентированы на так называемую «архитектуру фон Неймана» и связаны с кодированием предварительно разработанного математического алгоритма решаемой задачи. При реализации программы на компьютере требуются программные средства для перевода ее в код конкретного компьютера – трансляторы. Все популярные языки программирования используют латинский алфавит, ряд специальных символов, которые имеются на клавиатуре, а также английские слова и выражения (real, integer, if, then, else, do и т.п.), представляющие собой кл ючевые, или зарезервированные слова. Ключевые слова (Keyword) используются в Фортране и имеют свое функциональное предназначение, находясь, как правило, в неисполняемой части программы (описательной). Зарезервированные слова (reserved word) могут использоваться только в контексте, предусмотренном правилами (семантикой) языка. Ряд языков (например, ADA) могут содержать так называемые предопределенные слова, значения которых могут переопределяться пользователями. Программы оперируют с объектами данных. Объект данных – комбинация данных, атрибутов, описывающих их свойства, и методов, раскрывающих их поведение. Объектам данных, а также программам или отдельным их частям и т.п. сопоставляются имена (или идентификаторы), правила образования которых несколько различны в разных языках. Все типы данных разделяются на две категории – на константы, не изменяемые в процессе работы программы, оформленные по определенным правилам, и переменные.

Все языки имеют три типа выражений:

Арифметические выражения задают порядок действий над элементами данных и состоят из операндов (константы, переменные и т.п.), круглых скобок и знаков операций, традиционных (с очень небольшими отличиями) для всех языков +, -, *, /. Для Фортрана и Бейсика в стандарте предусмотрены знаки возведения в степень – **, ^. Арифметические операции могут быть унарными (unary), содержащими один операнд – U**2, бинарными (binary), содержащими два операнда – a + b, и тернарными (ternary, три операнда) в языках С, С++ и Java.

Логические выражения (булевские) состоят из операндов (констант, переменных, элементов массивов и т.п.), логических операций (not, and, or и т.п.) и операций отноше­ния. Операции отноше­ния выполняют сравнение двух операндов, а с помощью логических операций составляются более сложные логические выражения. Результатом выполнения логических выра­жений являются значения True или False.

Символьные выражения (литерные) порождают значения, имеющие литерный тип данных.

Разделители – элементы любого языка программирования, предназначенные для разделения отдельных элементов выражений внутри строки, для разделения строк, отдельных фрагментов программ и т.п. В качестве разделителей используются пробелы, точки, запятые, двоеточия, точки с запятой, разнообразные скобки и т.п.

Операторы в алгоритмических языках могут быть: а) простыми (наиболее характерным оператором этого вида является оператор присваивания, он предписывает выполнить выражение, заданное в его правой части, и присвоить результат переменной, идентификатор которой расположен в левой части); б) ввода-вывода, в качестве которых наиболее часто используются термины read, write, print; в) структурными, или составными, которые представляют собой структуры, построенные из других операторов по строго определенным правилам (к таким операторам относятся условные операторы и операторы повтора).

Условные операторы и циклы: (.eq.(=);.ne.(<>);. gt.(>).lt.). В основе создаваемыхязыков, как правило, лежит некоторая основополагающая идея или, как говорят теоретики программирования, парадигма.

38. Перечислите типы операторов, используемые императивными языками программирования, рассмотрите различные варианты реализации условных и операторов повторения (на примере Паскаля)

Операторы в алгоритмических языках могут быть:

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

б) ввода-вывода, в качестве которых наиболее часто используются термины read, write, print;

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

На рисунке представлены разновидности структурных операторов (на примере Паскаля).

39. Основные принципы процедурно-ориентированного (модульного) программирования, разновидности модулей (на примере Фортрана)

Основная причина, по которой разрабатываемое ПО разбивается на модули, это борьба со сложностью ПО. М одульный стиль программирования заключается в том, что алгоритм любой исходной задачи представляется как композиция алгоритмов простых подзадач, последовательно выделенных из исходной задачи. Каждая подзадача может быть реализована с помощью функций и процедур или с помощью модулей. Принципы модульного программирования позволяют получать программные комплексы минимальной сложности. Принципы: а) усиление внутренних связей в каждом модуле (иначе принцип называется повышением прочности модуля); б) ослабление взаимосвязи между модулями (иначе этот принцип называется ослаблением сцепления модулей). В модуле определяются типы, данные, процедуры (подпрограммы subroutine, function), интерфейсы.

Структура модуля и пример:




Поделиться с друзьями:


Дата добавления: 2014-11-20; Просмотров: 323; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.