КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Принципы структурного программирования
Операция закрытия файла. Теперь в Паскале
Каждому файлу в Паскале поставлен в соответствие так называемый указатель файла, который принимает значение номера записи, которая готова к обработке (вводу или выводу). Номера записей в Паскале начинаются с 1.
Как говорилось, в Паскале каждый файл является как последовательным, так и прямым. Поэтому операторы вводы и вывода и для последовательной обработки, и для произвольной одни и те же: READ и WRITE. В этих операциях нет номера записи файла, как в Бейсике, они работают с той записью, на которой указывает указатель.
Если требуется выбрать для обработки нужную запись по ее номеру, то можно использовать, процедура установки значения указателя, внешне напоминающую бейсиковскую:
SEEK (<файловая переменная>;<номер записи>); Например, SEEK (f,1)
Поскольку в процедурах ввода-вывода указатель не присутствует, иногда возникает необходимость выяснить номер позиции, где находится этот указатель (номер записи). Для этого в Pascal есть специальная функция:
FilePoz (<файловая п.>) – возвращает положение указателя (номер записи, готовой к обработке)
Например, SEEK (f, FilePoz (f)-1) возвращает на одну запись назад.
И в Бейсике, и в Паскале закрытие файла осуществляется практически одинаково: в Бейсике оператором CLOSE #n
в Паскале процедурой Сlose (<файловая переменная>);
После выполнения этих операций доступ к записям файла запрещен.
Модуль = основной модуль = головной модуль = главный модуль. Помимо этого модуля существуют другие типы модулей. Всякая реальная задача при её решении разбивается на множество подзадач, имеющих логически завершенную структуру (т.е. свои исходные данные, свой результат). Каждая из подзадач программируется отдельно, возможно, разными программистами, и затем на последнем этапе все эти модули объединяются в одну программную систему. Для двух модулей можно указать следующую связь: первому модулю во время работы может потребоваться результат работы второго модуля, без которого первый не может получить собственный результат. В этом случае в первом модуле организуется так называемое обращение ко второму модулю, при котором первый передает часть своих данных в качестве исходных второму модулю и затем должен принять результат работы второго модуля. Эта передача данных – один из самых сложных механизмов связи модулей. Такое взаимодействие двух модулей приводит к тому, что объединенная программная система имеет иерархическую структуру по связям между модулями.
Подпрограммы бывают разных типов. Каждый тип имеет собственную организацию связей. Два связанных между собой модуля: Существует 2 типа подпрограмм: 1. Функции (и в В., и в Р) 2. Процедуры (в Р.) Отличия функции от процедур: Функция в качестве результатах выдает 1 значение и обращение к этому модулю организуется из какого-либо выражения. Например, у=1+sinx Результатом работы процедуры является несколько выходных данных (или их отсутствие). Обращение к процедуре – отдельный самостоятельный оператор. В Pascal: Assign (f, ‘My file’)
К основным принципам структурного программирования относятся: 1) структура создаваемой системы должна соответствовать структуре реальной решаемой задачи. 2) структура обрабатываемых в программе системных данных должна соответствовать структурам реальных данных. 3) модули, образующие программную систему должны составляться по правилам модульного програмирования. а) текстовый модуль есть последователность управляющих программных структур (присваивание, условие – if, цикл и выбор по ключу) б) в модуле должны отсутствовать метки и оператор GOTO в) в модуле должны активно использоваться комментарии на русском языке. (в Вasic – REM текст, в Рascal – {комментарии}) Активно – это комментировать каждую управляющую структуру. Наиболее оптимальное - использование у-10 операторов. г) операторы записываемые внутри управляющей стрктуры должны записываться с отступом в 2-3 позиции. for- if- else- while- do- case- repeat-
Дата добавления: 2015-01-03; Просмотров: 389; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |