Cтраница 3
Трансляторы с Фортрана 66 и Фортрана 77 совместимы по исходному языку и по объектному коду снизу вверх. Средства Фортрана 77, обеспечивающие использование программ на Фортране 66, позволяют весь багаж программ, созданных ранее на Фортране, сохранить для дальнейшей эксплуатации. Свойства этого языка, отличные от Фортрана 66, позволяют расширить сферу программирования на Фортране. В Фортране 77 по сравнению с Фортраном 66 существенно увеличены возможности структурирования программ, введены средства обработки текста, добавлены новые свойства во многие операторы ( в частности, в операторы ввода-вывода, оператор цикла), введены другие усовершенствования. [31]
Понятие подпрограммы в Фортране является достаточно общим и поэтому можно найти решение для любой проблемы. Именно в этом следует искать причину успеха языка, имеющего столько недостатков. Все сказанное верно и для систем управления файлами: хотя сам язык позволяет работать только со скалярами и массивами ( однородными), на нем были запрограммированы системы для всех разумных моделей данных. Необходимо, однако, отметить, что использование Фортрана приводит к плохому структурированию программы. Поэтому Фортран следует считать наименее пригодным языком для графического расширения. [32]
Кроме описаний модели, текст на языке УТОПИСТ содержит описание действий, состоящее из операторов. При выполнении оператора НАЙТИ система, реализующая язык, просматривает отношения, содержащиеся в описании модели, и сама планирует последовательность вызовов модулей и вычисления выражений. Другие операторы ( присваивания, условные, составные, повторения) такие же, как в известных языках, предусматривающих структурирование программ. [33]
С его помощью существенно упрощается составление и сопровождение программ. Структурное программирование требует следования определенным принципам, обеспечивающим получение простых и ясных формулировок задач и решений. Хотя структурирование программ можно осуществлять па любом языке, некоторые из них специально предназначены для этого. [34]
На этом этапе решается, как программа должна реализовывать функции, содержащиеся в исходном описании. При этом сложные программы делятся на небольшие составные части с таким расчетом, чтобы реализация каждой из них не представляла значительной сложности как при проектировании, так и на последующих этапах и чтобы объединение выделенных частей в единую программу не создавало новой проблемы. Поэтому способы документирования результатов проектирования обычно менее формализованы, хотя и достаточно однозначны. Основные усилия на этапе проектирования направлены на структурирование программы и разработку алгоритма каждого выделенного элемента, причем труд по разработке алгоритмов может быть разделен между несколькими исполнителями. После окончания этапа проектирования осуществляется контроль результатов. При этом выявляются ошибки, допущенные при составлении проекта, и отклонения спроектированного алгоритма от заданного в исходном описании, сокращая трудовые затраты на этапе проверки и отладки. [35]
Серия книг Кнута-1), если он когда-нибудь ее закончит, имеет все шансы стать библией программистов. Конечно же, первый том содержит наиболее элементарные сведения о структурах данных и алгоритмах работы с ними. Мы, однако, не предлагаем стиль программирования Кнута как образец структурирования программ. [36]