Контрольные вопросы
1. Что такое тип переменной?
2. Что означает выражение «типизированный язык программирования»?
3. Перечислите служебные слова, которыми в Турбо-Паскале обозначаются целые типы со знаком, каков их размер?
4. Каков диапазон короткого целого со знаком?
5. Каков приблизительно диапазон стандартного целого со знаком?
6. Каков приблизительно диапазон длинного целого со знаком?
7. Перечислите служебные слова, которыми в Турбо-Паскале обозначаются целые типы без знака, каков их размер?
8. Каков диапазон беззнакового однобайтного целого?
9. Каков приблизительно диапазон беззнакового двухбайтного целого?
10. Что такое целая константа?
11. Какие системы счисления используются и как обозначаются в Турбо-Паскале?
12. Какие операции используются над целыми значениями?
13. Какие две операции предназначены только для целого типа данных?
14. Кроме арифметических, какие еще группы операций можно использовать над целыми данными?
15. Какова точность представления (в количестве цифр мантиссы) и занимаемый объем памяти для вещественных чисел типа Real?
16. Какова точность представления (в количестве цифр мантиссы) и занимаемый объем памяти для вещественных чисел типа Single?
17. Какова точность представления (в количестве цифр мантиссы) и занимаемый объем памяти для вещественных чисел типа Double?
18. Какова точность представления (в количестве цифр мантиссы) и занимаемый объем памяти для вещественных чисел типа Extended?
19. Какова точность представления (в количестве цифр мантиссы) и занимаемый объем памяти для вещественных чисел типа Comp?
20. Как представляются константы с фиксированной точкой?
21. Как представляются константы с плавающей точкой?
22. Запишите три формы представления числа «двойка».
23. Какие операции используются над вещественными значениями?
24. Какое служебное слово используется для описания логических переменных?
25. Как записываются логические константы?
26. Перечислите четыре логические операции, используемые в Турбо-Паскале.
27. Как выполняются логические операции над целыми данными?
28. Перечислите операции отношения (сравнения).
29. Какой тип результата дают операции отношения?
30. Какое служебное слово используется для описания литерных (символьных) переменных?
31. Какая кодировочная таблица используется в Турбо-Паскале?
32. Как обычно записываются символьные константы, отображаемые на экране монитора?
33. Как записываются любые символьные константы?
34. Как записываются управляющие коды в виде литерных констант?
35. Какие операции можно выполнять над литерными данными?
36. В каких целях используется перечисляемый тип?
37. Как описываются значения перечисляемого типа?
38. Что такое свойство различимости для перечисляемого типа?
39. Что такое свойство упорядоченности для перечисляемого типа?
40. В каких целях используются диапазоны?
41. Что такое дискретный тип?
42. Какой простой тип нельзя использовать как базовый в диапазонах?
43. Какие операции допускается использовать для интервальных типов?
Глава 4. Операторы языка Паскаль
Выражения
В операторах широко используются выражения.
Выражение – это совокупность переменных, констант и функций, соединенных знаками операций.
Так как операций в выражении может быть несколько, то все эти операции разбиты по приоритетам (табл. 4.1), причем операции, имеющие более высокий приоритет, выполняются в первую очередь.
Таблица 4.1. Распределение операций по приоритетам
Приоритет | Операция |
1 (высший) | ( ) – выражение в скобках |
2 | Унарные операции: NOT – логическая инверсия, - «минус» – смена знака, @ – взятие адреса. |
3 | * – арифметическое умножение, / – арифметическое деление, DIV – целочисленное деление, MOD – остаток от целочисленного деления, AND – логическое умножение. |
4 | + – арифметическое сложение, - – арифметическое вычитание, OR – логическое сложение, XOR – логическое сложение по модулю 2. |
5 (низший) | IN – проверка принадлежности множеству. Операции отношения: > – больше, < – меньше, = – равно, <> – не равно, >= – больше или равно, <= – меньше или равно. |
То есть, если необходимо, например, записать выражение
, то запись вида a+b/c+d будет неправильна. С помощью скобок необходимо расставить приоритеты выполнения операций: (a+b)/(c+d).
При вычислении выражений часто приходится использовать алгебраические, тригонометрические и другие функции. Язык Паскаль содержит относительно небольшое число стандартных функций, делящихся по типам используемых операндов и получаемых результатов, а так же функции преобразования.
Следующие математические функции могут работать как с целым, так и с вещественным аргументом, тип получаемого результата соответствует типу аргумента:
Abs(x) – модуль числа х;
Sqr(x) – квадрат.
Функции с вещественным результатом:
Sin(x) – синус;
Cos(x) – косинус;
Arctan(x) – арктангенс;
Exp(x) – экспонента;
Ln(x) – натуральный логарифм;
Sqrt(x) – корень квадратный;
Frac(x) – дробная часть вещественного числа;
Int(x) – целая часть вещественного числа.
Функции с целым результатом:
Random(x) – случайное число от 0 до х;
Trunc(x) – округление с отбрасыванием дробной части;
Round(x) – округление по правилам арифметики.
Odd(x) с целым аргументом дает логический результат: True, если х нечетно.
Для работы с символьными значениями используются функции:
Chr(x) – возвращает символ, соответствующий ASCII-коду числа х;
Ord(x) – возвращает число, соответствующее символу х в ASCII-таблице;
UpCase(x) – преобразует латинские строчные буквы в прописные.
Функции для дискретных типов:
Ord(x) – порядковый номер числа х;
Pred(x) – предыдущий элемент;
Succ(x) – следующий элемент.
§4.1. Оператор присваивания
Этот оператор является одним из простейших, и наиболее используемым оператором языка. Он предназначен для определения нового значения переменной или значения, возвращаемого функцией. Общий вид оператора:
<имя> := <выражение>
Частным случаем выражения может быть константа или переменная.
Тип имени и выражения должны совпадать. Допускается только одно исключение: выражение целого типа, а переменная – вещественного.
При выполнении оператора вычисляется выражение, и полученный результат записывается в ячейку памяти, выделенную под переменную. Присваивание допускается для всех простых типов, для структурированных типов присваивание выполняется поэлементно. Нельзя использовать присваивание для файловых типов.
§4.2. Ввод-вывод данных
Для ввода информации с клавиатуры и вывода ее на экран (стандартные устройства ввода-вывода) используются 4 оператора обращения к процедурам. Для ввода используются:
Read (<список параметров ввода>);
ReadLn (<список параметров ввода>);
В списке параметров указываются вводимые переменные. Во втором случае после ввода указанного количества параметров происходит переход на новую строку. Но, так как ввод с клавиатуры всегда должен заканчиваться переходом на новую строку, то именно для устройства ввода – клавиатуры, – эти операторы можно считать равнозначными. При вводе числовых значений их необходимо разделять хотя бы одним пробелом или переходом на новую строку.
Например, если в программе встретится оператор
Read (x, y,z);
то выполнение программы приостановится (будет индицироваться экран данных, стандартно черного цвета), пока не будет введена строка
0.28 32.5 1.0 <Enter>
Для вывода так же используются два оператора
Write (<список параметров вывода>);
WriteLn (<список параметров вывода>);
В списке параметров указываются выражения, в частности переменные и константы, например строковые:
WriteLn ('Сумма=',S,' Произведение=',a*b);
Аналогично с вводом, после выполнения второго оператора осуществляется переход на новую строку. Оператор Write обычно используется при необходимости формирования одной строки с помощью нескольких операторов.
При выводе вещественные числа имеют 15 цифр мантиссы и 4 цифры порядка, а целые занимают место, равное количеству значащих цифр. Так, при выполнении операторов
Read (i, j,k, x);
Writeln (i, j,k);
Writeln (x);
на экране данных появится информация:
35 128 15 0.75
3512815
7.50000000000000Е-0001
Первая строка – это введенные с клавиатуры данные. Гораздо нагляднее использовать форматированный вывод. Здесь параметр выглядит следующим образом:
<выражение>:<количество выделяемых позиций>
При этом данное прижимается к правому краю. Вещественные числа в таком формате все равно будут выводится в экспоненциальной форме (с плавающей точкой). Только для вещественных чисел, чтобы использовать формат с фиксированной точкой, используется следующий общий вид:
< выражение>:<общее количество выделяемых позиций>:<количество позиций дробной части>
Внимание! Не путать общее количество выделяемых позиций с количеством позиций целой части вещественного числа!
Аналогично предыдущему примеру:
Read (i, j,k, x);
Writeln (i:4,j:4,k:4);
Writeln (x:7:3);
на экран будет выведена информация в более удобном для восприятия виде:
35 128 15 0.75
35 128 15
0.750
Необходимо обратить внимание: первая цифра при задании формата числа является общим количеством выделяемых позиций, в которых необходимо учитывать место под знак числа и десятичную точку.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
Основные порталы (построено редакторами)
