Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОАиП.doc
Скачиваний:
16
Добавлен:
15.11.2018
Размер:
435.2 Кб
Скачать

1. Дайте определение следующим понятиям: алгоритм, программа, алгоритмический язык, транслятор, компилятор, интерпретатор.

Алгоритм - это четкое описание последовательности действий, которые необходимо выполнить для решения поставленной задачи.

Программа – алгоритм, записанный на языке программирования.

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

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

Транслятор — это программа-переводчик, преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд.

Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.

Компилятор — читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется . (.exe).

Интерпретатор — переводит и выполняет программу строка за строкой. Достоинством интерпретатора является удобство отладки (поиск ошибок), недостаток – сравнительно малая скорость выполнения.

2. Опишите общую структуру программы на языке программирования Паскаль (Delphi). Приведите пример оператора присваивания. Опишите и приведите примеры структур операторов ввода и вывода информации.

Структура программы на языке Pascal (Delphi)

Программа состоит из заголовка, блока и заканчивается точкой. Типичный заголовок выглядит так:

Program Primer;

Слово Program является первым словом программы, за ним следует имя программы. В конце обязательно ставится точка с запятой. Для программы заголовок можно опускать без каких-либо последствий для программы, а для модуля, процедур и функций наличие заголовка обязательно.

Блок состоит из следующих разделов:

  • модулей (Uses);

  • меток (Label);

  • констант (Const);

  • типов (Type);

  • переменных (Var);

  • процедур и функций;

  • операторов.

Тело программы (раздел исполняемых операторов) содержит собственно программный код. При этом тело программы обязательно оформляется так называемыми операторными скобками - begin ... end. Между ними будут помещаться оператор ввода исходных данных Read, операторы присваивания и операторы вывода на печать результатов решения Write. Операторы отделяются друг от друга точкой с запятой. Перед End точка с запятой не ставится, однако её наличие не является ошибкой, а лишь означает присутствие пустого оператора. Заканчивается программа словом End, после которого обязательно ставится точка.

Разделы TYPE, CONST, VAR, LABEL могут следовать друг за другом в любом порядке и встречаться в разделе описаний сколько угодно раз.

В простейшей программе из всех перечисленных подразделов раздела описания обязательно присутствует только раздел описания переменных VAR.

Оператор присваивания

В результате присваивания переменная получает конкретное значение.

Имя Переменной :=Выражение

Здесь " := " - оператор присваивания языка Паскаль (Delphi), т.е. символ (в данном случае), который обозначает операцию присваивания

Процедуры ввода-вывода

Для ввода данных используют процедуры read, readln.

Процедура read считывает данные вводимые с клавиатуры, а процедура readln считывает данные и символ конца строки, т.е. после выполнений процедуры ввода курсор будет переведен на следующую строку.

Формат процедуры Read:

Read (x1, x2, …, xn); где x1, x2, …, xn- переменные допустимых типов данных.

Процедуры вывода.

Процедура WRITE производит вывод числовых данных, символов, строк, булевских значений.

Формат процедуры Write:

Write (y1,y2, . . . yn); где y1, y2, …, yn- переменные допустимых типов данных.

Для того, чтобы вывести сообщение нужно заключить его в апострофы (‘).

Например:

write('Привет');

- после выполнения этой строки программы на экране появится надпись:

Привет

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

3. Перечислите простые типы данных в языке программирования Паскаль (Delphi). Опишите особенности объявления констант целого, символьного и строкового типа в языке программирования Паскаль.

Типы данных

Язык Паскаль (Delphi) характеризуется разветвленной структурой типов данных (рис. 1).

Рис. 1

К простым типам относятся порядковые и вещественные типы. Каждый из порядковых типов имеет конечное количество значений.

Вещественные типы тоже имеют конечное количество значений, которое настолько велико, что сопоставить с каждым из них целое число (его номер) не возможно.

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

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

Константа целого типа записывается со знаком или без него по обычным правилам.

Символьная константа - это любой символ ПК, заключённый в апострофы. Например: 'z' - символ z.

Строковая константа – любая последовательность символов языка, заключенная в апострофы.

Правильные объявления констант:

Const

r = 2.7182818; // Вещественная константа

i = 2; // Порядковая (целая) константа

c = ’4′; // Символьная константа

s = ‘Это строковая константа’; // Константа типа String

cc = chr(32);

ls= SizeOf(Longint);

4. Перечислите целочисленные типы в языке программирования Паскаль (Delphi). Приведите пример объявления целочисленных переменных. Перечислите арифметические операции, допустимые над целыми данными в Паскале.

Целочисленные типы

В Паскале определены несколько целых типов данных:

Тип

Название

Размер

Integer

целое

2 байта

Shortint

Короткое целое

1 байт

Byte

Байт

1 байт

Word

Слово

2 байта

Longint

Длинное целое

4 байта

Первоначально в Паскале был всего один целый тип — integer, остальные добавлены впоследствии для представления больших величин или для экономии памяти.

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

Над переменными целочисленного типа можно выполнять 4 арифметические операции:

+ (сложение);

- (вычитание);

* (умножение);

/ (деление вещественное).

Для того, чтобы результатом деления целых чисел было целое число, используется оператор "DIV". Он возвращает целую часть частного, а дробную часть отбрасывает; перед выполнением операции оба операнда округляются до целых значений. Если делимое меньше делителя, то результат целочисленного деления всегда равен нулю:

5 div 2 получим 2 11 div 5 получим 2 2 div 3 получим 0

Кроме того, можно использовать оператор mod (остаток от целочисленного деления).

Пример объявления целочисленных переменных:

var

a :byte;

b : integer;

c, d : shortint;

5. Перечислите вещественные типы в языке программирования Паскаль (Delphi), укажите их размер в байтах. Перечислите арифметические операции, допустимые над вещественными данными. Приведите пример объявления вещественные переменных.

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