Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
otvety.doc
Скачиваний:
1
Добавлен:
27.09.2019
Размер:
391.68 Кб
Скачать

Алгоритм и программа

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

Для описания алгоритмов существует множество способов. Основные способы описания следующие:

  • словесный;

  • алгоритмический язык;

  • язык блок-схем;

  • псевдокод и др.

Алгоритмический язык – формальный язык, который предназначен для записи алгоритмов

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

П рограмма – набор (или последовательность) указаний (команд) исполнителю, т.е. в нашем случае компьютеру. Машинный язык – набор команд, распознаваемых и выполняемых компьютером (в частности процессором). Язык программирования – набор команд (операторов), правил и соглашений, более понятных пользователю, чем машинный язык. Компиляция (трансляция) – дословно составлять (переводить) – процесс перевода завершенной программы на языке программирования в язык машинных кодов. Обратный перевод затруднителен, т.о. компиляция в некотором смысле необратимый процесс. Компилятор (транслятор) – программа, производящая компиляцию. Линкер – программа, производящая связывание компилируемой программы с библиотечными файлами. Его можно использовать для получения исполняемого файла, статической или динамической библиотеки. Библиотечный файл – программа, выполняющая некоторую (одну или более) законченную задачу (например, взятие синуса аргумента), при необходимости встраиваемая в скомпилированный (выполняемый) файл на этапе компиляции (статическая, .lib), на этапе выполнения (динамическая, .dll). Кроме того, динамическая библиотека одновременно может использоваться несколькими программами и при ее не использовании выгружается из ОЗУ. Объектный код – запись программы в форме, которая может быть обработана аппаратными средствами. Имеет расширение .obj. Исполняемый файл – программа (.exe), готовая к исполнению.

По способу получения машинных кодов языки программирования делятся на 3 типа:

  1. Компилируемые. Например, Fortran, Pascal, Си. Этапы компиляции изображены на схеме.

  2. Интерпретируемые. Например, Basic. Интерпретатор (программа) читает строку исходной программы, формирует машинные коды и сразу их исполняет.

  3. Интерпретируемые с элементами компиляции. Например, Форт.

28. Этапы разработки программы. Блок-схема

1. Формулирование задачи.

2.Физический и математический анализ.

3. Численный анализ.

4. Решение контрольного примера.

5. Построение принципиальной схемы алгоритма и структуры данных.

6. Детализация алгоритма и построение блок-схем.

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

8. Отладка программы.

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

10. Разработка документации на ПО.

Принятые обозначения алгоритмических элементов:

Название блока

Вид блока

Описание блока

1.

Пуск, останов (знак завершения)

Начало, конец, останов, вход и выход в подпрограммах.

2.

Процесс

Вычислительное действие или их последовательность.

3.

Решение

Проверка условий.

4.

Модификация

Начало цикла вычислений.

5.

Предопределенный процесс

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

6.

Данные

Ввод-вывод данных.

7.

Соединитель

Разрыв линий схемы (связывающей блоки) алгоритма.

8.

Ссылка на другую страницу

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

9.

Комментарий

Пояснения к схеме алгоритма, формулы.

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

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

1

[2]

. Следование. Структура представляет собой последовательность блоков S1, S2, ..., Sn, которые выполняются друг за другом в порядке их следования в тексте программы.

[1]

2. Разветвление. Это управляющая структура, которая в зависимости от выполнения заданного условия (значения истинности логического выражения В) определяет выбор для выполнения одного из двух заданных в этой структуре блоков S1 и S2.

3. Повторение типа «делать, пока» (цикл «пока»).

4. Повторение типа «делать до» (цикл «до»). 5. Обход. Частный случай ветвления, когда одна из ветвей не содержит никаких действий.

6. Множественный выбор. Структура является обобщением ветвления, когда в зависимости от значения переменной i выполняется одно из действий. При i=i1 выполняется блок S1, i=i2 – блок S2 и т.д.

29.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]