Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Алгоритмизация как обязательный этап разработки программы (Алгоритмизация как обязательный этап разработки программы)

Содержание:

Введение.

Слово «алгоритм» происходит от имени восточного математика Мусы ал-Хорезми, жившего в 783—850 гг. В первой половине XII одна их его книг проникла в Европу, где получила перевод Algoritmi de numero indorum(«алгоритм о счете индийском»). Еще в одной из его книг («Книга о сложении и вычитании») приводит к происхождению слова «Алгебра» (Аль–Джебр - выполнение).

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

Алгоритмизация - это процесс построения алгоритма решения задачи, результатом которого является выделение этапов процесса обработки информации.

Алгоритм – это точное описание правил, действий ведущий от начальных данных к конечному результату.

Данный процесс охватывает большой объем информации, и состоит в всех областях производства, разработки и т.д. На данный момент мы рассмотрим термин алгоритмизация, как обязательный этап в разработке программы.

1. Алгоритмизация как обязательный этап разработки программы.

1.1 Понятие алгоритма

Для решения проблемы, подрядчик должен разработать план действий для достижения конечного результата. Проще говоря, подрядчик должен быть задан определенный алгоритм решения этой задачи на языке, понятном для него. Исполнитель означает, что такой человек, как одна команда.

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

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

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

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

Термин алгоритм происходит от имени узбекского ученого IX века Аль-Хорезми, который в своем" обращении по арифметике", переведенном в двенадцатом веке с арабского на латинский язык, оценил правила арифметики на

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

Виды алгоритмов как логико-математических средств отражают также компоненты человеческой деятельности и алгоритмы в зависимости от цели, начальных условий задачи, путей ее решения и определения действий исполнителя подразделяются на [3]:

- механические алгоритмы, или детерминированные, жесткие диски (например,

алгоритм работы машины, двигателя и др);

- гибкие алгоритмы, например, стохастические, т. е. вероятностные и ev -.

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

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

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

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

Эвристика (по-гречески-are, open) - это специальные методы и приемы, которые позволяют открывать, новые и неизвестные, находить решение задачи не тривиальная задача.

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

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

Такой пример одинаковый алгоритм преобразования является перевод алгоритмическом язык на другой.

В Целом, алгоритмизация в будет процесс включает следующие действия:

1) константа разложения целей, распределения, Автоматический, с этой точки зрения процесса компьютерной, а также разбивка каждого этапа в отдельных действиях;

2) ведение официального содержания каждого этапа и / или пароль;

3) определение Общего порядка выполнения поездку и / или другие;

4) проверить точность алгоритм.

Декомпозиция предполагает разделение одного сложного на более простые алгоритмы.

Гораздо проще решить проблему постепенно, в два этапа (сложность каждого этапа в несколько раз меньше сложности той же проблемы).

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

На втором этапе, остается только код (программист), формулы замена замедляет инструкции, алгоритм, с погрузчика языке. Эта работа должна быть связана с большим напряжением. Для простых задач достаточно знать Общие правила разработки программы, данные описания правила, Base Operator (ВВО - да/вывода, обработки, управления, проблема.)

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

На втором этапе остается только выполнить кодирование (փ), заменив формулу инструкции алгоритма операторами определенного языка. Эта работа больше не связана с большим умственным напряжением. Для простых задач достаточно знать Общие правила проектирования программ, правила описания данных основных операторов (VVO-da / output processing management).

Свойства алгоритмов

Алгоритмы имеют ряд свойств: прозрачность, конфиденциальность, точность, КПД, масса.

Свойства алгоритма-это набор свойств, отличающих алгоритм от любых предписаний и обеспечить его автоматический запуск.

Ясность для исполнителя – содержание положения о применении только таких действий, которые указаны в инструкции подрядчика, то есть, алгоритм должен быть указан в инструкции, что подрядчик (персональный компьютер, промышленный компьютер, контроллер, кристалл микро-ЭВМ и т. д.) может принять и воплотить в жизнь tre Bohemia действия (операции).

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

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

