Скачать презентацию Кафедра 31 Информационных систем и технологий Дисциплина Скачать презентацию Кафедра 31 Информационных систем и технологий Дисциплина

5-3 Описание алгоритмического языка.ppt

  • Количество слайдов: 29

Кафедра № 31 Информационных систем и технологий Дисциплина ИНФОРМАТИКА Тема № 5 Основы алгоритмизации Кафедра № 31 Информационных систем и технологий Дисциплина ИНФОРМАТИКА Тема № 5 Основы алгоритмизации и программирования. семинар Занятие 3: Описание алгоритмического языка Учебные вопросы: 1. Алфавит языка программирования. 2. Типы данных и конструкция языка программирования. 3. Структура программы. 1

Литература: 1. Разработка прикладных программ на языке программирования ТУРБО-ПАСКАЛЬ. / Уч. пособие под ред. Литература: 1. Разработка прикладных программ на языке программирования ТУРБО-ПАСКАЛЬ. / Уч. пособие под ред. Комарова А. В. - Новогорск: АГЗ МЧС, 1998. 2. Фаронов В. В. Turbo Pascal 7. 0 Начальный курс. /Уч. пособие. - М. : Издательство «Нолидж» , 2002. Учебные цели: 1. Практически освоить разработку алгоритмов различных структур (линейных, разветвляющихся, циклических) в графическом виде. 2

Составные части и элементы алгоритмических языков. Алгоритмический язык - это совокупность алфавита, синтаксиса и Составные части и элементы алгоритмических языков. Алгоритмический язык - это совокупность алфавита, синтаксиса и семантики языка, предназначенная для описания процесса преобразования информации. Алфавит – набор основных символов, принятых в языке. Синтаксис языка (гр. syntaxis - составление) - это система правил образования самостоятельных элементов языка из символов, позволяющая однозначно описывать процесс переработки информации, т. е. синтаксис раскрывает формальную сторону образования элементов языка безотносительно к их смысловому содержанию.

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

Классификация алгоритмических языков Функциональные Операторные Непроцедурные Процедурные Машинноориентированные Машиннонезависимые Классификация алгоритмических языков Функциональные Операторные Непроцедурные Процедурные Машинноориентированные Машиннонезависимые

Функциональная программа представляет собой набор определений функций. Функции определяются через другие функции или рекурсивно Функциональная программа представляет собой набор определений функций. Функции определяются через другие функции или рекурсивно - через самих себя. Программируя на функциональном языке, программист не должен описывать порядок вычислений. Ему необходимо просто описать желаемый результат в виде системы функций. Функциональные языки программирования – Lisp, Clean.

Операторный язык – это такой способ кодирования алгоритма, в результате которого получается понятная для Операторный язык – это такой способ кодирования алгоритма, в результате которого получается понятная для компьютера запись алгоритма – программа. Непроцедурные языки составляют группу языков, описывающих организацию данных, обрабатываемых по фиксированным алгоритмам (табличные языки и генераторы отчетов), и языков связи с операционными системами. Smalltalk, QBE Программа на процедурном языке программирования состоит из последовательности операторов (инструкций), задающих процедуру решения задачи.

Паскаль (англ. Pascal) высокоуровневый язык программирования. Язык Паскаль был создан Никлаусом Виртом в 1968 Паскаль (англ. Pascal) высокоуровневый язык программирования. Язык Паскаль был создан Никлаусом Виртом в 1968 -69. Он был опубликован в 1970 году Виртом как небольшой и эффективный язык, чтобы способствовать хорошему стилю программирования, использовать структурное программирование и структурированные данные. Назван язык в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля. Является базой для большого числа других языков. Наиболее известной реализацией Паскаля, обеспечившая широкое распространение и развитие языка, является Turbo Pascal фирмы Borland, выросшая затем в объектный Паскаль для DOS (начиная с версии 5. 5) и Windows и далее в Delphi, в которой были внедрены значительные расширения языка.

Текст, записанный на языке программирования, непонятен компьютеру, поэтому требуется перевести его на машинный код. Текст, записанный на языке программирования, непонятен компьютеру, поэтому требуется перевести его на машинный код. Такой перевод - называется трансляцией, а выполняется она специальными программами – трансляторами. Основные задачи транслятора • Анализирует транслируемую программу, определяет ее правильность. • Генерирует выходную программу.

