Upload
rudolf
View
81
Download
0
Embed Size (px)
DESCRIPTION
Информатика, модуль 2 Направления подготовки: Государственное и муниципальное управление, Социально-культурный сервис Институт ИИБС, кафедра ИСПИ, ауд.1448 Винтонива Наталья Ивановна. Тема 1 5. Этапы подготовки и решения задач на ЭВМ. Содержание. Этапы подготовки и решения задач на ЭВМ - PowerPoint PPT Presentation
Citation preview
Тема 15. Этапы подготовки и решения задач на ЭВМ
Информатика, модуль 2Направления подготовки: Государственное и муниципальное управление, Социально-культурный сервис
Институт ИИБС, кафедра ИСПИ, ауд.1448
Винтонива Наталья Ивановна
Содержание
1. Этапы подготовки и решения задач на ЭВМ
2. Стили программирования
3. Логическое программирование
4. Примеры языков программирования
В процессе подготовки и решения на ЭВМ задач можно выделить следующие этапы:
• постановка задачи; • математическое описание задачи; • выбор и обоснование метода решения; • алгоритмизация вычислительного
процесса; • составление программы; • отладка программы; • решение задачи на ЭВМ и анализ
результатов.
1. Постановка задачи:
• сбор информации о задаче;
• формулировка условия задачи;
• определение конечных целей решения задачи;
• определение формы выдачи результатов;
• описание данных (их типов, диапазонов величин, структуры и т. п.).
Постановка задачи
• На данном этапе формулируется цель решения задачи и подробно описывается ее содержание.
• Анализируются характер и сущность всех величин, используемых в задаче, и определяются условия, при которых она решается.
• Корректность постановки задачи является важным моментом, так как от нее в значительной степени зависят другие этапы.
2. Анализ и исследование задачи, модели:
• анализ существующих аналогов;
• анализ технических и программных средств;
• разработка математической модели;
• разработка структур данных.
Математическое описание задачи
• Настоящий этап характеризуется математической формализацией задачи, при которой существующие соотношения между величинами, определяющими результат, выражаются посредством математических формул.
• Так формируется математическая модель явления с определенной точностью, допущениями и ограничениями.
Математическая модель должна удовлетворять по двум требованиям:
• реалистичности
• реализуемости.
Реалистичность
• Под реалистичностью понимается правильное отражение моделью наиболее существенных черт исследуемого явления.
Реализуемость
• достигается разумной абстракцией, отвлечением от второстепенных деталей, чтобы свести задачу к проблеме с известным решением.
3. Разработка алгоритма:
• выбор метода проектирования алгоритма;
• выбор формы записи алгоритма (блок-схемы, псевдокод и др.);
• выбор тестов и метода тестирования;
• проектирование алгоритма.
• На данном этапе составляется алгоритм решения задачи согласно действиям, задаваемым выбранным методом решения.
• Процесс обработки данных разбивается на отдельные относительно самостоятельные блоки, и устанавливается последовательность выполнения блоков. Разрабатывается блок-схема алгоритма.
Алгоритмизация вычислительного процесса
4. Программирование:
• выбор языка программирования;
• уточнение способов организации данных;
• запись алгоритма на выбранном языке программирования.
Составление программы
• При составлении программы алгоритм решения задачи переводится на конкретный язык программирования.
• Для программирования обычно используются языки высокого уровня, поэтому составленная программа требует перевода ее на машинный язык ЭВМ.
• После такого перевода выполняется уже соответствующая машинная программа.
Программа
• представляет собой совокупность описаний функций и выражения, которые необходимо вычислить.
• ЭВМ непосредственно выполняет программы на машинном языке программирования данной ЭВМ.
Машинные языки
• были первыми языками программирования. Программирование на них затруднительно ввиду того, что, во-первых, эти языки различны для каждого типа ЭВМ, во-вторых, являются трудоемкими для большинства пользователей по причине необходимости знания особенностей конкретной ЭВМ и большого количества реализуемых ею операций (команд).
Язык Ассемблера
• — это язык, предназначенный для представления в удобочитаемой символической форме программ, записанных на машинном языке.
Язык Макроассемблера
• является расширением языка Ассемблера путем включения в него макросредств.
Языковые процессоры
• Для перевода программы, написанной на языке высокого уровня, в соответствующую машинную программу используются языковые процессоры.
Различают два вида языковых процессоров:
• интерпретаторы и
• трансляторы.
Транслятор
• — это программа, которая принимает исходную программу и порождает на своем выходе программу, записываемую на объектном языке программирования (объектную программу).
Интерпретатор
• — это программа, которая получает исходную программу и по мере распознавания конструкций входного языка реализует действия, описываемые этими конструкциями.
Стили программирования
• Процедурное программирование
• Функциональное программирование
• Объектно-ориентированное программирование
• Логическое программирование
Процедурное (императивное) программирование
• является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 40-х годах. Теоретической моделью процедурного программирования служит алгоритмическая система под названием «машина Тьюринга».
Процедурное (императивное) программирование
• Программа на процедурном языке программирования состоит из последовательности операторов (инструкций), задающих процедуру решения задачи.
Сущность функционального (аппликативного) программирования
определена А. П. Ершовым как• «... способ составления программ, в которых
единственным действием является вызов функции, единственным способом расчленения программы на части является введение имени для функции, а единственным правилом композиции — оператор суперпозиции функции. Никаких ячеек памяти, ни операторов присваивания, ни циклов, ни, тем более, блок-схем, ни передачи управления».
Объектно-ориентированное программирование
• представляет собой метод программирования, который весьма близко напоминает наше поведение. Оно является естественной эволюцией более ранних нововведений в разработке языков программирования.
Объектно-ориентированное программирование
• В основе объектно-ориентированного стиля программирования лежит понятие объекта,
• а суть его выражается формулой: «объект - данные + процедуры».
Объектно-ориентированное программирование
• Для описания объектов служат классы. Класс определяет свойства и методы объекта, принадлежащего этому классу.
• Соответственно, любой объект можно определить как экземпляр класса.
Объектно-ориентированный язык программирования характеризуется
тремя основными свойствами: • Инкапсуляция. Комбинирование
записей с процедурами и функциями, манипулирующими полями этих записей, формирует новый тип данных - объект.
Наследование
• Определение объекта и его дальнейшее использование для построения иерархии порожденных объектов с возможностью для каждого порожденного объекта, относящегося к иерархии, доступа к коду и данным всех порождающих объектов.
Полиморфизм
• Присваивание действию одного имени, которое затем совместно используется вниз и вверх по иерархии объектов, причем каждый объект иерархии выполняет это действие способом, именно ему подходящим.
К наиболее современным объектно-ориентированным языкам программирования
• относятся C++
• и Java.
Язык программирования С (Си) первоначально был разработан для реализации операционной системы UNIX в начале 70-х годов.
Ваsic(Бэйсик) (Beginners All-purpose Symbolic Instruction Code)
• — многоцелевой язык символических инструкций для начинающих) представляет собой простой язык программирования, разработанный в 1964 году для использования новичками.
Pascal (Паскаль)
• является одним из наиболее популярных среди прикладных программистов процедурным языком программирования, особенно для ПЭВМ. Разработанный в 1970 году швейцарским специалистом в области вычислительной техники профессором Н. Виртом.
Pascal характеризуется:
• высоким уровнем;
• широкими возможностями;
• стройностью, простотой и краткостью;
• строгостью, способствующей написанию эффективных и надежных программ;
• высокой эффективностью реализации на ЭВМ.
Логическое, или реляционное программирование
• появление языка PROLOG (Пролог) (PROgramming in LOGic — программирование в терминах логики). Этот язык был создан французским ученым А. Кольмероэ в 1973 году. В настоящее время известны и другие языки, однако наиболее развитым и распространенным языком логического программирования является именно Пролог.
Отношение
• Центральным понятием в логическом программировании является отношение.
• Программа представляет собой совокупность определений отношений между объектами (в терминах условий или ограничений) и цели (запроса).
Языки логического программирования характеризуются:
• высоким уровнем;
• строгой ориентацией на символьные вычисления;
• возможностью инверсных вычислений, то есть переменные в процедурах не делятся на входные и выходные;
Языки логического программирования характеризуются:
• возможной логической неполнотой, поскольку зачастую невозможно выразить в программе определенные логические соотношения, а также невозможно получить из программы все выводы правильные.
5. Тестирование и отладка:
• синтаксическая отладка;
• отладка семантики и логической структуры;
• тестовые расчеты и анализ результатов тестирования;
• совершенствование программы.
6. Анализ результатов решения задачи
• 6. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2-5.
7. Сопровождение программы
• доработка программы для решения конкретных задач;
• составление документации к решенной задаче, к математической модели, к алгоритму, к программе, к набору тестов, к использованию.
Решение задачи на ЭВМ и анализ результатов
• После отладки программы ее можно использовать для решения прикладной задачи.
• При этом обычно выполняется многократное решение задачи на ЭВМ для различных наборов исходных данных.
• Получаемые результаты интерпретируются и анализируются специалистом или пользователем, поставившим задачу.
Самостоятельная работа № 7
1. Перечислите этапы решения задач на ЭВМ
2. Какие виды моделей вы знаете, приведите примеры информационных моделей.
3. Что понимают под информацией в теории информации по концепции К. Шеннона.
46
Использование материалов презентации
Использование данной презентации, может осуществляться только при условии соблюдения требований законов РФ об авторском праве и интеллектуальной собственности, а также с учетом требований настоящего Заявления.
Презентация является собственностью авторов. Разрешается распечатывать копию любой части презентации для личного некоммерческого использования, однако не допускается распечатывать какую-либо часть презентации с любой иной целью или по каким-либо причинам вносить изменения в любую часть презентации. Использование любой части презентации в другом произведении, как в печатной, электронной, так и иной форме, а также использование любой части презентации в другой презентации посредством ссылки или иным образом допускается только после получения письменного согласия авторов.