Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы информатика.doc
Скачиваний:
11
Добавлен:
31.07.2019
Размер:
1.14 Mб
Скачать
  1. Объект данных – определение, перечислите наиболее распространённые типы данных, включённые в состав императивных языков программирования (Фортран, Паскаль, Си)

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

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

Императивное программирование — это парадигма программирования, которая, в отличие от декларативного программирования, описывает процесс вычисления в виде инструкций, изменяющих состояние программы. Императивная программа очень похожа на приказы, выражаемые повелительным наклонением в естественных языках, то есть это последовательность команд, которые должен выполнить компьютер. Развитие языков программирования происходит по ряду направлений. С одной стороны, происходит значительное расширение возможностей традиционных (императивных) языков программирования, таких как 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.). В основе создаваемых языков, как правило, лежит некоторая основополагающая идея или, как говорят теоретики программирования, парадигма.