- •1. Ссылочные типы данных.
- •2. Оператор new.
- •3. Сортировка данных в динамической памяти.
- •4. Файлы с прямым доступом.
- •5. Нетипизированные файлы.
- •6. Особенности работы с типами в tp. Явные преобразования типов.
- •12. Объектовый тип. Основные понятия.
- •13. Наследование и переопределение в объектовых типах.
- •14. Виртуальные методы в объектах.
- •15. Конструкторы и деструкторы.
- •16. Скрытые поля и методы.
- •17. Раздел files основного меню turbo-Паскаль 7.0.
- •19. Библиотека crt turbo-Паскаля.
- •20. Библиотека dos turbo-Паскаля.
- •21. Библиотека system turbo-Паскаля.
- •22. Раздел edit основного меню turbo-Паскаль 7.0.
- •23. Раздел run основного меню turbo-Паскаль 7.0.
- •24. Классификация типов данных.
- •25. Перечислимые типы данных. (На самостоят. Рассмотрение)
- •26. Ограниченые типы данных. (На самостоят. Рассмотрение)
- •27. Регулярные типы данных.
- •28. Многомерные массивы.
- •29. Комбинированные типы данных.
- •30. Оператор with.
- •31. Записи с вариантами.
- •32. Множественные типы данных.
- •33. Операции над данными множесвенного типа.
- •34. Файловые типы данных.
- •35. Текстовые файлы.
- •36. Процедуры.
- •37. Функции.
- •38. Параметры процедур и функций.
- •39. Локальные и глобальные объекты в процедуах и функциях.
- •46. Внутреннее представление чисел с плавающей точкой.
- •47. Реализация алгоритма сортировки с применением метода "часового".
- •48. Сортировка методом "пузырька".
- •49. Алфавит языка, имена, числа, строки.
- •50. Структура программы.
- •51. Тип Integer.
- •52. Тип Real.
- •53. Тип Boolean.
- •54. Char.
- •55. Описательная часть программного блока.
- •56. Процедуры ввода-вывода.
- •57. Оператор присваивания.
- •58. Условный оператор.
- •59. Оператор варианта.
- •60. Оператор цикла с перечислением.
- •61. Оператор цикла с предусловием.
- •62. Оператор цикла с постусловием.
46. Внутреннее представление чисел с плавающей точкой.
Числа с плавающей точкой - форма представления чисел в ЭВМ с переменным представлением запятой, отделяющей целую часть от дробной. Действия над числами с плавающей точкой более трудоемки, а ЭВМ с плавающей запятой более сложны, чем вычислительные машины с фиксированной точкой. Диапазон чисел в ЭВМ с плавающей точкой шире, чем в ЭВМ с фиксированной точкой. В отличие от порядковых типов, значения которых всегда сопоставляются с рядом целых чисел и, следовательно, представляются в ПК абсолютно точно, значения вещественных типов определяют произвольное число лишь с некоторой конечной точностью, зависящей от внутреннего формата вещественного числа.
Вещественное число в компьютерах Intel занимает от 4 до 10 смежных байт и имеет следующую структуру в памяти ПК:
З десь s - знаковый разряд числа; e - экспоненциальная часть (содержит двоичный порядок); m - мантисса числа. Если переписать число, записанное в памяти, то получим следующее число (-1)S * m(2) * 2e , а при переводе его из двоичного в десятичное получим обычную десятичную дробь.
Рассмотрим по порядку все типы вещественных чисел на этих компьютерах. В таблице указан размер полей этих структур:
47. Реализация алгоритма сортировки с применением метода "часового".
for i:=1 to N-1 do
begin
frag:=true;
for j:=1 to N-i do
begin
if a[j]>a[j+1] then
begin
S:=a[j+1];
a[j+1]:=a[j];
a[j]:=S;
frag := false;
end;
end;
if frag then break;
end;
ИЛИ
Procedure SMass;
begin {пусть массив упорядочен}
flag:= true; {установка флага в истину}
for i:= 1 to N - 1 do {проверка массива--}
if A[i] > A[i+1] then begin {если i-ый элемент больше (i+1)-го, то}
s:= A[i]; {меняем их местами}
A[i]:= A[i+1];
A[i+1]:= s;
flag:= false; {и флаг ставим в ложь, так как}
end; {порядок был нарушен}
{если были проведены перестановки, то заново проверяем массив, рекурсивно}
if flag = false then SMass; {вызывая эту же процедуру}
end;
48. Сортировка методом "пузырька".
for i:=1 to k-1 do for j:=1 to k-i do if mas[j]>mas[j+1] then begin a:=mas[j]; mas[j]:=mas[j+1]; mas[j+1]:=a; end;
49. Алфавит языка, имена, числа, строки.
Алфавит: буквы, цифры, спец. символы.
Буквы – прописные буквы и некоторые приравненные к ним символы (@, #, &, _, !)
Спец символы:
* Знаки операции (+, -, *, /)
* Знаки операций сравнения ( >, <, >=, <=, <>, =)
* Операция присваивания :=
* Ограничители ( ( , [ , ] , ) , . , , , : , ; , ‘ , .. , ? )
Совокупность символов алфавита упорядочена. Символы, за исключением двойных символов и служебных слов, имеют свой порядковый номер.
Имена: идентификатор состоит из букв и цифр, начинается всегда с буквы. Слина единиц в стандарте не ограничена. Некоторые имена не могут быть более 8/16 символов. В современном – до 255 символов. Пробел – не имя.
Запрещены в качестве букв служебные слова и стандартные имена (sin, cos,…)
Числа. Десятичные числа. Целые и действительные (вещественные).
Числа – числовые константы.
Формы представления
Формы с плавающей точкой – дробные (-0,258E+01, -0.258*10e)
Терминальные или конечные символы заключаются в круглые или овальные.
Нетерминальные – в квадратные или треугольные.
Нетерминальные могут быть расшифрованы подробно и до терминальных.
Терминальные – из алфавита.
Нетерминальные – имя.
Строки (литерал, строковая константа) – последовательность цифр, символов, букв заключённых между двумя одинаковыми верхними апострафами.
‘литерал’
‘с”езд’ => с’езд
‘ “ ‘ => ‘