Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
инфа блеадь.docx
Скачиваний:
4
Добавлен:
26.09.2019
Размер:
43.78 Кб
Скачать

1 Алгоритмом называется точное и понятное предписаниe исполнителю совершить последовательность действий, направленных на решение поставленной задачи. Слово «алгоритм» происходит от имени математика Аль Хорезми, который сформулировал правила выполнения арифметических действий. Первоначально под алгоритмом понимали только правила выполнения четырех арифметических действий над числами. В дальнейшем это понятие стали использовать вообще для обозначения последовательности действий, приводящих к решению любой поставленной задачи. Говоря об алгоритме вычислительного процесса, необходимо понимать, что объектами, к которым применялся алгоритм, являются данные. Алгоритм решения вычислительной задачи представляет собой совокупность правил преобразования исходных данных в результатные.

Основными свойствами алгоритма являются:

  1. детерминированность (определенность). Предполагает получение однозначного результата вычислительного процecca при заданных исходных данных. Благодаря этому свойству процесс выполнения алгоритма носит механический характер;

  2. результативность. Указывает на наличие таких исходных данных, для которых реализуемый по заданному алгоритму вычислительный процесс должен через конечное число шагов остановиться и выдать искомый результат;

  3. массовость. Это свойство предполагает, что алгоритм должен быть пригоден для решения всех задач данного типа;

  4. дискретность. Означает расчлененность определяемого алгоритмом вычислительного процесса на отдельные этапы, возможность выполнения которых исполнителем (компьютером) не вызывает сомнений.

Алгоритм должен быть формализован по некоторым правилам посредством конкретных изобразительных средств. К ним относятся следующие способы записи алгоритмов: словесный, формульно-словесный, графический, язык операторных схем, алгоритмический язык.

Наибольшее распространение благодаря своей наглядности получил графический (блок-схемный) способ записи алгоритмов.