-Эффективность завершения решение проблемы после того, как алгоритм, или сделан вывод о невозможности продолжения решения по любой из причин, то есть, алгоритм должен обеспечивать возможность получения результата-

Тата после конечное число шагов.

Массовость-означает, что алгоритм решения этой проблемы является разработанный в Общем виде, т. е. он должен быть применим к определенному классу проблем, которые только распространяются от источника данных. В то же время, источник данных может быть извлечен из определенной области, которая называется областью применимости алгоритма.

Основные характеристики алгоритмов

Для решения одной и той же задачи обычно можно использовать разные алгоритмы. В этом смысле, возникает необходимость сравнивать их друг с другом, и для этого нужен ряд критериев качества алгоритмов.

Временные характеристики алгоритма определяют решение или временную сложность [4].

Продолжительность решения часто выражается в единицах времени, но мА - ее голос через количество операций, количество операций не зависит от скорости конкретной машины.

Временная сложность алгоритма называется временной зависимостью разума, предназначенной для получения результатов от объема исходных данных.

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

"хорошо", если экспоненциально – "плохо".

Для сложных задач эта особенность имеет большое значение, так как их изменение оказывает гораздо большее влияние во время принятия решения, что изменение-на ПК. Например, функция F (n) = 2n увеличение u-

deli 10 раз увеличивает Размер задачи, которую он пытается в то же время только 15% [4].

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

Количество текста алгоритма (программы) определяет количество операторов-

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

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

Сложность структуры алгоритма определяет количество строк, по которым можно выполнить процесс расчета и сложность каждого маршрута.

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

2. Способы описания алгоритмов

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

Средство описания алгоритмов следующие основные методы представления: словесный, графический; псевдокод; программное обеспечение. На практике, есть также другие описания метода таблицы (таблицы коммутации (Таблица истинности); машины настольные; линии рабочего времени; решение бюро).

2.1 Словесный способ представления алгоритмов

Словесный способ записи алгоритмов является последователем описание основных этапов обработки данных и Задается в порядок ситуации на естественном языке.

В качестве примера рассмотрим написание алгоритма для нахождения нашего общего делителя двух натуральных чисел M и N). Алгоритм может быть написан в следующей форме:

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

- определите наибольшее из чисел;

- заменить наибольшее количество разности между основными и второстепенными номерами;

- повторить алгоритм сначала.

Метод основан на использовании общего средства общения между людьми и с точки зрения трудности письма не является. Такой СПО-записи удобно использовать на начальном этапе выполнения задачи. К недостаткам метода записи можно отнести следующее: 1) полное подробное словесное описание алгоритма очень трудно поддается управлению; 2) естественный язык допускает двусмысленность интерпретации некоторых; 3) при переходе к этапу программирования требуется дополнительная работа по формализации алгоритма, а также словесное описание, которое может быть понято человеком, но "непонятно" ПК. Поэтому вербальный способ написания алгоритмов не имеет широкого распространения.

Графический способ представления алгоритмов

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

Это графическое представление называется алгоритм или блок-схема. На схеме каждому типу действий (ввод исходных данных, вычисление значений выражений, проверка условий, управление повторением действий, окончание обработки и т. д.) соответствует геометрическая фигура представляет, как символ блокировки. Блок символы соединяются линиями переходов, определить последовательность действий. Для разработки этих планов, набор символов, определенной в ГОСТ 19.701–90 (ИСО 5807 – 85) [2] "Единая система документации программы" используется. В таблице. 1 приведены наиболее часто используемые символы.

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

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

"Решение" символ используется для обозначения условной управления переходы. Каждое решение блока было задавать вопрос, решение, условие или сравнение, которые он определяет.

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

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

