Название: Квантовая механика - Учеб. пособие. (Краснопевцев Е. А.)

Жанр: Информатика

Просмотров: 1190


2. теоретические сведения

 

Программа – это записанная по строго определенным правилам последовательность команд, предназначенная для решения конкретной задачи. Независимо от среды программирования в процедуру разработки и отладки программного продукта обязательно входят следующие этапы.

1. Разработка алгоритма программы. Алгоритмом называется описание плана действий, последовательное исполнение которых позволяет решить задачу. Алгоритм обязательно должен учитывать особенности исполнителя, т. е. в алгоритме не должны содержаться действия, не входящие в систему команд исполнителя. Наиболее точный пример – решение математических задач, которое всегда подчинено четкой системе правил. При несоблюдении этих правил решить задачу нельзя. Алгоритм можно описать различными способами. Чаще всего используются словесные описания и блок-схемы.

2. Запись программы по составленному алгоритму на каком-либо языке программирования. На этом этапе самое важное – правильно подобрать и записать команды. Если для выполнения некоторых действий не имеется специальных команд, приходится их разрабатывать на основе существующих команд (например, рисование многоугольника можно представить как последовательное рисование его сторон в виде отрезков).

3. Ввод программы в память машины. Процесс ввода и исправления текста программы (или любой другой текстовой и графической информации) называется редактированием. Для создания и редактирования файлов применяются специальные программы-редакторы. Результатом работы редактора является файл, содержащий программу на языке программирования высокого уровня. Имя такого файла должно отражать характер решаемой задачи, а тип – язык, на котором написана программа (например, SUMMA.FOR, sortirovka.f90).

4. Трансляция – процедура перевода программы с языка программирования высокого уровня на язык процессора (машинных команд). Трансляция выполняется специальными программами-трансляторами. Если в процессе перевода транслятор обнаружит в тексте программы пользователя ошибки (неправильная запись команд, отсутствие необходимых данных и т.п.), он сообщит об этом. Тогда приходится снова редактировать текст программы для устранения обнаруженных ошибок и запускать транслятор для уже исправленной программы. Такие действия повторяются до полного устранения ошибок. Результат работы транслятора – файл, содержащий текст программы в машинных командах (объектный код). Такой файл имеет то же имя, что и файл исходной программы, и тип OBJ (например, SUMMA.OBJ).

5. Построение задачи. Эта процедура предназначена для связывания между собой отдельных частей сложных программ, а также для подключения к программе пользователя библиотечных функций и подпрограмм. Библиотечные функции (подпрограммы) – очень удобное средство для ускорения и упрощения работы программиста. Для большого числа стандартных, часто используемых в практике задач, давно уже написаны и отлажены соответствующие программы. Такие стандартные подпрограммы (функции) хранятся в специальных файлах, называемых библиотеками, и к ним можно обращаться, указывая их имена и аргументы, т. е. данные, которые они должны обрабатывать.

 

Подпись:  Для построения задачи существуют специальные программы-построители. Построитель задачи также может обнаружить ошибки в программе (например, неправильное обращение к библиотечной функции) и сообщить о них. Тогда снова приходится редактировать и транслировать программу, а затем запускать построитель. Такая последовательность шагов тоже выполняется до тех пор, пока и построитель задач не перестанет выдавать сообщения об ошибках. Результатом успешной работы транслятора и построителя задачи является файл, содержащий исполняемую программу, т. е. такую программу, которую можно загрузить в процессор и выполнить. Этот файл имеет то же имя, что и файл исходной программы, и тип EXE (например, SUMMA. EXE).

6. Запуск задачи. На этом этапе готовая программа загружается в оперативную память и исполняется процессором. Однако результаты работы программы могут оказаться неверными, если предположить, что с самого начала алгоритм решения задачи был составлен неправильно, или для его записи были применены не те команды, или были заданы неправильно исходные данные. Тогда приходится повторять процедуру разработки и отладки программы с самого начала. Как правило, таких повторений тем больше, чем сложнее задача.

Представим процедуру разработки и отладки программы с помощью блок-схемы с учетом только тех шагов, которые выполняются при помощи компьютера (рис. 1).

