Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен по информатике.docx
Скачиваний:
26
Добавлен:
22.09.2019
Размер:
1.18 Mб
Скачать
  1. Методы реализации программ. Интерпретация (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).

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

Для того чтобы более ясно представить различие между компиляцией и интерпретацией рассмотрим следующий пример. Допустим Васе нужно сварить пельмени. Вариант 1. Вася знает, как варить пельмени. Поэтому он берёт кастрюлю, наливает воду, ставить на огонь и т.д. Это компиляция – непосредственное выполнение программы. Вариант 2. Вася не знает, как варить пельмени. Вася звонит Тане и просит помочь ему. Таня говорит, что Вася должен взять кастрюлю (что Вася и делает), налить воду (Вася снова делает), поставить на огонь (Вася опять же выполняет) и т.д. В этом случае Таня выступает в роли программы, а Вася в роли интерпретатора.

Очень часто с помощью интерпретации одни программы выполняют другие, которые расширяют их возможности. Хорошим примером может служить программа Microsoft Excel с языком программирования Visual Basic. Если программист напишет функцию на этом языке, то при обработке данных можно на неё сослаться и выполнить. В этом случае Microsoft Excel выступит в роли интерпретатора программы.

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

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

В качестве примера языков можно привести Java, C#.

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

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

  1. Методы реализации программ. Трансляция (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).

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

  1. Жизненный цикл программного продукта.

  2. Этапы решения задач на эвм.

  1. Постановка задачи:

  • сбор информации о задаче;

  • формулировка условия задачи;

  • определение конечных целей решения задачи;

  • определение формы выдачи результатов;

  • описание данных (их типов, диапазонов величин, структуры и т. п.).

  1. Анализ и исследование задачи, модели:

  • анализ существующих аналогов;

  • анализ технических и программных средств;

  • разработка математической модели;

  • разработка структур данных.

  1. Разработка алгоритма:

  • выбор метода проектирования алгоритма;

  • выбор формы записи алгоритма (блок-схемы, псевдокод и др.);

  • выбор тестов и метода тестирования;

  • проектирование алгоритма.

  1. Программирование:

  • выбор языка программирования;

  • уточнение способов организации данных;

  • запись алгоритма на выбранном языке программирования.

  1. Тестирование и отладка:

  • синтаксическая отладка;

  • отладка семантики и логической структуры;

  • тестовые расчеты и анализ результатов тестирования;

  • совершенствование программы.

  1. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2-5.

  2. Сопровождение программы:

  • доработка программы для решения конкретных задач;

  • составление документации к решенной задаче, к математической модели, к алгоритму, к программе, к набору тестов, к использованию.

  1. Критерии качества программ.

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

  3. Алгоритм.

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

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

Правила выполнения схем определяются: ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения».

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

Начало и завершение программы

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

Блок вычислений или операция

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

Для более короткой записи без потери смысла можно объединять несколько подряд идущих блоков вычислений в один. Представления слева и справа обозначают одно и тоже.

Ветвление

Ромбом обозначается оператор ветвления. Внутри ромба пишутся проверяемые условия. Например, «a > 10». С помощью ветвлений реализуются условные операторы и циклы.

Вызов подпрограммы

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

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

Ввод-вывод

Параллелограмм обозначает операции ввода-вывода данных.

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

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

  1. Если блок ввода-вывода находится около начала программы, то это ввод.

  2. Если ближе к концу то это вывод.

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