Символ "процесса" используется для обозначения Рене для оказания помощи алгоритмам выбора автономно, в виде не - этого модуля; для случаев к подпрограммам; для обозначения части алгоритма, не зависящей от базовой схемы управления; для обозначения определенной части алгоритма, которая кодируется вместе с

на протяжении всего алгоритма, но в документации представлена Частная схема. Если эта часть алгоритма является итеративным процессом, вызовом блока, необходимо включить описание условий для завершения цикла. По мнению некоторых специалистов, использование более одной схемы для алгоритма затрудняет Ваше понимание. Однако практика показывает, что удобнее применять схему алгоритмов моделирования по уровням благодарности.

Персонаж документ предназначен для ввода / вывода данных, носителем которых является роль.

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

Символ "коннектор" используется, когда схема алгоритма разбита на автономные части, особенно если они не умещаются на одном листе, или когда необходимо избежать ненужных пересечений линий сканирования. Польза разъемов не должна помешать в структурах, когда изображение borrás.

Символ "старт - стоп" используется для обозначения начала, конца, прерывания процесса обработки данных или выполнения программы.

Символ "комментарий", который позволяет включить в схему алгоритмы лямки функциональных блоков. Частое использование комментариев нежелательно, так как это усложняет беспорядок, закономерность, тем менее заметна. Однако некоторые переменные, гипотезы или набор алгоритмов требуют пояснительной записки для записей.

    1. Программный способ представления алгоритмов

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

Однако, на практике, персональных компьютеров или других вычислительных устройств (single-chip micro Компьютеров, промышленных компьютеров, контроллеров процесса и т. д.) используются в качестве исполнителей алгоритмов. Поэтому, что-то-ритм, предназначенных для выполнения на компьютере, должны быть записаны на языке, понятном для него. И здесь выходит на первый план необходимость для правильного ввода команды, не оставляя места для произвольных толкований со стороны подрядчика.

Следовательно, язык для записи алгоритмов должны быть оформлены. Этот язык, который обычно называют языком программирования, а запись алгоритма на этом языке – программой для компьютера.

В алгоритмической языках, включая язык машины (система команд), языков программирования.

Математическое программное обеспечение – средства, которые могут быть предоставлены пользователям решить вашу проблему с ПК. Включает в себя алгоритмы вспомогательные алгоритмы и методы, решения проблем, модели, языковая поддержка – языки программирования, программирование систем автоматизации и информационной поддержке – структур данных и баз данных.

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

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

уровень языка.

Согласно этому критерию, следующие уровни языков программирования можно выделить: машина-ориентированного (Собрание языках); независимый от машины (языки высокого уровня).

Машины и машины, ориентированные языки-это языки низкого уровня, требующие мелкозернистой подробности обработки данных. Языки высокого уровня имитируют естественных языков, в использовании некоторых слов в разных языках и обычных математических символов. Эти языки являются более простой в использовании.

Языки высокого уровня делятся на:

- процедуры (алгоритмы) (Basic, Pascal, C и т. д.), которые предназначены только для описания алгоритмов; для решения проблемы, языки программирования процедуры требуют, так или иначе, писать явно процедура, для ее разрешения;

- логические (Prolog, Lisp и т. д.), которая будет направлена не на разработку алгоритма решения проблемы, но систематическое и оформлена с описанием проблемы, чтобы решение следующим образом из скомпилированного описание;

-объектно-ориентированные (Object Pascal, C++, Java и т. д.), которые опираются на понятие объекта, который объединяет данные и действия в моей. Программа на объектно-ориентированный язык, решение какой-либо проблемы, по сути, описывает часть мира, в связи с этой проблемой. Описание реальности в форме системы взаимодействия объектов является более естественным, чем в форме взаимодействующих процедур.

3. Описание языков программирования

3.1 Достоинства и недостатки машинных языков

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

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

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