Блок-схемой называется графическое изображение логической структуры алгоритма, в котором каждый этап процесса обработки информации представляется в виде геометрических символов (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций. Перечень символов, их наименование, отображаемые ими функции, форма и размеры определяются ГОСТами.

При всем многообразии алгоритмов решения задач в них можно выделить три основных вида вычислительных процессов:

  • линейный;

  • ветвящийся;

  • циклический.

Линейным называется такой вычислительный процесс, при котором все этапы решения задачи выполняются в естественном порядке следования записи этих этапов.

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

Циклом называется многократно повторяемый участок вычислений. Вычислительный процесс, содержащий один или несколько циклов, называется циклическим. По количеству выполнения циклы делятся на циклы с определенным (заранее заданным) числом повторений и циклы с неопределенным числом повторений. Количество повторений последних зависит от соблюдения некоторого условия, задающего необходимость выполнения цикла. При этом условие может проверяться в начале цикла — тогда речь идет о цикле с предусловием, или в конце — тогда это цикл с постусловием.

2 Для входа в среду необходимо вызвать файл turbo.exeили bp.exe из папки BIN. После этого появится основной экран, на котором находятся: главное меню (верхняя строка), рабочее поле и строка состояния (строка в нижней части экрана). Если в центре рабочего поля находится окно с информа­цией о программе, то для того, чтобы начать работу, необходимо нажать какую-либо клавишу.

Текст программы набирается в окне редактирования. Для входа в меню необходимо нажать клавишу F10, для возврата из меню в окно редактирования - клавишу Esc.

Основное меню среды TurboPascal7.0содержит следующие пункты:

- File(работа с файлом)

- Edit(редактирование программного кода)

- Search(обеспечение контекстного поиска и замены)

- Run(выполнение программного кода)

- Compile(компиляция программного кода)

- Debug(отладчик)

- Tools(инструментальные средства среды программирования TurboPascal)

- Options(задание параметров)

- Windows(работа с окнами)

- Help(справка).

Каждый пункт основного меню имеет свое подменю, которые мы сейчас и рассмотрим.

Пункт Fileсостоит из следующих подпунктов:

- New- создание нового файла (программы). При выборе этого подпункта открывается пустое окно редактирования, в котором и набирается текст. Новому файлу присваивается имя NonameNN, где NN– номер временного файла от 00 до 99. Если закрыть такое окно или выйти из среды, то будет произведен запрос, сохранять ли этот файл, и в случае утвердительного ответа необходимо ввести имя файла (расширение .pasдобавляется по умолчанию).

- Open- открыть существующий (сохраненный) файл (программу). Имя файла выбирается в появляющемся после выбора этого пункта диалоговом окне. Для указанного файла открывается новое окно редактирования.

- Save- сохранение редактируемого файла. Если файл до этого ни разу не сохранялся, то производится запрос имени нового файла (см. подпункт New).

- Saveas...- сохранение файла под другим именем (например, изменить имя дисковода или имя файла). Файл с предыдущим име­нем также останется на диске.

- Saveall- сохранение всех измененных файлов.

- Changedir- изменение текущего каталога.

- Print- печать файла или выделенного блока на принтер.

- Printersetup- установка параметров принтера.

- DOSshell- временный выход в операционную систему. Для возврата обратно в TurboPascalиз DOSследует набрать команду exit.

- Exit- окончательный выход в операционную систему.

Ниже находятся строки с именами пяти последних редактиру­емых файлов. Если нужно открыть какой-либо из этих файлов, можно воспользоваться не пунктом Open, а выбрать одну из этих строк.

Напротив некоторых строк находятся названия клавиш, например, напротив Exitстоит Alt-X, напротив Save- F2. Это означает, что для выхода из среды TurboPascalможно вместо выбора в меню нажать клавиши Altи Х, а для сохранения файла - клавишу F2.

Меню Editвключает следующие возможности:

- Undo- отменить последнее изменение текста.

- Redo- восстановить отмененное при помощи Undoизмене­ние.

- Cut- удалить выделенный блок текста и поместить его в буфер (Clipboard), т.е. вырезать.

- Сору- скопировать выделенный блок текста в буфер Clip­board.

- Paste- вывести с текущего положения курсора текст из буфера Clipboard.

- Clear- удалить выделенный блок текста.

- Showclipboard- открыть окно Clipboardи показать в нем со­держимое буфера.

Пункт Searchвключает следующие возможности:

- Find- поиск фрагмента. В открываемом диалоговом окне за­даются сам фрагмент (в строке Texttofind) и опции поиска. В TurboPascal7.0 предусмотрены следующие опции управления поиском:

Casesensitive- различие строчных и заглавных букв.

Wholewordsonly- поиск только целых слов, т.е. если ис­комая строка является подстрокой какого-либо слова, то поиск будет продолжаться.

Regularexpression- поиск по выражению-описателю. Выра­жение-описатель формируется из специальных символов:

^- показывает в начале строки в выражении-описателе начало текстовой строки в искомом тексте;

$- показывает в конце строки в выражении-описателе конец текстовой строки;

. - на этом месте возможен любой символ;

<символ>*- последовательность из любого количества (в том числе и 0) символа, после которого знак "*" находится в выраже­нии-описателе;

<символ>+- последовательность из любого количества (но больше 0) символа, после которого знак "+" находится в выраже­нии-описателе;

[<символы>] - на этом месте возможен один из символов, на­ходящийся в этих скобках;

[^<символы>] - на этом месте возможны любые символы, за ис­ключением перечисленных после "^" в этих скобках;

|<символ 1>-<символ 2>] - на этом месте возможен любой сим­вол из диапазона <символ 1>..<символ 2>, включая границы диа­пазона;

\<специальный символ>- означает сам символ в строке, напри­мер, сочетание символов "\." означает, что в искомом тексте на ука­занном месте должна стоять точка, а не любой символ.

- Forward- поиск ведется по тексту сверху вниз.

- Backward- поиск ведется по тексту снизу вверх.

- Global- поиск во всем тексте.