Все этапы ввода и отладки программы объединены в систему программирования (интегрированная среда). Это мощный инструмент работы программиста, делающий процесс программирования быстрым и наглядным. Мы будем рассматривать процесс разработки и отладки программы на языке Фортран 90 в системе MDS (Microsoft Developer Studio), компилятор Microsoft Fortran PowerStation 4.0 (FPS).

 

Краткие сведения о работе в среде программирования

MDS-FPS

 

Запускается MDS через главное меню или с помощью ярлыка. После загрузки системы на экране появляется  примерно такое изображение (рис. 2).

 

 

Рис. 2

В поле редактирования вводится и редактируется текст программы. Для присваивания имени файлу программы, запуска транслятора и построителя задач нужно установить курсор на строку меню и выбрать в списке нужную функцию. Результаты работы системных функций выводятся в окне отладчика (сообщения об ошибках) и в окнах диалога, в которых предлагается выбрать какое-либо действие из предлагаемого списка.

Вызывать функции из строки меню можно при помощи левой кнопки мыши или с помощью нажатия клавиши <Alt> и первой буквы названия пункта меню (например, <Alt>+F вызывает меню File), после чего появляется список функций данной группы, на первой из которых установлен курсор. Нужно перевести курсор стрелками или мышью на название требуемой функции и нажать <Enter> или левую кнопку мыши. Появится окно диалога с функцией. Задав все нужные ответы (опции), следует нажать <Enter> или выбрать ответ <Ok> и нажать левую кнопку мыши. Переход между полями диалога с функциями выполняется мышью или с помощью клавиши <Tab>. Для отказа от работы с функцией (или целым меню) нужно нажать <Esc>.

Инструменты предоставляют удобный доступ к наиболее часто требующимся функциям меню, функции выбираются при помощи мыши.

Ниже приводится описание некоторых наиболее часто используемых функций системы программирования MDS.

 

Группа

 функций

меню

Пункт

меню

Описание

File

(работа

с файлами)

New

Создать новый файл (проект). Новый файл первоначально имеет имя [Text1]

Open

Прочитать файл с диска (имя файла указывается в окне диалога)

 

Close

Закрыть текущий файл

 

Open

Workspace

Открыть хранящийся на диске проект (файл типа .mdp)

 

Close

Workspace

Закрыть текущий проект

 

Save

Сохранить текущий файл на диске

 

Save As

Сохранить текущий файл под новым именем

 

 

Окончание таблицы

 

Группа

 функций

меню

Пункт

меню

Описание

Edit

(функции

редактирования)

Undo

Отменить действие последней команды редактирования текста

Redo

Восстановить отмененную команду

Сut

 

Стереть и запомнить выделенный текст. Для выделения участка текста использовать одновременно клавишу <Shift> и стрелки для указания направления выделения или левую кнопку мыши. Выделенный текст подсвечивается

Copy

Сохранить выделенный текст в памяти для последующего использования

Paste

Вставить сохраненный по Copy текст перед курсором

Build

(функции

трансляции

и построения

задачи)

Compile

Транслировать текущий файл

Build

Построить задачу для текущего файла

Rebuild All

 

Выполнить построение задачи для всех файлов проекта

Execute

Запустить готовую программу

 

Правила оформления текста программы на языке Фортран

При редактировании программ на языке Фортран нужно соблюдать следующие правила.

Каждый оператор (команда) должен располагаться в отдельной строке (кроме оператора IF в краткой форме). В одной строке программы в свободном формате можно расположить несколько операторов присваивания, отделив их точкой с запятой.

В строке должно быть не больше 72 символов при фиксированном формате записи (файлы типа FOR) или не больше 132 символов при свободном формате (файлы типа F90). Если строка имеет большую длину, ее следует разбить на части (строки продолжения). В строках продолжения в 6 позиции должен быть символ “*” (фиксированный формат). При свободном формате записи в конце строки, имеющей продолжение, ставится символ “&”. Место разбивки строки не имеет значения.

 

Первые шесть позиций строки отводятся под метки и служебные символы. Если их нет, то в первых шести позициях должны быть пробелы (в фиксированном формате). Текст команды (оператора) начинается не раньше чем с седьмой  позиции строки.