Основные преимущества языков программирования перед автоматическими и ориентированными на мужчин языками: алфавит алгоритмического языка значительно шире родного алфавита языка, что значительно повышает видимость текста программы; набор операций, разрешенных к использованию, не зависит от набора инструкций по эксплуатации и выбирается по соображениям удобства формулировки алгоритмов решения задач определенного класса; Формат предложений достаточно гибок и прост в использовании, что позволяет с помощью предложение достаточно установить, что она содержит свет, чтобы этап обработки данных; требуемые операции, устанавливаются общепринятых математических обозначений; данным в алгоритмическом языках присваиваются индивидуальные имена, выбираемые разработчиком; в языке, Вы можете иметь гораздо более широкий набор типов данных по сравнению с набором кодов типов данных.

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

Компоненты алгоритмического языка

Алгоритмическое языке (как и в любом другом языке), состоит из трех составляющих: алфавита, синтаксиса и семантики.

Алфавит-это фиксированный набор символов для данного языка, т. е. "букв алфавита", который должен состоять любой текст на этом языке – никакие другие символы в тексте не допускаются.

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

Семантика определяет смысл предложения языка. Как система правил истолкования отдельных языковых конструкций, семантика определяет, что последовательность действий, которые описаны в

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

Понятия, используемые в алгоритмических языках

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

Основные понятия в языках, как правило, следующие:

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

- Операции бывают следующих типов:

- арифметические операторы +,–,·, / и другие;

- логические операции и, или, нет;

операции отношений < , > , <= , >= , = , <>;

- операция стыковки (иначе-присоединение, конкатенация) знаков ценностей между собой с образованием длинной цепочки; представлена знаком "+".

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

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

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

Один линейный список-это форма организации последователь-

один и тот же тип элементов, в которой каждый элемент, кроме первого, имеет предшественника (предыдущий элемент) и каждый элемент, кроме последнего, имеет правопреемника (следующий элемент). Каждый элемент списка можно получить, последовательно движется через список элемента. Другие типы списков, стеков, очередей, деревьев и лесов, они подробно обсуждены в [5, 17].

Выражения, используемые для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций (например, sin(x)), США по операции признаки. Выражения записываются в виде линейных последовательности символов (без подстрок и superstrings,

"multi-storey" дроби и т. д.), что позволяет ввести в компьютер, там нажать на клавиатуре. Есть арифметические, логические и строковые выражения.

Все арифметические выражения используются для определения одного числового значения. Например, (l + sin (x))/2. Значение этого выражения при х = 0 равен 0,5, а при х = π/2 – единица.

Логические выражения описывают некоторые условия, которые могут или не могут быть удовлетворены. Таким образом, Логическое выражение может принимать только два значения: истинно или ложно (Да или нет).

Значения строки (literal) выражения. Могут войти в строковые константы, строковые переменные и строковые функции времени, деленный знак операции соединения.

Операторы (команды). Оператор-это наиболее широкое понятие языка: каждый оператор представляет собой фразу языка и определяет некоторый, вполне законченный этап обработки данных. Операторов входят: ключевые слова, данные, выражения и т. д.Операторы подразделяются на исполняемые и неисполняемые. Неис- полняемые операторы предназначены для описания данных и структуры про- граммы, а исполняемые – для выполнения различных действий (например, оператор присваивания, операторы ввода и вывода, условный оператор, операторы цикла, оператор процедуры и др.).

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

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

Арифметические выражения записываются по следующим правилам: 1. нельзя опускать знак умножения между множителями и ставить рядом два знака операций; 2. индексы элементов массивов записываются в квадратных (C++, Pascal) или круглых (Basic) скобках; 3. для обозначения переменных используются буквы латинского алфавита; 4. операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, по- том умножение и деление и в последнюю очередь сложение и вычитание. Операции одного старшинства выполняются слева направо.

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

– и, или, не.

