СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Индивидуальный проект студента

Категория: Информатика

Нажмите, чтобы узнать подробности

В данной работе рассматривается проблема создания программ. Программирование – широко распространенный на сегодняшний день вид человеческой деятельности. Умение писать программы на понятном исполнителю языке – конкретном языке программирования. Это и есть основные знания, умения и навыки по конструированию программ.

Просмотр содержимого документа
«Индивидуальный проект студента»

Государственное областное бюджетное

профессиональное образовательное учреждение


«ЛИПЕЦКИЙ ПОЛИТЕХНИЧЕСКИЙ ТЕХНИКУМ»




Научно-практическая конференция

«Первые шаги в науку»







Исследовательская работа

на тему

«Конструирование программ»




Выполнил:

студент группы 2015-5

Литвинов Сергей.

Руководитель:

Иванилова Тамара Семёновна, преподаватель информатики















Липецк, 2016



Содержание



  1. Введение

  2. Основная часть

    1. Теоретические основы конструирования программ.

    2. Разработка алгоритма методом последовательного уточнения для исполнителя Робот.

    3. Демонстрация геометрической фигуры - снежинка Коха.

  3. Заключение



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



Введение

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

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

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

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

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

Программа – это план деятельности исполнителя (например, компьютера) по решению определенного типа задач. Чтобы составить план, важны логическое и иные формы мышления, знание условий выполнения программы и возможностей исполнителя, а также умение писать программы на понятном исполнителю языке – конкретном языке программирования. Это и есть основные знания, умения и навыки по конструированию программ.



  1. Теоретические основы конструирования программ

В процессе создания любой программы можно выделить несколько этапов.

1. Постановка задачи — необходимо определить цель задачи, ее содержание и общий подход к решению. Уже на этапе постановки надо учитывать эффективность алгоритма решения задачи на ЭВМ, ограничения, накладываемые аппаратным и программным обеспечением.

2. Анализ задачи и моделирование — на этом этапе определяются исходные данные и результат, выявляются ограничения на их значения, выполняется формализованное описание задачи и построение математической модели, пригодной для решения на компьютере.

3. Разработка или выбор алгоритма решения задачи — выполняется на осно­ве ее математического описания.

4. Проектирование общей структуры программы — формируется модель решения с последующей детализацией и разбивкой на подпрограммы, определяется "архитектура" программы, способ хранения информации.

5. Кодирование — запись алгоритма на языке программирования. Для успешной реализации целей проекта я использовал методы структурного программирования.

6. Отладка и тестирование программы. Под отладкой понимается устранение ошибок в программе. Тестирование позволяет вести их поиск и, в конечном счете, убедиться в том, что полностью отлаженная программа дает правильный результат.

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

Все программы, по сути, обрабатывают данные. При этом понятие данных можно трактовать весьма широко. Однако все они для современных ЭВМ кодируются определенным набором нулей и единиц. Внутри машины программы работают именно с такими битовыми данными.

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

Машины с точки зрения их возможностей обработки данных универсальны (работают с 0 и 1), а человек пишет команды на языках программирования. Поэтому существует промежуточная программа для преобразования команд с языка программирования на язык машин. Такие программы существуют в виде компиляторов и интерпретаторов. Они весьма разнообразны, т.к. существует множество языков программирования, каждый из которых имеет свой компилятор или интерпретатор. Другими словами, вычислительные машины «говорят» почти всегда на одном языке, а программисты – на разных языках.

В процессе разработки алгоритма и программы следует начинать с самой общей модели решения, постепенно уточняя ее до уровня отдельного блока и затем детально прорабатывая каждый блок.

Объем текста алгоритма (программы) определяется количеством операторов, использованных для записи алгоритма.

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

Метод последовательного построения алгоритма:

  • исходная задача разбивается на несколько частей, каждая из которых проще всей задачи, и решение каждой части формулируется в отдельной команде;

  • если получаются команды, выходящие за пределы возможностей исполнителя, то они представляются в виде совокупности ещё более простых предписаний;

  • процесс продолжается до тех пор, пока все предписания не будут понятны исполнителю.

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





Последовательное построение алгоритма




  1. Разработка алгоритма методом последовательного уточнения для исполнителя Робот

Робот находится в некоторой клетке горизонтального коридора. Ни одна из клеток коридора не закрашена.

Робот должен закрасить все клетки этого коридора и вернуться в исходное положение.


Укрупнённый план действий Робота


Детализация плана действий Робота

1. Закраска всех клеток коридора, находящихся левее Робота:

влево

нц пока сверху стена и снизу стена

закрасить; влево

кц

Положение Робота после выполнения этого алгоритма:

2. Возвращение Робота в коридор в исходную точку:

вправо

нц пока клетка закрашена

вправо

кц

Положение Робота после выполнения этого алгоритма:

3. Закраска всех клеток коридора, находящихся правее Робота:

вправо

нц пока сверху стена и снизу стена

закрасить; вправо

кц

Положение Робота после выполнения этого алгоритма:


4. Возвращение Робота в коридор в исходную точку:

влево

нц пока клетка закрашена

влево

кц


5. По команде закрасить Робот закрашивает исходную точку.





Программа для Робота


алг

нач

влево

нц пока сверху стена и снизу стена

закрасить; влево

кц

вправо

нц пока клетка закрашена

вправо

кц

вправо

нц пока сверху стена и снизу стена

закрасить; вправо

кц

влево

нц пока клетка закрашена

влево

кц

закрасить

кон



Алгоритм вычисления степени y = ах, где x - целое число, a ≠ 0

Блок-схема решения задачи


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

Типы, количество и порядок следования формальных и фактических параметров должны совпадать.


  1. Демонстрация геометрической фигуры - снежинка Коха.

Шаг процедуры построения состоит в замене средней трети каждого из имеющихся отрезков двумя новыми той же длины.






С каждым шагом фигура становится всё причудливее. Граница снежинки Коха - положение кривой после выполнения бесконечного числа шагов.




Заключение

В настоящее время программирование стало широко распространенным видом человеческой деятельности.

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

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

Для сложных программ и программных комплексов этап проектирования программы выполняется параллельно с этапом разработки алгоритма и структуры данных.

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