Добавлен: 23.04.2023
Просмотров: 91
Скачиваний: 2
Введение
Появление и начальное становление информатики как науки относится ко второй половине прошлого века. Область интересов информатики – это структура и общие свойства информации, а также вопросы, связанные с процессами поиска, сбора, хранения, преобразования, передачи и использования информации в самых различных сферах человеческой деятельности. Обработка огромных объемов потоков информации немыслима без автоматизации и систем коммуникации, поэтому электронные вычислительные машины и современные информационные и коммуникационные технологии являются и фундаментальным ядром, и материальной базой информатики.
История появления и развития персональных компьютеров является одним из наиболее впечатляющих явлений нашего века. С момента появления первых образцов персональных компьютеров прошло меньше 25 лет, но сейчас без них уже немыслимо огромное количество областей человеческой деятельности – экономика, юриспруденция, управление, наука, инженерное дело, издательское дело, образование, культура и т.д. Интерес к персональным компьютерам постоянно растет, а круг их пользователей непрерывно расширяется. В число пользователей ПЭВМ вовлекаются как новички в компьютерном деле, так и специалисты по другим классам ЭВМ.
Тема алгоритмизации и программирования на сегодняшний день является очень важной. Алгоритмизация и программирование являются основными инструментариями информатики и применяются в различных областях человеческой деятельности. В данной работе мною будут рассмотрены такие понятия, как алгоритм и алгоритмизация, программы и программирование, языки программирования. Так же я постараюсь показать, насколько важными на сегодняшний день являются данные понятия, где и в каких областях они применяются, и какие программные продукты существуют для юристов и как они их используют в повседневной работе.
Целью данной работы является изучение алгоритмизация как обязательный этап разработки программы.
Для реализации поставленной цели необходимо выполнить ряд задач:
- Изучить понятие алгоритмизации и алгоритмов;
- Рассмотреть основные алгоритмические конструкции;
- Изучить свойства алгоритмов;
- Рассмотреть понятие программирования;
- Изучить языки программирования;
- Рассмотреть программное обеспечение и т.д.
Глава 1. Алгоритмизация и алгоритмы
1.1 Понятие алгоритмизации и алгоритмов
Алгоритмизация является одним из основных инструментариев информационной технологии. Под алгоритмом понимают постоянное и точное предписание (указание) исполнителю совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи. Разработка алгоритма является основным в процессе программирования. Это один из наиболее сложных этапов решения задачи с использованием ЭВМ.
Алгоритм – это конечная последовательность однозначных предписаний, исполнение которых позволяет с помощью конечного числа шагов получить решение задачи.[1]
Термин «алгоритм» – транскрипция имени великого узбекского математика Мухаммеда аль-Хорезми (Мухаммеда из Хорезма, область в нынешней республике Узбекистан). Мухаммед аль-Хорезми еще в IX веке разработал правила вычета четырех действий арифметики. Многие годы понятие «алгоритм» использовалось математиками для описания правил решения математических задач. Например, существует алгоритм вычисления квадратного корня положительного числа, алгоритм нахождения наибольшего общего делителя двух чисел и многие другие. Однако не следует считать алгоритм чисто математическим понятием.
Каждый из нас с раннего детства, даже не замечая этого, ежедневно решает задачи, для описания которых использует тот или иной алгоритм, сформулированный в виде конечной последовательности однозначных предписаний. Входя в кабину телефона-автомата, вы видите на стене четкий алгоритм, однозначно описывающий ваши действия, цель которых – разговор с другом: снять трубку, опустить монету, набрать номер и т.д.
Носителями алгоритмов являются фоторецепторные справочники, инструкции по использованию бытовой аппаратуры (от утюга до видеомагнитофона), медицинские рекомендации и описания гимнастических упражнений, даже банки и упаковки с продуктами (например, приготовленная чашка кофе – результат исполнения алгоритма). Каждый алгоритм создается конкретным автором (человеком или группой людей) в результате обобщения прошлого опыта или технологических разработок и рассчитан на конкретного исполнителя.[2]
Алгоритмы «бытовой сферы» всегда предполагают определенный уровень предварительной подготовки исполнителя и потому излагаются без перечисления ряда промежуточных операций, способ выполнения которых (тоже алгоритм!) избирается самим исполнителем. Автор кулинарного рецепта предполагает, что хозяйка умеет включать и выключать газовую или электроплиту, регулировать нагрев; в инструкции по применению водоэмульсионной краски не описывается техника вскрытия банки (взять консервный нож или поддеть крышку тупым предметом…) и т.д.
Не только в быту, но и в технике, и даже в математике многие алгоритмы формулируются неточно, приблизительно. Например, цель математика – описать последовательность операций в общей и абстрактной форме: математический алгоритм не рассматривает способы подготовки и контроля исходных данных, форматы представления результатов, действий при особых ситуациях.
При подготовке алгоритмов, исполнителем которых являет компьютер, приходится учитывать, что уровень его предварительной подготовки близок к нулю, что самый «умный» компьютер «глупее» шестилетней девочки. Процесс подготовки задания для компьютера можно разделить на два общих этапа:
1) создание укрупненного алгоритма (требования к исходным данным и результатам, постановка задачи, описание точной схемы решения с указанием всех особых ситуаций);
2) составление программы задания (задачи).
При таком подходе необходимо:
1) создать строгую систему условных обозначений для записи команд в понятной для человека форме (язык программ);
2) программу-посредника, которая бы такие команды на , понятный машине.
пример для нахождения середины при помощи циркуля и .
Алгоритм деления АВ пополам:
1) ножку циркуля в А;
2) установить раствор равным длине АВ;
3) провести ;
4) поставить ножку в точку В;
5) провести ;
6) через точки окружностей прямую;
7) отметить пересечения этой с отрезком АВ.
Анализ различных показывает, что запись распадается на отдельные исполнителю выполнить законченное . Каждое такое называется командой. алгоритма выполняются за другой. каждого шага алгоритма точно , какая команда выполнятся . Совокупность команд, могут быть исполнителем, называется команд .
1.2 Основные алгоритмические
Наиболее понятно алгоритма можно с помощью , в которой используются фигуры (блоки), между собой , указывающими выполнения действий. определенные стандарты изображений блоков. , команду информации помещают в , имеющий вид прямоугольника, условий — в ромб, ввода или — в параллелограмм, а овалом начало и конец .[3] Структурной элементарной алгоритма простая команда, один элементарный шаг или отображения информации. команда на схем изображается в функционального блока.
блок имеет вход и выход. Из простых и проверки условий составные команды, более структуру и тоже вход и один . Структурный подход к алгоритмов использование только алгоритмических структур (): следование, ветвление, , которые быть оформлены образом.
Рассмотрим структуры алгоритма. следования только из простых . На рисунке простые имеют условное S1 и S2. Из команд образуются линейные . Примером линейного будет нахождение двух , введенных с клавиатуры. ветвления — это составная алгоритма, в которой в от условия Р или одно S1, или другое S2 . Из команд следования и ветвления составляются алгоритмы ( ветвления). Примером алгоритма будет большего из двух , введенных с . Команда ветвления быть полной и формы.
Неполная команды используется тогда, необходимо выполнять S только в случае условия P. условие P не соблюдается, то ветвления завершает работу без выполнения . Примером ветвления неполной будет уменьшение в два только четного .
Команда — это составная команда , в которой в зависимости от Р возможно многократное действия S. Из следования и команд составляются циклические (алгоритмы повторения).[4] она так потому, что проверяется условие, а уже выполняется действие. действие выполняется, условие . Пример циклического может быть . Пока с клавиатуры положительные , алгоритм выполняет их суммы.
Команда с предусловием не является возможной. команды повторения с является команда с параметром. Она используется , когда количество повторений . В блок-схеме команды с параметром условие не в ромбе, а в . Примером циклического с параметром будет суммы первых 20 чисел.
В повторения с постусловием выполняется действие S и затем, проверяется P. Причем повторяется до тех пор, пока не соблюдается. Примером повторения с постусловием уменьшение числа до тех пор, пока оно . Как только число отрицательным, команда заканчивает работу.
С помощью только этих конструкций (последовательно или ) можно алгоритм любой сложности. Каждая конструкция может без изменений в реализована на любом программирования, например, на и Бейсике. Поэтому грамотно алгоритм с помощью , а уже затем, зная, как команды на конкретном программирования, программу на компьютере и результат, запустив ее на .[5]
1.3 Свойства алгоритмов
выполнение алгоритма за конечное шагов приводит к задачи, к достижению . Разделение решения задачи на операции (выполняемые по определенным командам) – свойство , называемое дискретностью. алгоритм строится в на некоторого исполнителя. Для чтобы мог решить задачу по алгоритму, необходимо, он был в состоянии понять и каждое , предписываемое командами . Такое свойство называется определенностью ( точностью) . (Например, в алгоритме , что надо взять 3–4 муки. Какие , что значит 3–4, муки?)
Еще одно требование, предъявляемое к , – результативность (или ) алгоритма. Оно , что исполнение алгоритма закончиться за конечное шагов.
Универсальность. должен составлен так, чтобы им мог любой исполнитель для аналогичной задачи. (, правила и умножения чисел для любых чисел, а не для конкретных.)
Таким , выполняя , исполнитель может не в смысл того, что он , и вместе с тем получать результат. В случае говорят, что действует формально, т.е. от содержания поставленной и только выполняет некоторые , инструкции.
Свойства :
1. Дискретность (алгоритм состоять из действий, следующих в порядке);
2. Детерминированность ( действие должно строго и определено в каждом );
3. Конечность (каждое и алгоритм в целом иметь завершения);
4. Массовость ( и тот же алгоритм можно с разными исходными );
5. Результативность ( ошибок, алгоритм приводить к правильному для всех допустимых значениях).
Для наглядного представления широко используется форма - блок-схема, составляется из графических объектов.
создания алгоритма:
1. должен быть в форме, человеку, который его .
2. Алгоритм должен представлен в форме, тому (в том числе и человеку), будет выполнять в алгоритме действия.
, который выполнять алгоритм, называют исполнителем.
- объект, который алгоритм.
исполнителями являются , роботы, компьютеры...
способен выполнить ограниченное команд. Поэтому разрабатывается и детализируется так, в нем присутствовали только те и конструкции, может выполнить . Исполнитель, как и любой , находится в определенной и может только допустимые в нем .
Компьютер – автомат исполнитель алгоритмов. , записанный на «» компьютеру языке , называется программой.[6] можно записывать не при помощи . В настоящее время несколько способов алгоритмов:
1. Словесный, т.е. на естественном , описание словами выполнения алгоритма.
алгоритм нахождения общего (НОД) двух чисел. Алгоритм быть следующим: два числа; числа равны, то любое из них в качестве и остановиться, в противном продолжить алгоритма; определить из чисел; заменить из чисел разностью и меньшего из ; повторить алгоритм с
2. Формульно-словесный, аналогично 1, плюс параллельная используемых .
В качестве примера привести ведение преподавателем (словесный ) с одновременной формул на доске ().
3. Графический, т.е. с помощью .
Графический способ алгоритмов более компактным и по сравнению со словесным. При исполнении алгоритм в виде связанных между блочных символов, из которых соответствует одного из . Такое графическое называется схемой или блок-схемой.