Слово алгоритм происходит от algorithmic – латинской формы написания имени латинского математика IX в. Аль-Хорезми, который сформулировал правила выполнения четырёх арифметических действий над многозадачными числами. В дальнейшем алгоритм стали называть описание любой последовательности действий, которую следует выполнить для решения заданной задачи.
Алгоритм может быть ориентирован на исполнение его человеком или автоматическим устройством. Алгоритмы, предназначены для выполнения компьютерами, обычно называют компьютерными программами или просто программами.
Алгоритмом называется точное предписание, определяющее последовательность действий исполнителя, направленных на решение поставленной задачи. В роли исполнителя алгоритмов могут выступать люди, роботы, компьютеры.
Используются разные способы записи алгоритмов. Широко распространенный словесный способ записи: это записи рецептов приготовления различных блюд в кулинарной книге, инструкции по использованию технических устройств, правила правописания и многие другие. Наглядно представляется алгоритм языком блок-схем.
Учимся работать в турбо паскале.
Свойства алгоритма. При составлении алгоритма необходимо обеспечить, чтобы он обладал рядом свойств.
1. Однозначность алгоритма, под которой понимается единственность толкования исполнителем правил выполнения действий и порядка их выполнения. Чтобы алгоритм обладал этим свойством, он должен быть записан командами из системы команд исполнителя.
2.Конечность алгоритма – обязательность завершения каждого из действий, составляющих алгоритм, и завершаемость выполнения каждого алгоритма в целом.
3 Результативность алгоритма, предполагающая, что выполнение алгоритма должно завершится получением определенных результатов.
4.Массовость, т.е. возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановки задачи Для того чтобы алгоритм обладал свойством массивности, следует составлять алгоритм, используя обозначения величин и избегая конкректных значений.
5. Правильность алгоритма, под которой понимается способность алгоритма давать правильные результаты решения поставленных задач.
Алгоритмы бывают трех основных видов (типов), которые и являются базовыми при написании программ.
Первый тип — линейный алгоритм; такой, в котором все действия выполняются в строгом порядке, последовательно, одно за другим.
Второй тип — разветвляющийся алгоритм; такой, в котором выполняются те или иные действия в зависимости от выполнения или невыполнения некоего условия.
Третий тип — циклический алгоритм; такой, в котором присутствуют повторяющиеся действия с какой-либо изменяющейся величиной, так называемым параметром.
Исполнитель алгоритма — это человек или какое-либо устройство (компьютер или робот).
Алгоритм должен быть составлен таким образом, чтобы исполнитель, для которого создан алгоритм, смог выполнить его и получить результат.
Способы задания алгоритма:
Turbo Pascal — Основы работы и пример программы
словесный, табличный, графический (блок-схемы).
Способ записи алгоритмов с помощью специальных блоков (прямоугольников, ромбов, параллелограммов и т.д.) называют графическим или блок-схемой.
Ветвления имеют различные особенности структуры.
Они могут быть простыми или более сложными в зависимости от требований решаемой задачи.
Ветвлением называется структура, в которой смысл и/или порядок исполняемых действий изменяется при выполнении или невыполнении какого-либо условия.
— Базовая структура ветвления лежит в основе разветвляющегося алгоритма.
В общем случае схема разветвляющего алгоритма будет выглядеть так:
Если , то , иначе .
В разветвляющемся алгоритме при невыполнении условия действия могут не предусматриваться. Тогда схема будет выглядеть так:
Если , то .
В блок-схемах блок условия обозначается в виде ромба. Внутри блока проверяемое условие записывается в математической форме или в форме вопроса. Если в ходе исполнения алгоритма условие оказывается выполненным, то процесс продолжается в направлении «Да». Если проверяемое условие не выполняется, то процесс продолжается в направлении «Нет».
Поскольку различные задачи требуют различных ветвлений, то алгоритмы делятся дополнительно на три различных вида.
Каждый вид несколько отличается от других по структуре, степени сложности и способу записи в программе.
Все ветвления делятся на:
— Неполные. (либо с ответом «да» либо с ответом «нет»)
— Полные. (действия следуют как за ответом «да» так и за ответом «нет»
— Множественные. (проверется более чем одно условие)
Составление структурных схем дает возможность представить себе пошаговое выполнение алгоритма. Для примера я даю задачу: Составить условие и произвести вычисления согласно представленной структурной схеме. Заменить структурную схему на алгоритм
алгоритм
* a :=14
* если (a-b)>c
* иначе
*все-если
*вывод (‘а=’, a :5:3)
Ответ:(а=-3,00)
Program znachenie;
Var a,b,c: real;
begin
if (a-b)>c then
else a:=c-b
writeln(‘a=’,a:5:3)
4. Составление блок-схемы по условию.
Даны три отрезка с длинами a, b, c. Составьте алгоритм проверки существования треугольника со сторонами a, b, c.
Алгоритм представленный в виде блок-схемы.
И структурированного алгоритма:
*вывод (ввести длины отрезков a , b . c )
***вывод(треугольник не существует)
** вывод (треугольник не существует)
*вывод (треугольник не существует)
var a,d,c: integer;
writeln (‘введи длины отрезков a , b , c ‘);
writeln (‘ треугольник существует ‘);
writeln (‘ треугольник не существует ‘);
writeln (‘ треугольник не существует ‘);
writeln (‘ треугольник не существует ‘);
Алгоритм записанный для компьютера,
называется программой.
Для написания исходных текстов программ используют интегрированную среду разработчика, которая включает в себя встроенный компилятор, который позволяет откомпилировать исходные тексты программы и получить готовый исполняемый файл и встроенный отладчик, необходимый для отладки программы в нашем случае это Турбо Паскаль.
Турбо Паскаль — это язык высокого уровня программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники. Паскаль был разработан швейцарским ученым Никлоусом Виртом в 1968-1971 годах и изначально был ориентирован на обучение программированию. Язык получил широкое распространение в сфере образования, используетя в промышленном программировании и служит базой для множества других языков.
Turbo Pascal — это не просто язык программирования, это целая система для программистов, которая включает в себя редактор, компилятор, отладчик и еще некоторые возможности.
Компьютерная программа – это план будущих работ, составленный в расчёте на его выполнение компьютером. Чтобы компьютер смог выполнить программу, она должна быть записана в специальной форме, доступной компьютеру;
Основные этапы решения задач на компьютере. Процесс решения задач на компьютере – это совместная деятельность человека и ЭВМ. Этот процесс можно представить виде нескольких последовательных этапов.
На долю человека приходятся этапы, связанные с творческой деятельностью – постановкой, алгоритмизацией, программированием задач анализом результатов, а на долю компьютера — этапы обработки информации с соответствии с разработанным алгоритмом.
Первый этап – постановка задачи. На этом этапе участвует человек, хорошо представляющий предметную область задачи. Он должен чётко определить цель задачи, дать словесное описание содержания задачи и предложить общий подход к её решению.
Второй этап – математическое и информационное моделирование. Цель этого этапа – создать такую математическую модель решаемой задачи, которая может быть реализована в компьютере.
Третий этап – алгоритмизация задачи. На основе математического описания необходимо разработать алгоритм решения.
Четвёртый этап – программирование. Программой называется план действий, подлежащий выполнению некоторым исполнителем, в качестве которого может выступать компьютер.
Пятый этап – ввод программы и исходных данных в ЭВМ. Программа и исходные данные вводятся в ЭВМ с клавиатуры с помощью редакторов текстов
Шестой этап – тестирование и отладка программы. На этом этапе происходит исполнение алгоритма с помощью ЭВМ, поиск и исключение ошибок.
Седьмой этап – исполнение отлаженной программы и анализ результатов.
На этом этапе программист запускает программу и задаёт исходные данные, требуемые по условию задачи. Полученные в результате решения выходные данные анализируются постановщиком задачи, и на основе этого анализа вырабатываются соответствующие решения, рекомендации , выводы.
Турбо Паскаль — это язык высокого уровня программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники. Паскаль был разработан швейцарским ученым Никлоусом Виртом в 1968-1971 годах и изначально был ориентирован на обучение программированию. Язык получил широкое распространение в сфере образования, используется в промышленном программировании и служит базой для множества других языков.
Программа на языке Turbo Pascal формируется с помощью конечного набора знаков, образующих алфавит языка, он состоит
-прописных и строчных букв латинского алфавита ( A , B … Z , a , b ,…, z ) и знака подчеркивания.
-десятичных (0,1,…9) и шестнадцатиричных цифр (0,1,…9, A , B ,…, F )
-также в алфавит включаются специальные символы и составные символы.
Неделимые последовательности знаков алфавмта образуют слова, отделенные друг от друга разделителями. Ими могут служить : пробел, символ конца строки, комментарий. Слова подразделяются на: зарезервированные слова -составная часть языка Паскаль, которые имеют фиксированное начертание и несут в программе определенный смысл, стандартные идентификаторы (имена) -служат для обозначения заранее определенных разработчиком языка типов данных, констант, процедур и функций, идентификаторы пользователя-применяются для обозначения меток, констант, переменных, процедур и функций, определенных программистом состоят из букв и цифр и знака подчеркивания и начинаются с буквы или знака подчеркивания).
Turbo Pascal — это не просто язык программирования, это целая система для программистов, которая включает в себя редактор, компилятор, отладчик и еще некоторые возможности. Это типизированный язык. Он построен на основе строго соблюдения концепции типов, в соответствии с которой все переменные в языке операции определены только над операндами совместимых типов. В языке Паскаль тип величины задают заранее. Все переменные, используемые в программе, должны быть объявлены в разделе описания с указанием их типа ( VAR ). Обязательное описание типа приводит к избыточности в тексте программ, но такая избыточность является важным вспомогательным средством разработки программ и рассматривается как необходимое свойство современных алгоритмических языков высокого уровня.
Источник: prezentacii.org
Линейный алгоритм на Turbo Pascal.
Вспомогательный алгоритм, записанный на языке программирования называется подпрограммой (п/п). Подпрограмма имеет имя (идентификатор), по которому к ней можно обращаться. Все подпрограммы должны быть описаны в разделе описаний. В описании подпрограммы перед параметрами-переменными стоит ключевое слово var.
Параметры: глобальные и локальные.
Глобальные: действующие в любой части программы, имеющие имя, описанное в основной программе.
Локальные: действующие в подпрограмме, их идентификаторы и значения имеют смысл только в пределах данной подпрограммы и недоступны вызывающей программе.
Параметры: формальные и фактические.
Формальные – имена параметров, которые использованы в описании подпрограммы.
Фактические – конкретные значения, которые указываются в основной программе.
В языке программирования TURBO PASCAL приняты два вида подпрограмм:
Процедуры и функции.
Объявление процедуры:
procedure имя процедуры (список формальных параметров: тип идентификатора);
const
var
begin
end;
При вызове процедуры формальные параметры становятся фактическими.
Объявление функции:
function имя функции (список формал. параметров: тип идентиф.): тип идентификатора;
const
var
begin
end;
Обращение к функции в основной программе производится по имени функции с указанием фактических параметров. Число, тип, порядок следования фактических параметров должен соответствовать формальным параметрам, указанным в описании функции.
Использование процедуры или функции зависит от конкретного случая. Если подпрограмма вычисляет единственный результат, её можно реализовать как функцию. Если же от подпрограммы требуется вычислить несколько значений, её лучше оформить в виде процедуры.
program MAX_3;
uses crt;
var a,b,c,z1,z2:integer;
procedure MAX_2(x,y:integer; var z:integer);
Begin
if x>y then z:=x else z:=y;
end;
BEGIN
clrscr;
writeln (‘Поиск максимума из трёх чисел’);
writeln(‘ Введите три числа через пробел и нажмите Enter’ );
readln (a,b,c);
writeln (‘Максимальное число’, z2);
readln;
End.
РЕКУРСИЯ
В TURBO PASCALдопускается наличие в теле подпрограммы оператора вызова самой себя. Такие подпрограммы называются рекурсивными, а такой способ вызовы – рекурсией.
Во всех рекурсивных подпрограммах должно присутствовать какое-то условие прекращения рекурсии. При этом единственном условии рекурсия должна прекратиться; при всех остальных условиях она будет продолжаться.
Рекурсия – удобный подход при решении некоторых задач, например, вычисление факториала.
program factor;
uses crt;
function factorial(k:integer):integer;
Begin
if k=1
then factorial:=1
else factorial:=k* factorial(k-1);
end;
Var
Begin
writeln (‘Вычисление факториала’);
writeln (‘Введите число, факториал которого надо вычислить’);
write(‘ — >’);
readln(n);
f:= factorial(n);
writeln (‘Факториал числа ‘,n, ‘ равен’,f);
readln;
End.
ГРАФИКА на TURBO PASCAL.
Турбо Паскаль имеет специальный графический модуль graph, который содержит графические процедуры и функции.
Модуль graph описывается с помощью директивы uses: uses graph;
В обычном состоянии после загрузки экран находится в текстовом режиме, при этом применять графические процедуры невозможно. Необходимо перейти в графический режим. Для этого в программе прописываются следующие процедуры:
var grdr,grmod:integer;
Begin
grdr:=detect;
initgraph(grdr,grmod,’’);
_ _ _ _ _ _ _ _ _ _ _ _
closegraph;
End.
Процедуры графического модуля graph.
putpixel(x,y,c); — изображение точки с координатами х,у; с – номер цвета.
line(x1,y1,x2,y2); — изображение отрезка прямой, ограниченный точками с координатами х1,у1и х2,у2.
rectangle(x1,y1,x2,y2); — изображение рамки.
bar(x1,y1,x2,y2); — изображение прямоугольника, где х1,у1 — начало и х2,у2 — конец диагонали прямоугольника.
circle(x,y,r); — изображение окружности радиуса r с центром в точке с координатами х, у.
arc(x,y,alf1,alf2,r); — изображение дуги радиуса r с центром в точке с координатами х, у, где alf1,alf2 – углы в градусах.
setbkcolor(c); -указание цвета фона, с- номер цвета.
setcolor(c); — цвет рисования для putpixel, line, circle.
setfillstyle(obr,c); — цвет заполнения для bar, floodfill, где obr=o – цвет фона, obr=1 – номер указанного цвета.
floodfill(x,y,c); — заполнение замкнутой области, ограниченной линией цвета с, в соответствии с процедурой setfillstyle.
setlinestyle(stil, pattern, tolsch); — указание типа линии.
outtextxy(x,y, ‘Текст’); — устанавливает указатель вывода в точку с координатами x,y и выводит строку символов Текст.
program uzor;
uses graph;
Источник: cyberpedia.su
Среда программирования Турбо- Паскаль. Команды отладки и редактирования в среде Турбо- Паскаль. Основные типы алгоритмов и их блок схемы. Примеры.
Система программирования Турбо Паскаль представляет собой единство двух в известной степени самостоятельных начал: компилятора с языка программирования Паскаль и некоторой инструментальной программной оболочки, способствующей повышению эффективности создания программ.
Для того чтобы запустить Турбо Паскаль необходимо открыть файл TURBO.EXE. Этот файл отвечает за запуск готовой к работе диалоговой системы программирования Турбо Паскаль. В систему входят только необходимые части Турбо Паскаля (текстовый редактор, компилятор, компоновщик, загрузчик). Для нормальной работы в системе понадобятся также основная библиотека, располагающаяся в файле TURBO.TPL, и справочная служба (файл TURBO.HLP) В принципе, этих файлов будет достаточно для написания, компиляции и исполнения небольших программ.
Сразу же скажем, что для выхода из Турбо Паскаля следует нажать клавишу Alt и, не отпуская ее, — клавишу с латинской буквой X, после чего можно отпустить обе клавиши.
Текстовый редактор системы Turbo Pascal предоставляет программисту удобные средства создания и редактирования кодов программ. Признаком того, что система находится в состоянии редактирования, является наличие в окне редактора курсора. Режим редактирования автоматически устанавливается сразу после загрузки Turbo Pascal.
Из режима редактирования можно перейти к любому другому режиму работы Турбо Паскаля с помощью специальных клавиш или выбора подходящего режима из главного меню. Если среда находится в состоянии выбора из меню, курсор исчезает, а в строке меню появляется цветной указатель-прямоугольник, выделяющий одно из кодовых слов (опций меню). Для перехода от состояния выбора режима из главного меню в состояние редактирования нужно нажать клавишу Esc (ESCape- ускользать, убегать), а для перехода к выбору из главного меню — F10.
Ниже перечислены наиболее часто используемые команды редактор Turbo Pascal.
· Page Up — на страницу вверх;
· Page Down — на страницу вниз;
· Ноmе — в начало текущей строки;
· End — в конец текущей строки;
· Ctrl-Page Up -в начало текста;
· Ctrl-Page Down — в конец текста.
· Backspace — стирает символ слева от курсора;
· Delete — стирает символ, на который показывает курсор;
· Ctrl-Y-стирает строку с курсором;
· Enter — вставляет новую строку, разрезает старую;
· Ctrl-QL — восстанавливает измененную строку (действует, если курсор не покидал строку после ее изменения).
Работа с блоком:
· Ctrl-KB- начинает выделение блока;
· Ctrl-K К- заканчивает выделение блока;
· Ctrl-K Y — уничтожает выделенный блок;
· Ctrl-С — копирует блок;
· Ctrl-K V — перемещает блок на новое место;
· Ctrl-KR — читает блок из файла;
· Ctrl-K P — печатает блок.
Кроме окна редактора, в Турбо Паскале используются также окна: отладочного режима, вывода результатов работы программы, справочной службы, и т.д. По желанию они могут вызываться на экран поочередно или присутствовать на нем одновременно.
Команды, которые передаются среде Турбо Паскаля функциональными клавишами и некоторыми их сочетания с клавишами Ctrl и Alt:
· Fl — обратиться за справкой к встроенной справочной службе (Help-помощь);
· F2 — записать редактируемый текст в дисковый файл;
· F3 — прочитать текст из дискового файла в окно редактора;
· F4 — используется в отладочном режиме: начать или продолжить исполнение программы и остановиться перед исполнением той ее строки, на которой стоит курсор;
· F5 — распахнуть активное окно на весь экран;
· F6 — сделать активным следующее окно;
· F7 — используется в отладочном режиме: выполнить следующую строку программы; если в строке есть обращение к процедуре (функции), войти в эту процедуру и остановиться перед исполнением первого ее оператора;
· F8- используется в отладочном режиме: выполнить следующую строку программы; если в строке есть обращение к процедуре (функции), исполнить ее и не прослеживать ее работу;
· F9 — компилировать программу, но не выполнять ее;
· F10 — перейти к диалоговому выбору режима работы с помощью главного меню;
· Ctrl-F9 — выполнить прогон программы: компилировать программу, находящуюся в редакторе, загрузить ее в оперативную память и выполнить, после чего вернуться в среду Турбо Паскаля.
· ALT-F8 — сменить окно редактора на окно вывода результатов работы (прогона) программы.
Алгоритм – описание последовательности действий приводящее к конечному результату.
Свойства алгоритма:
· Дискретность — это свойство указывает, что любой алгоритм должен состоять из конкретных действий, следующих в определенном порядке.
· Детерминированность — любое свойство алгоритма должно быть строго и недвусмысленно
определено в каждом случае.
· Конечность — каждое действие в отдельности и алгоритм в целом должен иметь возможность завершения.
· Массовость — один и тот же алгоритм можно использовать с разными исходными данными.
· Результативность — это свойство требует, чтобы в алгоритме не было ошибок.
Все алгоритмы можно условно разделить на три группы:
Линейный алгоритм — описание действий, которые выполняются однократно в заданном порядке.
Циклический алгоритм — описание действий, которые должны повторятся указанной число раз или пока не выполнено заданное условие.
Перечень повторяющихся действий называется телом цикла.
Разветвляющийся алгоритм — алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
В зависимости от исполнителя, алгоритм может записываться с помощью графических обозначений – блок- схем.
Ввод, вывод данных
Цикл с параметром
В основе системы программирования лежит алгоритмический язык программирования Паскаль.
Пример программы на языке Паскаля:
program nl;
uses Crt;
var
Begin
ClrScr;
Goto XY(25,5);
Write (?КакВасзовут??);
Read (name);
GotoXY(25, 1 О );
Wгitе (?Привет. пате. );
Repeat until key pressed;
End.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Рекомендуем для прочтения:
Источник: studopedia.ru