460 likes | 705 Views
Информатика, модуль 2 ÐÐ°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ð³Ð¾Ñ‚Ð¾Ð²ÐºÐ¸: ГоÑударÑтвенное и муниципальное управление, Социально-культурный ÑÐµÑ€Ð²Ð¸Ñ Ð˜Ð½Ñтитут ИИБС, кафедра ИСПИ, ауд.1448 Винтонива ÐÐ°Ñ‚Ð°Ð»ÑŒÑ Ð˜Ð²Ð°Ð½Ð¾Ð²Ð½Ð°. Тема 1 5. Ðтапы подготовки и Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ‡ на ÐÐ’Ðœ. Содержание. Ðтапы подготовки и Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ‡ на ÐÐ’Ðœ
E N D
Информатика, модуль 2 Направления подготовки: Государственное и муниципальное управление, Социально-культурный сервис Институт ИИБС, кафедра ИСПИ, ауд.1448 Винтонива Наталья Ивановна Тема15.Этапы подготовки и решения задач на ЭВМ
Содержание • Этапы подготовки и решения задач на ЭВМ • Стили программирования • Логическое программирование • Примеры языков программирования
В процессе подготовки и решения на ЭВМ задач можно выделить следующие этапы: • постановка задачи; • математическое описание задачи; • выбор и обоснование метода решения; • алгоритмизация вычислительного процесса; • составление программы; • отладка программы; • решение задачи на ЭВМ и анализ результатов.
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 • Перечислите этапы решения задач на ЭВМ • Какие виды моделей вы знаете, приведите примеры информационных моделей. • Что понимают под информацией в теории информации по концепции К. Шеннона.
Использование материалов презентации Использование данной презентации, может осуществляться только при условии соблюдения требований законов РФ об авторском праве и интеллектуальной собственности, а также с учетом требований настоящего Заявления. Презентация является собственностью авторов. Разрешается распечатывать копию любой части презентации для личного некоммерческого использования, однако не допускается распечатывать какую-либо часть презентации с любой иной целью или по каким-либо причинам вносить изменения в любую часть презентации. Использование любой части презентации в другом произведении, как в печатной, электронной, так и иной форме, а также использование любой части презентации в другой презентации посредством ссылки или иным образом допускается только после получения письменного согласия авторов. 46