- Selectedtext- поиск только в выделенном блоке текста.

- Fromcursor- поиск необходимо начать с текущего поло­жения курсора.

- Entirescope– поиск ведется с начала всего текста. Текст ищется только один раз, для повторного поиска следует воспользоваться пунктом Searchagain.

- Replace- замена фрагмента. Диалоговое окно похоже на окно Find, но в строке Newtextзадается еще и фрагмент, на который заменяется искомый. Кроме того, предусмотрены опции:

Promptonreplace- необходимо запрашивать подтверждение на замену;

Changeall- поиск и замена всех обнаруженных вхождений ис­комого текста.

- Searchagain- поиск или замена следующего вхождения ис­комого фрагмента после найденного при помощи команды Findили Replace.

- Gotolinenumber- переход к строке с заданным номером (номер задается в диалоговом окне).

- Showlastcompileerror- повторно показать последнюю ошиб­ку, обнаруженную компилятором.

- Finderror- поиск места ошибки, возникшей при выполнении.

- Findprocedure- поиск процедуры (функции) с именем, задан­ным в диалоговом окне.

Пункт Runсодержит следующие возможности:

- Run- запуск программы на выполнение. Если программа не была откомпилирована, то перед запуском производится ее ком­пиляция. При запуске программа выполняется либо до конца, либо до точки прерывания (если такая была установлена).

- Stepover- выполнение программы по операторам (без трас­сировки процедур и функций).

- Traceinto- выполнение программы по строкам с заходом в процедуры и функции.

- Gotocursor- выполнение программы до строки, на которой находится курсор.

- Programreset- прекратить выполнение программы (напри­мер, при отладке).

- Parameters- задание параметров программе (аналогично тому, как они задаются в подпрограмме).

Пункт Compileвключает следующие возможности:

- Compile- компиляция программы. Компиляция производится до первой обнаруженной ошибки. Сообщение об ошибке выдается в верхней строке.

- Make- перекомпиляция в случае изменения всех модулей про­граммы.

- Build- перекомпиляция модулей программы.

- Destination- установка места размещения исполняемого файла - в памяти (Memory- по умолчанию) или на диске (Disk). В случае размещения исполняемого файла на диске в текущем ка­талоге появляется ехе-файл данной программы.

- Primaryfile- установка основного файла для Makeи Build.

- Clearprimaryfile- отказ от установки основного файла.

- Information- получить информацию о текущем файле.

Пункт Debugвключает следующие возможности:

- Breakpoints- работа с окном точек прерывания.

- Callstack- открыть окно используемых подпрограмм.

- Register- открыть окно регистров.

- Watch- открыть окно отладки, в котором просматриваются значения переменных.

- Output- открыть окно результатов.

- Userscreen- открыть окно пользователя.

- Evaluate/modify- вычисление или модификация значения пере­менной или вычисление выражения.

- Addwatch- добавить в окно отладки переменную, значение которой необходимо определять во время отладки.

- Addbreakpoint- добавить точку прерывания.

Пункт Toolsпозволяет задавать и запускать программы, кото­рые можно запустить непосредственно из среды.

В пункте Optionsпредусмотрены следующие возможности:

- Compiler- параметры компиляторов. В открываемом диало­говом окне возможно установить параметры компиляции. Парамет­ры компиляции можно указывать и непосредственно в тексте программы в фигурных скобках и со знаком $ (например, параметр {$1-} - отключить проверку ввода-вывода). Соответствующая пара­метру буква в диалоговом окне выделена. Перечислим некоторые из параметров компиляции:

Forcefarcalls({$F+}) - возможность формирования "дальних" адресов у подпрограмм (этот параметр необходимо включить, на­пример, при использовании процедурных типов).

Overlayallowed({$O+})- создание оверлейной программы.

286 instructions({$G+})- формирование программы для процес­сора 80286.

Rangechecking({$R+})- проверка допустимости значения пере­менных порядковых типов.