К основным принципам написания программ относятся: 1) соблюдение требований структурного программирования (модульность, наличие лишь одной точки входа и одной точки выхода в процедурах, максимально возможный отказ от оператора go to); 2) использование комментариев для описания названия и назначения программ и отдельных модулей, идентификаторов и т.д.; 3) ступенчатое расположение операторов программы, визуальное выделение отдельных процедур, функций, внутренних и внешних циклов и т.д.

4. Структуры алгоритмов

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

Структура алгоритма линейна, если она формируется последовательностью простых операторов (команд).

Ветвление алгоритма заключается в том, что алгоритм содержит в себе одно из условий, в результате проверки ПК приводит к одному из двух возможных шагов.

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

Для построения ветвящихся и петлевых структур алгоритма в языке алгоритмов используются операторы. Их " операторы ветвления и цикла рассылки.

Оператор вилами писано следующим образом: если условие то серия 1 иначе серия 2 Все. В зависимости от общего количества условий проверки выполняется только одна из двух серий, входящих в состав команды рассылки ветвления. Если условие выполнено, то оно должно выполнить ряд из 1, если не ряд 2. Оператор вилки и используется в сокращенном виде: если условием является ряд всех

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

Структура бифуркации существует в четырех основных вариантах [1] (см.

таблица. 3): Если – то; если – то – иначе; выбор; выбор другого режима.

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

Различия в реализации перехода к источнику онлайн, которые получены из свойств дивергенции.

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

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

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

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

Алгоритм, включающий итерационный цикл, называется рациональным алгоритмом. Итерационные алгоритмы используются при применении итерационных численных методов.

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

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

.

7. Технология решения задач с использованием компьютера

    1. Основные этапы решения задач с помощью компьютера

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

    1. Общая формулировка задачи.

Этот момент, несмотря на кажущуюся простоту, очень важен. Здесь следует сформулировать задачу содержательно с точки зрения определения того, что является "входными" данными задачи и что мы получим в результате решения. Не действует требование "найти что-то, не знаю что".

Математическая формулировка задачи.

Здесь необходимо определить, расчет сумм, опишите проблему, и получить математические связи между ними, то есть, сделать математическую модель. Этот шаг имеет решающее значение, так как, что плохо, модель отказывается от всех дополнительных усилий. В то же время, во многих случаях, этот этап, очевидно, если они не являются общепринятыми уравнений, которые описывают, какие проблемы в стадии рассмотрения.

7.4 Выбор математического метода решения.

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

Составление алгоритма решения.

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

  1. Составление и отладка программы.

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

инструменты, которые делают процесс поиска ошибок.

  1. Тестирование программы.

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

  1. Решение поставленной задачи и представление результатов.

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

При реализации конкретных задач некоторые из этих шагов могут быть промежуточными. Например, если вы хотите вычислить значение функции y = f(x), когда изменяется аргумент x, то формула конкретного признака является математикой для постановки задачи и определяет метод расчета.

Набор методов, направленных на создание ошибка - Бесплатная программа для допустимого времени, технология программирования. Они включают в себя методы разработки структуры программы, методы включить в программу дополнительные операторы, чтобы ускорить создание программы, и как можно скорее, обнаружения ошибок и методов, что дает возможность использовать программы, созданные для промышленного производства.

Для каждого из этапов создания и использования программы, есть определенные методы, чтобы обеспечить качество программного обеспечения.

Высокое качество программы, осуществляется главным образом потому, что изучение основного алгоритма, схемы. Это объясняется, главным образом, программ без ошибок, уверенность в том, что программист, который не содержит ошибок, и уверенность, что пользователь, который является правильным.

Хотя невозможно избежать ошибок при разработке программы рекомендуется придерживаться некоторых правил алгоритма:

  1. Это необходимо, чтобы найти более полное исследование проблемы, в формулировании проблемы, I. e. развитие математической модели. Что-то, - исследование позволяет получить четкое, обеспечивая много LOGI - ческих взаимодействий объектов программы. Достаточно глубокое исследование математической модели, что приводит к увеличению результатов решения проблемы.