Транслятор - обслуживающая программа, преобразующая исходную программу, представленную на входном языке программирования, в рабочую Транслятор - обслуживающая программа, преобразующая исходную программу, представленную на входном языке программирования, в рабочую программу, представленную на объектном языке. Типы трансляторов: • Компиляторы; • Интерпретаторы; • Ассемблеры.

Компилятор Интерпретатор Ассемблер • Компилятор обеспечивает перевод на машинный язык сразу всего набора команд, Компилятор Интерпретатор Ассемблер • Компилятор обеспечивает перевод на машинный язык сразу всего набора команд, т. е. всей программы в целом. Паскаль, Си, Фортран. • Интерпретатор переводит команду или операторы входной программы по очереди и немедленно выполняет их. В отличие от компилятора, интерпретатор не порождает на выходе программу на машинном языке. Java Script, VB Script, Бейсик. • Переводит программу, написанную на автокоде. Язык высокого уровня Машинный модуль (*. exe) Исходный модуль (*. pas) трансляция

1 вопрос: Алфавит языка программирования Паскаль 1 вопрос: Алфавит языка программирования Паскаль

Алфавит представляет собой набор основных символов, принятых в языке. Основные символы Цифры Буквы Ограничители Алфавит представляет собой набор основных символов, принятых в языке. Основные символы Цифры Буквы Ограничители Логические значения Описатели Разделители Знаки операций

1) Арабские цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. 2) 1) Арабские цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. 2) Буквы латинского алфавита - 26 (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) и буквы русского алфавита (для отечественных ЭВМ) - 32 (33) А, Б, В, Г, Д, Е, Ж, З, И, Й, К, Л, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ч, Ш, Щ, Ъ, Ы, Ь, Э, Ю, Я. 3) Разделители: • Знаки препинания (‘. ’ точка, ‘, ’ запятая, ‘; ’ точка с запятой, ‘ ’ пробел, ‘: ’ двоеточие). • Скобки (‘( )’ круглые, ‘[ ]’ квадратные, ‘{ }’ фигурные), ‘'’ апостроф, операторные скобки (BEGIN - END). • Указатели следований (GOTO, IF, THEN, DO и т. д. ). 4) Знаки операций: • Знаки арифметических операций (‘+’ плюс, ‘-‘ минус, ‘*’ умножение, ‘/’ деление). • Знаки логических операций (AND, OR, NOT и т. п. ). • Знаки отношений (‘<’ меньше, ‘>’ больше, (‘<=’ меньше или равно, ‘>=’ больше либо равно, ‘=’ равно, ‘<>’ не равно). 5) Логические значения (TRUE, FALSE).

2 вопрос: Типы данных и конструкции языка программирования Паскаль. . 2 вопрос: Типы данных и конструкции языка программирования Паскаль. .

Конструкция – это минимальная смысловая структура языка, представляющая последовательность символов. Константы Служебные слова Указатели Конструкция – это минимальная смысловая структура языка, представляющая последовательность символов. Константы Служебные слова Указатели функций Переменные К КОНСТРУКЦИЯМ относят Указатели процедур

