Практическое занятие № 4



Тема: Моделирование. Алгоритмизация. Программирование.

План:

1. Моделирование.

2. Алгоритмизация.

3. Программирование.

4. Классификация языков программирования.

5. Образец работы в программе Free Pascal.

1. Моделирование.

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

Виды моделей

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

- по временному фактору – статические и динамические модели;

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

- по способу представления модели делят на:

û информационные – совокупность знаковой информации, характеризующая свойства и состояние объекта, процесса или явления, делят на знаковые и вербальные;

û предметные (материальные) – глобус, макет здания, модели кристаллических решеток и т.д.

Типы информационных моделей

По отражению систем объектов с различными структурами, делятся на 3 типа:

- табличные (реляционные) – содержат перечень однотипных объектов;

- иерархические (древовидные) – содержат объекты, распределенные по уровням;

 

- сетевые – применяются для систем со сложной структурой.

 

 

2. Алгоритмизация.

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

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

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

1. определенность (детерминированность) – каждая команда алгоритма должна определять однозначное действие исполнителя (т.е. четкое исполнение команд приводит к одному и тому же, заранее определенному результату);

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

3. результативность (конечность) – исполнение алгоритма должно завершиться за конечное число шагов;

4. возможность исполнения – в тех или иных конкретных условиях;

5. дискретность – разделение выполнения решения задачи на отдельные операции, выполняемые исполнителем по определенным командам;

6. массовость (универсальность) – обеспечивающие решения всего класса задач данного типа (не является обязательным).

Процесс разработки алгоритма называется алгоритмизацией.

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

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

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

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

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

5. графический – на языке блок-схемы;

блок-схема – графическая интерпретация алгоритма, представляющая набор геометрических фигур, каждая из которых изображает какую-либо операцию или действие. Форма символов и правила составления схем алгоритмов установлены государственными стандартами: ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем».

Основные элементы для построения блок-схем:

Наименование блока Графическое представление блока Функция блока
процесс формирование новых значений, выполнение арифметических или логических операций или действий, результаты которых запоминаются в оперативной памяти ЭВМ
решение – проверка условий а) выбор одного из двухнаправлений выполнения алгоритма в зависимости от некоторого условия; б) выбор одного из «n» направлений выполнения алгоритма в зависимости от некоторых условий при n>2;
модификация организация циклических конструкций;
предопределенный процесс вычисление по подпрограмме, использование ранее созданных и отдельно описанных алгоритмов;
начало-конец программы вход и выход в подпрограммах;
ввод-вывод данных связь алгоритма с внешним миром; вывод может осуществляться на бумагу, на экран монитора, на магнитный диск или ленту;
направление линий потока стрелки в любом направлении.

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

(a) Линейный алгоритм (следование) – последовательность блоков, каждый из которых имеет по одному входу и по одному выходу, и выполняется в программе один раз;

(b) Разветвляющийся алгоритм (развилка) – алгоритм, в котором в зависимости от значений некоторого признака производится выбор одного из нескольких направлений, называемых ветвями. В основе организации разветвления лежит проверка логического условия, которое может быть истинно или ложно. Частный вид логического условия – это операции типа =, ≠, ≤, ≥, >, <.

да нет

 

 

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

Цикл с предусловием Цикл с постусловием

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

1. арифметические – количество повторений заранее известно или может быть легко вычислено;

2. итерационные – количество повторений заранее не известно.

3. Программирование.

Основные понятия

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

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

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

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

Семантика – система правил толкования конструкций языка.

Таким образом, программа составляется с помощью соединения символов алфавита в соответствии с синтаксическими правилами и с учетом правил.

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

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

Технологический процесс разработки программы на некотором языке программирования включается:

редактирование – написание и исправление исходного текста программы (или ее части в виде текстового файла);

компиляция – перевод исходного текста программы в машинные коды;

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

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

4. Классификация языков программирования.

Существуют различные классификации языков программирования.

а) в наиболее распространенной они делятся на языки:

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

- высокого уровня – Фортран, Алгол, Кобол, Паскаль, Бейсик, Си, Пролог и т.д., они машинно-независимы, т.к. они ориентированы не на систему команд той или иной ЭВМ, а на систему операндов, характерных для записи определенного класса алгоритмов, но занимают больше памяти и медленнее выполняются, чем программы на машинных языках;

- сверхвысокого уровня – Pythlon, Lua, Ruby.

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

- интерпретаторы, которые сканируют и проверяют исходный код в один шаг, и сразу же их выполняют;

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

б) другая классификация:

- вычислительные (Фортран, Паскаль, Алгол, Бейсик, Си и др.);

- языки символьной обработки (Лисп, Пролог, Снобол и др.)

5. Образец работы в программе Free Pascal.

1. Запустить программу Free Pascal.

2. Создать новый файл – в горизонтальном меню выбрать пункт File → команду New from template

3. Выбрать из доступных шаблонов – ProgramOk.

4. В появившемся окне ввести название программы – primer_1Ok.

  1. В появившемся окне ввести список, подключаемых модулей – Ctr, GraphOk.

6. В появившемся окне набрать всю программу строго по образцу

Program primer_1;

Uses Ctr, Graph;

Var

D,r,e,x,y: Integer;

Begin

d:=Detect;

InitGraph(d,r,’’);

x:=GetmaxX Div 7;

y:=GetmaxY Div 7;

Rectangle(x,y,6*x,6*y);

SetViewPort(x+1,y+1,6*x-1,6*y-1,ClipOn);

Repeat

SetColor(succ(Random(White)));

SetLineStyle(0,0,2*Random(2)+1);

x:=Random(GetMaxX);

y:=Random(GetMaxY);

Circle(x,y,Random(GetMaxY Div 4));

Delay(50);

Until KeyPressed;

CloseGraph;

End.

7. Сохранить файл с таким же именем, как программа – primer_1.

8. Далее программу необходимо скомпилировать – выбрать в горизонтальном меню пунк Compile → команду Compile.

9. Если в программе нет ошибок, то появится надпись – Press any key и тогда можно нажать любую клавишу.

10. Чтобы запустить программу – выбрать в горизонтальном меню пункт Run – команду Run.

11. В результате выполнения данной команды получится следующая картинка.


Дата добавления: 2015-12-20; просмотров: 14; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!