Моделирование алгоритмизация программирование
§1. Моделирование
Чтобы компьютер приступил к каким-либо исследованиям или к рутинной обработке информации, необходимо чётко поставить задачу (разработать модель), определить исходные данные, форму представления результатов. Далее надо создать алгоритм решения задачи и программу, которая будет понята компьютером. Возникает классическая для информатики триада:
модель ® алгоритм ® программа
Исследование каких-либо явлений, процессов, объектов путем построения и изучения их моделей называется моделированием.
Модель – это формализованное описание объекта, процесса или явления, выраженное математическими соотношениями, набором чисел и текстов, графиками, таблицами, словесными формулами и т. п.
Один и тот же объект может иметь множество моделей, а разные объекты могут описываться одной моделью.
1.1 Виды моделей
Все модели можно разбить на 2 класса:
– Предметные (материальные)
– Информационные
Глобус, макет здания, модели кристаллических решеток и др. - являются материальными моделями.
Информационная модель – это совокупность знаковой информации, характеризующая свойства и состояние объекта, процесса или явления.
К информационным моделям можно отнести чертежи, схемы, графики, алгоритмы, математические соотношения (формулы, системы уравнений и т.п.)
1.2 Типы информационных моделей
По отражению систем объектов с различными структурами, информационные модели делятся на 3 типа:
- Табличные информационные модели содержат перечень однотипных объектов.
- Иерархические информационные модели содержат объекты, распределенные по уровням.
- Сетевые информационные модели применяются для систем со сложной структурой.
§2. Алгоритмизация
Далее разработанная модель исследуемого процесса или явления должна превратиться в алгоритм.
Алгоритм – это строгая последовательность четких действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд.
2.1 Свойства алгоритма
1. Дискретность - процесс решения задачи по алгоритму разбит на отдельные элементарные операции.
2. Однозначность - правила и порядок выполнения действий алгоритма имеют единственное толкование и исключают произвольность исполнения.
3. Результативность- при выполнении алгоритма за конечное число шагов обязательно получается конечный результат.
4. Универсальность (массовость) - применимость алгоритма к различным наборам исходных данных.
5. Понятность – алгоритм должен содержать только те команды, которые понятны исполнителю.
Общепринятыми способами записи являются графическая запись с помощью блок-схем и символьная запись с помощью какого-либо алгоритмического языка.
2.2 Основные типы алгоритмических структур
ü Линейная структура - действия выполняются последовательно одно за другим.
ü Разветвленная структура-действия выполняются в зависимости от истинности условия.
ü Циклическая структура – серия команд (действий), называющаяся телом цикла выполняется многократно.
Различают циклы с предусловием и постусловием:
§3. Программирование
Следующим шагом после создания алгоритма является написание программы, которая реализует данный алгоритм на ЭВМ (компьютере).
Программа - это последовательность инструкций, предназначенных для выполнения компьютером. В настоящее время программы оформляются в виде текста, который записывается в файлы.
Программирование – это теоретическая и практическая деятельность решения задачи средствами конкретного языка программирования и оформления полученных результатов в виде программы.
Язык программирования – специально разработанный искусственный язык, предназначенный исключительно для записи алгоритмов, исполнение которых поручается ЭВМ.
Трансляция – перевод текста программы в машинные двоичные коды.
Программы трансляторы бывают двух типов:
1. Интерпретаторы транслируют текст программы по шагам и сразу же выполняют эти шаги, не создавая .exe-файла.
2. Компиляторы транслируют весь текст программы и создают отдельный, готовый к исполнению .exe-файл.
3.1 Уровни языков программирования
Языки программирования бывают высокого и низкого уровней.
Языки программирования низкого уровня – это машинно-ориентированные языки, т.к. команды языка близки к машинному коду и ориентированы на структуру процессора.
К языкам низкого уровня относятся: АвтокодиАссемблер.
Языки программирования высокого уровня – это машинно-независимыеязыки, т.к. команды языка близки к естественным языкам и не учитывают особенности конкретной структуры процессора.
К языкам высокого уровня относятся: Фортран, Бейсик, Ада, С++, Delphi, Паскаль и сотни других.
§4. Системы программирования
Системы программирования – это комплекс инструментальных программных средств, предназначенный для разработки, отладки и внедрения новых программных продуктов.
Системы программирования, прежде всего, различаются по тому, какой язык программирования они реализуют.
Системы программирования обычно содержат:
• Текстовый редактор - запись и редактирование исходного текста программы;
• Транслятор - компиляция или интерпретация исходного текста программы в машинный код с диагностикой ошибок;
• Редактор связейибиблиотеки подпрограмм (функций, процедур) - связывание необходимых подпрограмм и формирование работоспособного приложения;
• Отладчик - исправление в программе ошибок и тщательное её тестирование.
ЛЕКЦИЯ 4
КОМПЬЮТЕРНЫЕ СЕТИ