Билет №12. Модели объектов и процессов (графические, вербальные, табличные, математические и др.).
Все модели можно разбить на два больших класса: модели предметные (материальные) и модели информационные. Предметные модели воспроизводят геометрические, физические и другие свойства объектов в материальной форме (глобус, анатомические муляжи, модели кристаллических решеток, макеты зданий и сооружений и др.).
Типы информационных моделей.Информационные модели представляют объекты и процессы в образной или знаковой форме. Образные модели (рисунки, фотографии и др.) представляют собой зрительные образы объектов, зафиксированные на каком-либо носителе информации (бумаге, фото- и кинопленке и др.).
Знаковые модели строятся с использованием различных языков (знаковых систем). Знаковая информационная модель может быть представлена в форме текста (программы на языке программирования), формулы (F=ma), таблицы (периодической таблицы элементов Д. И. Менделеева) и так далее.
Иногда при построении знаковых информационных моделей используются одновременно несколько различных языков. Примерами таких моделей могут служить географические карты, графики, диаграммы и пр. Во всех этих моделях используются одновременно как язык графических элементов, так и символьный язык.
Табличные информационные модели.Одним из наиболее часто используемых типов информационных моделей является прямоугольная таблица, которая состоит из столбцов и строк. Такой тип моделей применяется для описания ряда объектов, обладающих одинаковыми наборами свойств. С помощью таблиц могут быть построены как статические, так и динамические информационные модели в различных предметных областях.
Табличные информационные модели проще всего строить и исследовать на компьютере с помощью электронных таблиц и систем управления базами данных. Визуализируем полученную табличную модель путем построения диаграммы в электронных таблицах.
Иерархические и сетевые модели.Множество окружающих нас объектов обладает одинаковыми свойствами, которые отличают их от других групп объектов. Группа объектов, обладающих одинаковыми общими свойствами, называется классом объектов. Внутри класса объектов могут быть выделены подклассы, объекты которых обладают какими-то особыми свойствами. В свою очередь подклассы могут делится на более мелкие группы и т.д. В процессе классификации объектов часто строят информационные модели, которые имеют иерархическую структуру.
В иерархической информационной модели объекты распределены по уровням. Каждый элемент более высокого уровня может состоять из элементов нижнего уровня, а элемент нижнего уровня может входить в состав только одного элемента более высокого уровня.
Иерархические информационные модели для наглядного представления удобно изображать в форме графа.
Сетевые информационные модели применяются для отражения систем со сложной структурой, в которых связи между элементами имеют произвольный характер. Пример, структура глобальной сети Интернет, в которой различные региональные части связаны между собой высокоскоростными линиями связи. Причем, одни части имеют прямые связи со всеми региональными частями Интернета, а другие могут обмениваться информацией между собой только через американскую часть.
Билет №13. Понятие алгоритма. Свойства алгоритма. Исполнители алгоритмов (назначение, среда, режим работы, система команд). Компьютер как формальный исполнитель алгоритмов (программ).
Появление алгоритмов связывают с зарождением математики. Более 1000 лет назад (в 825 году) ученый из города Хорезма Абдулла (или Абу Джафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которой описал способы выполнения арифметических действий над многозначными числами. Само слово алгоритм возникло в Европе после перевода на латынь книги этого математика.
Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Для разработки алгоритма необходимо иметь исходную информацию (данные) и представлять конечный результат (цель).
Свойства алгоритмов:
1. Дискретность (алгоритм должен состоять из конкретных действий, следующих в определенном порядке. Если изменить порядок выполнения команд, то алгоритм становится невыполнимым);
2. Однозначность (любое действие алгоритма должно быть четким и не подразумевать вариантов);
3. Конечность (каждое отдельное действие, как и весь алгоритм должно иметь возможность реального исполнения. Поэтому алгоритм имеет предел, т.е. конечен);
4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);
5. Результативность (отсутствие ошибок).
Виды алгоритмов:
1. Линейный алгоритм;
2. Циклический алгоритм;
3. Разветвляющийся алгоритм;
4. Вспомогательный алгоритм.
Для более наглядного представления алгоритма широко используется графическая форма - блок-схема, которая составляется из стандартных графических объектов.
Вид стандартного графического объекта | Назначение | ||
Начало алгоритма | |||
Конец алгоритма | |||
| Выполняемое действие записывается внутри прямоугольника | ||
Условие выполнения действий записывается внутри ромба | |||
Счетчик кол-во повторов | |||
Последовательность выполнения действий. | |||
Ввод / вывод данных |
Стадии создания алгоритма:
1. Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает.
2. Алгоритм должен быть представлен в форме, понятной тому объекту, который будет выполнять описанные в алгоритме действия.
Объект, который будет выполнять алгоритм, называют исполнителем (машины, роботы, компьютеры...).
Исполнитель способен выполнить только ограниченное количество команд. Поэтому алгоритм разрабатывается так, чтобы в нем присутствовали только те команды и конструкции, которые может выполнить исполнитель.
Компьютер – автоматический исполнитель алгоритмов.
Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой.
Билет № 14. Линейная алгоритмическая конструкция. Команда присваивания. Примеры.
Линейный алгоритм – это последовательность действий, выполняемых однократно в заданном порядке.
Для примера составим алгоритм вычисления следующего выражения:
(75 – 40) – (22 +10)
1. Вычислить разность 75 и 40;
2. Сложить числа 22 и 10.
3. Вычислить разность результатов 1-го и 2-го действий.
Из записи алгоритма видно, что при его исполнении получаются два промежуточных результата – в 1-м и 2-м действии. Для того, чтобы их зафиксировать, выделяется специальная область памяти, которую называют переменная. В отличие от математики, в программировании значения переменных могут многократно изменяться по ходу вычислений.
Для записи в память значения переменной используется команда присваивание (:=).
На языке программирования наш алгоритм можно записать так:
1. А:=75-40 (Переменной А присвоить значение 75 – 40);
2. В:=22+10 (Переменной В присвоить 22 + 10);
3. С:=А – В (переменной С присвоить значение А – В)
Пример: Записать алгоритм и блок-схему для вычисления выражения А = (В+5)*С.
1. Ввод В и С;
2. Вычислить К:=В+5;
3. Вычислить А:=К*С;
4. Вывод А.
Проверим как работает данный алгоритм при В=2 и С+5
Действие | А | В | С | К |
1. Ввод В и С | ||||
2. Вычислить К:=В+5 | ||||
3. Вычислить А:=К*С | ||||
4. Вывод А |
Билет № 15. Алгоритмическая структура «ветвление». Команда ветвления. Примеры полного и неполного ветвления.
Разветвляющий алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Здесь важно правильно сформулировать условие. В программировании под условием понимается предположение, начинающееся словом «ЕСЛИ» и заканчивающееся словом «ТО». От выполнения этого условия зависит дальнейший порядок действий.
Блок схема конструкции «Ветвление»
|
|
В условиях используются операторы сравнения: = (равно), <> (не равно), > (больше), < (меньше), >= (больше или равно), <= (меньше или равно).
В результате сравнения получается логическая величина, имеющее значение ИСТИНА или ЛОЖЬ.
Пример:
5<7 - ИСТИНА;
8=12 -ЛОЖЬ (проверяем, равно ли 8 12, именно проверяем, а не утверждаем, что 8=12);
Пример: Записать алгоритм и блок-схему для вычисления выражения А=(В+10)/С.
1. Начало
2. Ввод В и С;
3. Если С =0 То [вывод «Нет решения»]: Конец
4. Вычислить А:= (В+10)/С;
5. Вывод А.
6. Конец.
Действие | А | В | С | С=0 |
Начало | ||||
Ввод В и С; | ||||
Если С =0 То [вывод «Нет решения»]: Конец | + | |||
Вычислить А:= (В+10)/С; | ||||
Вывод А. | ||||
Конец. |
Действие | А | В | С | С=0 |
Начало | ||||
Ввод В и С; | ||||
Если С =0 То [вывод «Нет решения»]: Конец | - | |||
Вычислить А:= (В+10)/С; | ||||
Вывод А. | ||||
Конец. |