Все конструкции в программе должны иметь идентификаторы (имя). Виды идентификаторов: ü определяемые пользователем (задаваемые Все конструкции в программе должны иметь идентификаторы (имя). Виды идентификаторов: ü определяемые пользователем (задаваемые программистом); ü стандартные.

Идентификатор, даваемый пользователем, состоит из букв латинского алфавита и цифр. Обязательно начинается с буквы, Идентификатор, даваемый пользователем, состоит из букв латинского алфавита и цифр. Обязательно начинается с буквы, входящей в состав языка. Можно использовать _, нельзя пробел. В качестве идентификатора нельзя брать служебные слова и стандартные имена. Пример: Max, min, sum, N, a 1 – можно использовать в качестве идентификаторов; Real, string, program – нельзя использовать в качестве идентификаторов.

Стандартные идентификаторы используются для обозначения стандартных объектов (типов, констант, переменных, процедур и функций). ABS Стандартные идентификаторы используются для обозначения стандартных объектов (типов, констант, переменных, процедур и функций). ABS ARCTAN BOOLEAN CHAR COS SQR TRUE WRITELN идентификатор стандартной функции -"логический, булевский символьный -"-"истина писать с новой строки

Константами называются элементы данных, значения которых известны заранее и в процессе выполнения программы не Константами называются элементы данных, значения которых известны заранее и в процессе выполнения программы не изменяются. .

Переменные ‑ это данные, которые могут изменять свои значения в процессе выполнения программы. Переменные ‑ это данные, которые могут изменять свои значения в процессе выполнения программы.

Стандартные типы данных Тип переменной Описание типа Диапазон Целые типы Integer Shot. Int Long. Стандартные типы данных Тип переменной Описание типа Диапазон Целые типы Integer Shot. Int Long. Int целое со знаком и ноль Byte Word короткое целое без знака -32 768 … +32 767 короткое целое со знаком -128 … 127 длинное целое со знаком -2 147 483 648 … 2 147 483 647 0 … 255 целое без знака 0 … 65 535 Вещественные типы Real Single Double дробные (вещественные) числа с дробной частью до 11 значащих цифр дробный тип одинарной точности (7 -8 цифр) дробный тип двойной точности (15 -16 цифр) 2. 9 е-39 … 1. 7 е+38 1. 5 е-45 … 3. 4 е+38 5. 0 е-324 … 1. 7 е+308 Другие типы Char Boolean String символьный (литерный) тип, обозначающий отдельные символы. логические переменные, принимающие только True (истина) или одно из двух значений: False (ложь). строковый тип, использующий строковые данные. Длина строки от 0 до 255 символов.

Определяемые программистом типы Перечисляемый тип задается перечислением всех значений, которые может принимать переменная данного Определяемые программистом типы Перечисляемый тип задается перечислением всех значений, которые может принимать переменная данного типа. Для объявления нового типа используется служебное слово Type. В данном примере переменные М 1, М 2, М 3 могут принимать только значения A, B, C, D.

Интервальный тип позволяет задавать две константы, определяющие границы диапазона для заданной переменной. Интервальный тип позволяет задавать две константы, определяющие границы диапазона для заданной переменной.

Служебные (ключевые) слова - это слова, которые в языке имеют определенное смысловое значение и Служебные (ключевые) слова - это слова, которые в языке имеют определенное смысловое значение и которые не могут использоваться в программе ни для каких других целей. AND ARRAY BEGIN CASE CONST DIV DO DOWNTO ELSE END FILE FOR FUNCTION GOTO IF И МАССИВ НАЧИНАТЬ В СЛУЧАЕ ПОСТОЯННЫЙ ДЕЛЕНИЕ (БЕЗ ОСТАТКА) ВЫПОЛНИТЬ ВНИЗ ИНАЧЕ КОНЕЦ ФАЙЛ ДЛЯ ФУНКЦИЯ ПЕРЕЙТИ К ЕСЛИ GOTO IF LABEL NOT OF OR PROCEDURE PROGRAM REPEAT THEN TO TYPE UNTIL VAR WHILE ПЕРЕЙТИ К ЕСЛИ МЕТКА НЕ РОД. ПАДЕЖ, ИЗ ИЛИ ПРОЦЕДУРА ПРОГРАММА ПОВТОРЯТЬ ТОГДА К, В, НА ТИП ДО, ПОКА НЕ ПЕРЕМЕННАЯ (ВЕЛИЧИНА) ПОКА

3 вопрос: Структура программы на языке программирования Паскаль. 3 вопрос: Структура программы на языке программирования Паскаль.

Блок объявления данных VAR - переменные CONST - константы LABEL - метки TYPE - Блок объявления данных VAR - переменные CONST - константы LABEL - метки TYPE - типы FUNCTION, PROCEDURE - подпрограммы

В начале программы находится заголовок, состоящий из служебного слова PROGRAM и произвольного имени программы В начале программы находится заголовок, состоящий из служебного слова PROGRAM и произвольного имени программы Name, задаваемого пользователем. Имя может состоять из латинских букв, цифр и знака подчеркивания; начинается должно только с латинской буквы. Заголовок завершается знаком "; ". Тело программы ‑ это текст основной программы. Тело программы начинается служебным словом BEGIN и заканчивается словом END. В конце программы обязательно ставится точка. Знак "; " является разделителем всех операторов, списков, строк в программе. Комментарии ‑ это пояснительный текст пользователя (программиста), который можно записать в любом месте программы. Текст комментария ограничен символами { } или (* *). Комментарии – необязательный компонент программы.

Program pr_1; Var x, y, z: Real; Begin Writeln (‘Введите два числа’); Readln(x, y); Program pr_1; Var x, y, z: Real; Begin Writeln (‘Введите два числа’); Readln(x, y); Z: = Sqr(x)+Sqr(y); Writeln (‘Z=‘, z: 3: 1); End. Начало x, y Z=x 2+y 2 z Конец