2) Восхождение алгоритма для разрешения проблемы связано с более полным аккаунт, Общие характеристики процесса вычисления на ПК.

3) При разработке алгоритма необходимо стремиться к максимальной простоте и ясности. Это относится как к содержанию стороне и написания программы на языке программирования. Использование стандартных методов программирования структурные вмешательства делает алгоритм (программа) больше, конечно, в некоторых случаях более сложным и менее эффективным. Расписание мероприятий в структурных опирается на основные принципы системного подхода: (а) программа должна быть скомпилирована в более мелкие шаги; (b) размер шага было определение числа решений, используемых программистом в этом проекте.; C) сложный вопрос, необходимо разделить довольно просто, легк - к-установите компоненты (блоки), каждый из которых имеет только один вход и один выход; d) логика алгоритма (программы) должна опираться на минимальное число достаточно простых базовых управляющих структур.

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

7.6 Приемы алгоритмизации расчетных задач

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

7.7 Метод частных целей

Этот метод сводится к тому, что сложная задача сводится к последовательности более простых задач. С другой стороны, непростой задачей часто бывает очень сложно определить, каким образом осуществляется ее заказ на множество простых коттеджей. В этом случае большое значение имеет опыт и искусство программирования. Однако, несмотря на общность метода и недостаточную точность рецептуры, вашему приложению очень важно освоить этот метод, так как он лежит в основе многих задач и по своей сути является основой программирования

В этом случае, метод разработки алгоритма сводится к следующим операциям (действия):

1. рассмотрите возможность разделить проблему на последовательность упрощения проблем;

2. установить связь между генерирует последовательность простых задач с помощью переменных;

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

4. алгоритм Общего решения задачи производится.

Метод подъема

Этот мир относится к одному из общих методов проектирования алгоритмов. Алгоритм начинается с первоначального принятия гипотезы или генерации начального решения задачи. Затем начинается (по мере возможности) быстрое восходящее движение начального уровня в направлении наилучшего решения. Когда алгоритм достигает точки, из которой я больше не буду следовать "вверх", он останавливается.

Программирование с отходом назад

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

Метод программирования с удаления позволяет осуществить организованный исчерпывающий поиск решения проблемы. В то же время, часто можно, чтобы не идти через все возможные варианты.

Заключение

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

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

В связи с этим повышается объем информационных потоков, повышаются требования к алгоритмам обработки информации.

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

Библиографический список

  1. Шауцукова Л. З. Информатика: Учеб. пособие для 10 – 11 кл. общеобразоват. учреждений/ Л.З. Шауцукова. – М.: Просвещение, 2000.
  2. ГОСТ 19.701–90 (ИСО 5807 – 85) ″Единая система программной документа- ции″.
  3. Островейковский В. А. Информатика: Учебник для вузов. – М.: Высш. шк., 2000.
  4. Кушниренко А. Г. и др. Информатика.– М.: Дрофа, 1998.
  5. М.П. Белов учебное пособие «Основы алгоритмизации в информационных системах» 2003г.
  6. Кулаков А. Г., Ландо С. К., Семенов А. Л., Шень А. X. Алгоритмика, V–VII

классы. – М.: Дрофа, 1996.

  1. Кузнецов А. А. и др. Основы информатики. – М.: Дрофа, 1998.
  2. Гейн А. Г., Сенокосов А. И. Информатика. – М.: Дрофа, 1998.
  3. Борцовский Г. А. Информатика в понятиях и терминах, – М.: Просве- щение, 1991.
  4. Боглаев Ю. П. Вычислительная математика и программирование. – М.: Высшая школа, 1990.
  5. Зотов В. В. и др. Терминологический словарь по автоматике, информа- тике и вычислительной технике. – М.: Высшая школа, 1989.
  6. Сведения из интернета