Алгоритм — точное предписание, определяющее процесс перехода от исходных данных к результату.
Предписание считается алгоритмом, если оно обладает следующими тремя свойствами:
— определенностью, то есть точностью, не оставляющей место произволу при выполнении предписания;
— универсальностью, то есть возможностью обработки различных, находящихся в заранее оговоренных пределах, исходных данных;
— результативностью, то есть направленностью на получение результата.
Давайте немного усложним нашу первую программу: сделаем конвертер двусторонним.
В таком случае программа должна сначала спрашивать у пользователя, какую величину он хочет конвертировать.
Составим текстовый алгоритм действий:
1. Запрашиваем исходные данные: величина, которую будем конвертировать и количество.
2. Если исходная величина фунты, то считаем по формуле Масса (в килограммах) = Масса (в фунтах)*0,45359.
Иначе считаем по формуле Масса (в фунтах) = Масса (в килограммах)/0.45359.
3. Выводим на экран полученный результат с указанием величины.
Составленное нами предписание обладает всеми тремя свойствами алгоритма:
— определенностью: в предписании указаны исходные данные, условия и формулы, по которым надо выполнять расчет; формулы указаны для каждого из двух возможных выборов величин;
— универсальностью: в предписании указаны не конкретные массы, а формулы
Поле является составной частью типа Запись (record) или класса (в данном случае оно, как правило, называется свойство).
При описании типа данных Запись (record) используют поля, которые описывают характерные свойства данной записи. Запись может содержать информацию о различных объектах реальной жизни (машина, человек, радиоприёмник и пр.), а каждая запись содержит информацию, которая характеризует описываемый объект с той, или иной стороны.
Например, для записи Машина могут быть заданы поля, содержащие информацию о марке автомобиля, его цвете, объёме двигателя, количестве дверей и наличии откидывающейся крыши.
Для записи Человек можно выделить поля для хранения имени, фамилии и отчестве человека, номер и серию его паспорта, возраст и т.д.
В качество полей могут быть использованы не только элементарные типы данных (строка, целое, вещественное), но и составные (массивы, перечисления, записи).
Например:
type parants = record name, surname : string; age : byte; phone : string; end;
students = record name, surname : string; age : byte; mother : parents; father : parent; end;
var student : students;
begin with student do begin name := 'Вася'; surname := 'Пупкин'; age := 15; mother.name := 'Ирина'; mother.surname := 'Пупкина'; mother.phone := '+7 (916) 123-45-67'; end; end.
Предлагается хранить типы блоков в массиве. Каждый элемент - 2Б, количество элементов - 2^20 => всего требуется 2МБ.
При перезаписи блока и очередной переоценке необходимо учитывать типы данных в блоке до перезаписи (T0), после перезаписи (T1) и в соседних блоках (TL, TR).
Если T0 = T1, то количество кусков данных не изменяется, т.е. W[i+1] = W[i] TL = T0 = TR <> T1 -> W[i+1] = W[i] + 2 TL = T1 = TR <> T0 -> W[i+1] = W[i] - 2 TL = TR, T0 <> TL, T1 <> TL -> W[i+1] = W[i]
Если все четыре типа не совпадают, то W[i+1] = W[i] Если перезаписывается блок с адресом 0, считать, что тип TL не совпадает ни с одним из трех других.Аналогично при перезаписи блока с адресом , но для TR.
Алгоритм — точное предписание, определяющее процесс перехода от исходных данных к результату.
Предписание считается алгоритмом, если оно обладает следующими тремя свойствами:
— определенностью, то есть точностью, не оставляющей место произволу при выполнении предписания;
— универсальностью, то есть возможностью обработки различных, находящихся в заранее оговоренных пределах, исходных данных;
— результативностью, то есть направленностью на получение результата.
Давайте немного усложним нашу первую программу: сделаем конвертер двусторонним.
В таком случае программа должна сначала спрашивать у пользователя, какую величину он хочет конвертировать.
Составим текстовый алгоритм действий:
1. Запрашиваем исходные данные: величина, которую будем конвертировать и количество.
2. Если исходная величина фунты, то считаем по формуле Масса (в килограммах) = Масса (в фунтах)*0,45359.
Иначе считаем по формуле Масса (в фунтах) = Масса (в килограммах)/0.45359.
3. Выводим на экран полученный результат с указанием величины.
Составленное нами предписание обладает всеми тремя свойствами алгоритма:
— определенностью: в предписании указаны исходные данные, условия и формулы, по которым надо выполнять расчет; формулы указаны для каждого из двух возможных выборов величин;
— универсальностью: в предписании указаны не конкретные массы, а формулы