Similar presentations:
Постановка задачи
1.
Постановка задачисбор информации о задаче, формулировка условия задачи;
определение конечных целей решения задачи;
определение формы выдачи результатов; описание
МДК.04.01 Раздел 1 Системное и прикладное программирование
2.
Формируемые профессиональные компетенцииПК 4.1. Участвовать в планировании деятельности первичного структурного
подразделения.
ПК 4.2. Участвовать в разработке и внедрении технологических процессов.
ПК 4.3. Разрабатывать и оформлять техническую и технологическую
документацию.
ПК 4.4. Обеспечивать соблюдение технологической и производственной
дисциплины.
ПК 4.5. Обеспечивать соблюдение техники безопасности.
ДПК.3 Выполнять разработку спецификаций отдельных компонентов, кода
программного продукта на основе готовых спецификаций на уровне модуля
ДПК.4 Разрабатывать объекты базы данных, реализовывать базу данных в
конкретной СУБД, методы и технологии защиты информации в базы данных
3.
Технологический процессЭто упорядоченная последовательность
взаимосвязанных действий, выполняющихся с
момента возникновения исходных данных до
получения требуемого результата.
4.
ПрограммированиеПроцесс создания компьютерных программ.
В узком смысле (так называемое кодирование) под
программированием понимается написание инструкций (программ) на
конкретном языке программирования. В более широком смысле под
программированием понимают весь спектр деятельности, связанный
с созданием и поддержанием в рабочем состоянии
программ — программного обеспечения ЭВМ.
Иначе это называется «программная инженерия»
(«инженерия ПО»).
5.
Постановка задачи (ПЗ)Это процесс составления точной формулировки условий задачи с описанием
входной и выходной информации.
Входная информация по задаче — данные, поступающие на вход задачи и
используемые для её решения.
Выходная информация может быть представлена в виде документов, кадров на
экране монитора, информации в базе данных, выходного сигнала устройству
управления.
Постановка задачи разрабатывается организацией, разработчиком программной
продукции, на основании технического задания совместно с заказчиком.
Главный исполнитель — это разработчик.
6.
Постановка задачиНа этапе постановки задачи должно быть четко
определено, что дано, и что требуется найти.
Так, если задача конкретная, то под постановкой
задачи понимают ответ на два вопроса: какие
исходные данные известны и что требуется
определить. Если задача обобщенная, то при
постановке задачи понадобится еще ответ на
третий вопрос: какие данные допустимы.
7.
Постановка задачи включает в себя:01
Сбор информации
о задаче
03
05
Определение
конечных целей
решения задачи
Описание данных
(их типов, диапазонов
величин, структуры и
т. п.
02
Формулировку
условия задачи
04
Определение
формы выдачи
результатов
8.
НюансыПользователь хорошо знает проблемную сторону задачи, но обычно слабо
представляет, как она будет решаться на компьютере (ЭВМ).
Предметная область пользователя часто незнакома программисту,
поэтому необходима полная корректная постановка задачи, однозначно
понимаемая пользователем и разработчиком.
9.
Решение задачиЭто процесс автоматического преобразования исходных данных в искомый
результат в соответствии с заданным алгоритмом.
Этапы решения задачи на компьютере
1. Постановка задачи. Необходимо чётко определить, что дано и что требуется
найти.
2. Математическая формализация. Все необходимые для решения задачи
действия должны быть формализованы, то есть представлены как математические
операции и соотношения между входящими в них переменными.
3. Разработка алгоритма. Алгоритм решения задачи разрабатывается на основе
построенной математической модели
10.
Этапы решения задачи на компьютере4. Составление программы. Это кодирование алгоритма для реализации его в
компьютере.
5. Отладка и тестирование программы. Под отладкой программы понимается
процесс испытания работы программы и исправления обнаруженных при этом
ошибок.
6. Проведение расчётов и анализ полученных результатов.
Эту последовательность называют технологической цепочкой
решения задач на компьютере.
11.
Этапы решения задачи на ЭВМ1. Постановка задачи.
2. Анализ и исследование задачи, модели.
3. Разработка алгоритма.
4. Программирование.
5. Тестирование и отладка
6. Анализ результатов решения задачи и уточнение
в случае необходимости математической модели
с повторным выполнением этапов 2-5.
7. Сопровождение программы.
12.
Исследование предметной областиПредметная область – определенная часть реального мира,
информацию о которой мы собираем и используем.
На данном этапе:
• определяется, к какой предметной области относится задача
(например, к области физики, математики и т.д.)
• происходит четкое и полное описание условий задачи
(формулировка задачи)
• проверяется понятность задачи
• проверка полноты исходных данных
13.
Построение математической модели объектаНа этом этапе проводится анализ и исследование задачи.
Структура этапа:
1. Анализ существующих аналогов задачи
2. Анализ технических и программных средств
3. Разработка математической модели
4. Разработка структур данных
14.
Математическая модельЭто математическое представление реальности,
один из вариантов модели как системы,
исследование которой позволяет получать
информацию о некоторой другой системе.
Это система математических соотношений
(формул, уравнений, неравенств и т.д.), отражающих
существенные свойства объекта или явления.
Математическая модель предназначена для
прогнозирования поведения реального объекта, но
всегда представляет собой ту или иную степень его
идеализации.
Пример
15.
Математическая запись ПЗОтличается высокой точностью отображения ее сущности, лаконичностью
записи, однозначностью понимания, но она может быть выполнена не
для всех задач.
При выборе метода решения предпочтение отдается методу,
который:
• обеспечивает необходимую точность и не обладает свойством
вырождения (бесконечного зацикливания)
• позволяет использовать уже готовые стандартные программы
• ориентирован на минимальный объем информации
• наиболее быстрое получение результатов
16.
Построение математической моделиНа этапе построения математической модели нужно опередить:
а) ограничения и допущения;
б) что дано – перечисление исходных данных;
в) результат – что найти;
г) как найти – математические соотношения,
которые связывают исходные данные
с результатами.
17.
Построение алгоритмаАлгоритм – это последовательность действий, которые нужно выполнить, чтобы
получить определённый результат.
Виды алгоритмов:
• вербальный, когда алгоритм
описывается на человеческом языке;
• символьный, когда алгоритм
описывается с помощью набора символов;
• графический, когда алгоритм
описывается с помощью набора графических изображений.
Общепринятыми способами записи являются графическая запись с помощью
блок-схем и символьная запись с помощью школьного алгоритмического языка.
18.
ПримерыСимвольная запись
Графическая запись
Алгоритм <Имя> (раздел описаний)
Аргументы: <что дано>
Результат: <что найти>
Начало
<Команды>
Конец.
Начало
ввод
<действия>
вывод
Конец
Линейная
структура
19.
Отладка и тестированиеНа этом этапе происходят испытания работы программы и исправления обнаруженных
ошибок.
Проверка на компьютере правильности работы программы проходит с помощью тестов.
Тест – это исходные данные, для которых известен ожидаемый от программы результат.
Анализ результатов
После тестирования и отладки, программист анализирует полученные результаты и делает
вывод о корректировке программы.
Корректировка
Если корректировка требуется, то программист может возвратиться на любой из этапов.
Если каким-либо образом изменяются исходные данные или искомый результат, то для
решения задачи следует начать все с начала (с этапа исследования предметной области).
20.
Контрольные вопросы1. Что такое технологический процесс?
2. Программирование – это?..
3. Постановка задачи – это?..
4. В чем отличия входной и выходной информации?
5. Кто является главным исполнителем задачи?
6. Что включает в себя постановка задачи?
7. Какие существуют этапы решения задачи? Опишите их.
8. Дайте определение понятию «Алгоритм».
9. Перечислите виды алгоритмов.
10. Опишите структуру этапа математического моделирования.
21.
Практическая22.
Постановка задачиПостановка задачи, в первую очередь должна строго однозначно указать,
«что дано?» и «что требуется получить?»
Постановка задачи может быть конкретной или обобщенной. В
конкретной задаче исходные условия определяются однозначно, и ее
решение состоит в получении конкретных результатов, отвечающих
постановке
23.
Форма записи постановки задачиЗадача: <содержательная-формулировка-задачи>
Дано: <перечисление-исходных-объектов>
Требуется (Найти): <перечисление-требуемых-объектов>
Связь: <связи-между-требуемым-и-исходным>
При: <условия-допустимости-исходных-данных>
<Перечисление-исходных-объектов> – это список исходных данных с разъяснением
их содержательной роли и указанием типов принимаемых значений.
Аналогично оформляется <Перечисление-требуемых-объектов>.
Эти части формальной постановки выполняют также роль терминологических
словарей.
24.
Форма записи постановки задачиВ разделе <Связи-между-требуемым-и-исходным> фиксируется формальное
описание зависимостей между требуемыми результатами и исходными
данными. Для ряда задач формальное описание связи выразить
математически не удается, и в этом случае может использоваться словесное
описание.
В разделе <Условия-допустимости-исходных-данных> описываются
ограничения на область допустимых значений для исходных данных. Эти
ограничения определяют возможность получения решений поставленной
задачи.
25.
Постановка задачи. ПримерыЗадача: Найти вещественные корни уравнения х2 - 1001*x + 1000 = 0.
В этой задаче дано конкретное уравнение, и ее решение имеет целью найти пару
вещественных чисел, являющихся корнями этого уравнения.
Задача: Найти вещественные корни квадратного уравнения a*x2 + b*x + c = 0
Дано: a, b, c - коэффициенты уравнения [вещественные числа].
Требуется: x1, x2 - корни уравнения [вещественные числа].
Связь: a*xi 2 + b*xi + c = 0, (i=1,2) – тождество.
При: а ≠0.
26.
ЗаданияСделать постановку задачи для следующих задач:
2 вариант
1 вариант
Найти n! = 1*2*3 … n
Найти n*2^2
Найти площадь цилиндра
Найти площадь кольца
Найти периметр треугольника
Найти площадь круга
informatics