Оператор выбора Case Of в Pascal.

Помимо условного оператора If в языке программирования Pascal существует оператор выбора Case of. Рассмотрим его применение на примере программы, которая выводит на экран то или иное сообщение, в зависимости от введенного числа.

Строковые константы в Pascal.

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

Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Циклы и массивы

Примеры линейных программ.

В данной статье приводится несколько примеров линейных программ на языке программирования Паскаль.

Индексы одномерного массива.

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

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

Операторы ввода (чтения).
Ввод числовых данных, символов, строк и т.д. с клавиатуры обеспечивается операторами вызова стандартных процедур: READ(X1, Х2, ХЗ, ...), или READLN(X1, Х2, ХЗ, ...), где X1, Х2, ХЗ,... — идентификаторы скалярных переменных. Данные, соответствующие переменным X1, Х2, ХЗ, вводятся с клавиатуры и разделяются либо пробелом, либо Enter. После ввода последнего данного всегда нажимается клавиша Enter.
Отличие оператора READLN от READ заключается в том, что после считывания последнего в списке X1 Х2, ХЗ,... значения данные для следующего оператора READLN будут считываться с начала новой строки. То есть, если список ввода X1, Х2, ХЗ,... оператора READLN меньше чем число набранных в одну строку через пробел чисел, то оставшиеся в строке числа будут проигнорированы. Оператор READ сохранит оставшиеся числа для дальнейшего ввода. Вводимые данные должны строго соответствовать типам переменных, описанных в разделе VAR, в противном случае будут возникать сообщения об ошибках ввода. Оператор READLN без параметров вызывает приостановление программы до момента нажатия клавиши Enter.

Операторы вывода (записи).
Вывод числовых данных, символов, строк и булевских значений на экран дисплея осуществляется с помощью операторов вызова стандартных процедур: WRITE(X1, Х2, ХЗ, ...), или WRITELN(X1, Х2, ХЗ, ...).
Отличие этих операторов состоит в том, что WRITELN после распечатки списка выражений XI, Х2, ХЗ,... автоматически переводит курсор в начало следующей строки, а после выполнения оператора WRITE курсор остается за последним символом, выведенным на экран.
Оператор WRITELN с пустым списком выводимых данных выводит строку пробелов. Управление форматом выводимых данных осуществляется непосредственно в операторе вывода. Для этого используется запись элемента из списка {Xi} в виде — X [: В [: С ]], где X — выражение, идентификатор переменной или константа, В – ширина поля для вывода данного X, С – точность (только для типа REAL). Точность представления определяет количество цифр после точки (дробная часть числа). Если указанная ширина поля оказывается 'слишком большой', то значение данного выводится со стоящими впереди пробелами. Если указанная ширина поля 'мала', то в строке вывода для значения этого данного добавляются (автоматически) необходимые позиции. Параметры формата (ширина поля B и точность С) могут быть константой, переменной или выражением целого типа.
Пример 2.  Описать формат вывода арифметического выражения X, численное значение которого |X|< 1000, с точностью до пяти знаков после десятичной точки.
Решением этой задачи является оператор: WRITELN( X : 10 : 5 ). На рисунке 1 показана схема формата Х:10:5.

lineyjnihe processih vihchisleniyj

Цифра 10 определяет ширину поля, то есть общее количество литер, отведенное для отображения вещественного числа вместе со знаком и десятичной точкой. Цифра 5 – точность - указывает количество цифр мантиссы. В этом примере результат вычисления X выводится на экран дисплея в форме вещественного числа с фиксированной точкой.
Если задать формат в виде Х:8, то вещественное число будет представлено в формате с плавающей точкой и будет включать для своего представления восемь литер. Ограничение ширины поля скажется на разрядности мантиссы. Для вывода целой части X можно форматировать — Х:5:0. В этом случае 'точность' равна 0 и десятичная точка не отображается на экране. Дробная часть вещественного числа округляется с указанной точностью, а не отбрасывается.

lineyjnihe processih vihchisleniyj.

Оператор присваивания.
Вычисления в большинстве случаев реализуются с помощью оператора присваивания, который имеет формат: <Идентификатор> := <Выражение>;
Оператор присваивания заменяет значение переменной, идентификатор которой стоит в левой части, на значение, задаваемое выражением в правой части. Выражение строится из операндов (переменных и констант), функций, операций и круглых скобок.
Арифметические выражения используют арифметические операции: *,  /, DIV, MOD, AND, OR, +, - . Операнды имеют тип REAL или INTEGER. Для удобной работы Вы можете купить DELL workstations Vostro по доступной цене.
Пример арифметического выражения: X := (1 - В)*ЕХР(-0.5*А)/(1 - А).
Список встроенных арифметических функций, наиболее часто используемых в программах на Паскале, приведен в таблице 8. Последовательность выполнения операции в выражении определяется их приоритетом. В первую очередь делаются операции умножения и деления (*, /), а в последнюю — сложения и вычитания (+, -) слева направо.

Приоритетность арифметических операций:

1. Вычисления в круглых скобках;

2. Вычисления значений функции;

3. Унарные операции (NOT, унарный +, унарный -);

4. Арифметические операции 1 уровня (*, /, div, mod, and, shl, shr);

5. Арифметические операции 2 уровня (+, -, or, xor);

6. Операции отношения (=, <, >, <>, >=, <=, in);

В языке существуют ограничения на преобразование типов данных путем присваивания. Переменной А типа REAL можно присвоить значение переменной В типа INTEGER ==> А := В. Однако обратное присвоение В := А вызовет прерывание по причине несоответствия типов.
Для этого случая предусмотрены функции преобразования типов TRUNC(A) или ROUND(A), то есть используется присвоение вида В := TRUNC(A) или В := ROUND(A).


Предыдущая статья: Программирование вычислительных процессов.
Оглавление: Лекции по Pascal.
Следующая статья: Примеры линейных программ.


Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальЛекции по Паскаль