При фиксированном формате записи метка (номер) оператора, если она есть, может занимать 1–5 позиции строки. В свободном формате метка может размещаться с любой позиции, а оператор должен быть отделен от нее хотя бы одним пробелом.

Ввод каждой строки заканчивается нажатием <Enter>.

Программа может содержать комментарии (пояснения к тексту программы). Строки комментариев должны иметь в первой позиции символ “С”. Если комментарий располагается в одной строке с командой, он отделяется от команды символом “!”.

 

Последовательность действий по вводу, трансляции, построению и исполнению программы

Программы в FPS создаются как проекты. Проект в простейшем случае может состоять из одного файла с исходным текстом программы. Более сложные проекты включают в себя множество файлов программ (подпрограмм, функций), библиотеки, модули и т.д. По типу проекты подразделяются на:

Console Application – консольное приложение (однооконный проект c алфавитно-цифровым вводом-выводом без использования графических функций);

Standard Graphics Application – стандартное графическое приложение (однооконный проект с применением графических функций);

QuickWin Application – приложение, использующее графический вывод и работающее со множеством окон;

Static Library – статическая библиотека (содержит подпрограммы в объектной форме), связывается с файлом на этапе построения;

Dynamic-Link Library – динамическая библиотека (подключается в процессе выполнения программы).

При выполнении лабораторных работ используются первые три типа проектов.

Процедура разработки и отладки простого однозадачного проекта может выглядеть следующим образом.

Запустить систему программирования на Фортране FPS. Обычно в окне редактирования появляется текст программы,

которая обрабатывалась при последнем запуске FPS. Чтобы не было проблем при попытке создать новую программу в не относящемся к ней проекте, прежде чем начать работу над своей программой, нужно закрыть предыдущий проект по команде Close Workspace меню File.

Выбрать группу функций File, функцию New. Появится диалоговое окно со списком возможных типов новых объектов. Выбрать Project Workspace, затем в диалоговом окне задать имя (поле Name) и тип проекта (выбрать из списка Console Application) и нажать <Ok>. В информационном поле слева на экране появится папка с именем нового проекта, поле редактирования должно быть свободным.

Выбрать группу функций  File, функцию  New. Появится диалоговое окно со списком возможных типов новых объектов. Выбрать Text File и нажать <Ok>.

Ввести текст программы (в файл [Text1]).

Сохранить файл программы: выбрать в группе File  функцию Save As, ввести имя файла в окне диалога. В имени файла лучше использовать буквы латинского алфавита. Тип файла должен быть FOR или F90 (например, COUNTER1.FOR).

Выполнить трансляцию: в группе Build выбрать функцию Compile, подтвердить включение нового файла в проектное пространство по <Ok>.

Если появились сообщения об ошибках, исправить их с помощью редактора и повторить шаг 6.

Если ошибок не было, выбрать в окне Build функцию Build для построения задачи. При наличии сообщений об ошибках исправить их и вернуться к шагу 6.

Запустить программу с помощью функции Execute меню Build и проанализировать результаты; если они ошибочны, отредактировать программу и повторить шаги 6–9.

При отладке многозадачного проекта возможна следующая последовательность шагов.

Запустить систему программирования на Фортране FPS.

Выбрать группу функций  File, функцию  New. Выбрать Project Workspace, затем в диалоговом окне задать имя (поле Name) и тип проекта (выбрать из списка Application) и нажать <Ok>.

 

Выбрать группу функций  File, функцию  New, объект Text File и нажать <Ok>.

Ввести текст программы.

Сохранить файл: выбрать в группе File  функцию Save As, задать имя файла.

Выполнить трансляцию: в группе Build выбрать функцию Compile, подтвердить включение нового файла в проектное пространство по <Ok>.

Если появились сообщения об ошибках, исправить их с помощью редактора и повторить шаг 6.

Если ошибок не было, выбрать в окне Build функцию Build(Rebuild All) для построения задачи из всех файлов проекта. При наличии сообщений об ошибках исправить их и вернуться к шагу 6 для файла, содержащего ошибки.

Запустить программу с помощью функции Execute меню Build и проанализировать результаты; если они ошибочны, отредактировать программу и повторить шаги 6–9.