Stackchecking({$S+})- проверка на наличие свободного места в стеке для размещения локальных переменных процедур и функ­ций.

I/Ochecking({$I+}) - проверка результатов операций ввода-вы­вода (при включенной проверке при ошибках ввода-вывода про­изводится аварийный выход из программы).

Overflowchecking({$Q+})- проверка переполнения.

8087/80287 *({$N+}) - работа с сопроцессором (необходима, на­пример, при использовании типа extended).

Emulation({$E+})- осуществление эмуляции сопроцессора в слу­чае его отсутствия.

Существуют также ключи, задающие компилятору параметры. К ним относятся:

{$Iname}- включение в текст программы на место указанного ключа текста файла с именем name.pas. Heразрешается использо­вать этот ключ внутри составного оператора.

{$Lname} - производится компоновка к основному файлу объ­ектного файла с именем name.obj.

{$М size, hmin, hmax} - управление размерами памяти, выделяе­мой под программу, size- размер стека (в диапазоне от 1024 до 65 520 байт), hmin- минимальный размер heap(в диапазоне от 0 до 655 360 байт), hmax- максимальный размер heap(в диапазоне от hminдо 655360). По умолчанию первый параметр равен 16 384, второй - 0, третий - 655 360.

- Compiler- задание параметров отладки.

- Directories- задание каталогов:

ЕХЕ & TPUdirectory- каталоги для размещений exe, tpuи тар файлов.

Includedirectories- каталоги, содержащие файлы, указанные в ключе компиляции {I}.

Unitdirectories- каталоги, содержащие модули, используемые программой.

Objectdirectories- каталоги, содержащие объектные файлы, ис­пользуемые в программе.

- Tools- включение программ в список программ, вызываемых из среды.

- Environment- условия работы в среде, например размеры эк­рана, автосохранение и т.д.

Пункт Windowsобеспечивает следующие возможности:

- Tile- размещение окон без перекрытий друг друга.

- Cascade- размещение окон с перекрытием друг друга.

- Closeall- закрытие всех окон.

- Refreshdisplay-обновление экрана.

- Size/Move- изменение размеров (положения) окна.

- Zoom- расширение окна на весь экран.

- Next - активизация следующего окна.

- Previous- активизация предыдущего окна.

- Close- закрытие окна.

- List- выдача списка окон, которые можно открыть или за­крыть.

В пункте Helpпредусмотрены такие возможности:

- Contents- вывод помощи о выводимой в настоящий момент на экран информации (об обнаруженной ошибке, об активном пункте меню и т.д.).

- Index- вывод в алфавитном порядке всех имеющихся в сис­теме помощи ключевых слов.

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

- Previoustopic- вывод помощи по предыдущему запросу.

- Usinghelp- вывод информации об использовании контекст­ной помощи.

- Files- вывод окна диалога, в котором можно задать файлы контекстной помощи.

- Compilerdirectives- вывод списка директив компилятора дан­ной версии.

- Reservedwords- вывод списка зарезервированных слов данной версии.

- Standardunits- вывод списка стандартных модулей данной версии.

- TurboPascallanguage- вывод списка основных элементов языка Паскаль данной версии.

- Errormessage- вывод информации о сообщениях об ошиб­ках.

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

3 Логическое выражение в программировании — конструкция языка программирования, результатом вычисления которой является «истина» или «ложь».

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

Функция или процедура может быть уже включена в сам язык программирования, а может входить в модуль, который требуется «подключить» к программе.

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

Арифметические функции можно использовать только с величинами целого и вещественного типа.

Функция Назначение Тип результата

abs (x) абсолютное значение аргумента совпадает с типом аргумента

sqr (x) квадрат аргумента совпадает с типом аргумента

sqrt (x) квадратный корень аргумента вещественный

cos (x) косинус аргумента вещественный

sin (x) синус аргумента вещественный

arctan (x) арктангенс аргумента вещественный

exp (x) ex вещественный

ln (x) натуральный логарифм вещественный