Методика преподавания языков программирования разработка программы "числа"

Автор работы: Пользователь скрыл имя, 11 Сентября 2013 в 19:35, курсовая работа

Краткое описание

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

Содержание

Введение 3
Глава 1. Методика преподавания языков программирования 4
1.1. Структурное программирование 4
1.1.1. Алгоритмизация 5
1.1.2. Псевдокод 6
1.1.3. Исполнители 7
1.2. Учебные языки программирования 8
1.2.1. Pascal 8
1.2.2. Basic 9
1.2.3. Си 9
1.3. Объектно-ориентированное программирование 11
Глава 2. Разработка программы "Числа" 12
2.1. Постановка задачи 12
2.2. Математические методы 12
2.3. Описание алгоритма 12
2.4. Блок-схемы 14
2.5. Системные требования 16
2.6. Руководство пользователя 16
Заключение 19
Список литературы 20

Вложенные файлы: 1 файл

Курсовая работа.doc

— 378.50 Кб (Скачать файл)

РОССИЙСКАЯ ФЕДЕРАЦИЯ

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И  НАУКИ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ  УЧРЕЖДЕНИЕ

ВЫСШЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Институт математики, естественных наук

и информационных технологий 

Кафедра программного обеспечения

 

 

 

 

КУРСОВАЯ РАБОТА

 

МЕТОДИКА ПРЕПОДАВАНИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

РАЗРАБОТКА ПРОГРАММЫ "ЧИСЛА"

 

 

Выполнил:

Студент 304-2 группы

Мустафина П.Д.

Проверил:

Научный руководитель

Ст. преподаватель

Киприна Е.А.

 

 

 

Тюмень — 2011 

Аннотация

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

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

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

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

 

Содержание

 

 

 

Введение

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

Кудрявцев Л. Д., "Мысли  о современной математике и ее изучении"

Перефразируя сказанное о математике Л. Д. Кудрявцевым, можно сказать: не научив основам самой науки программирования, нельзя научить ее приложениям. Прежде чем переходить к изучению языков программирования и написанию программ, необходимо научиться базовым основам и понятиям, таким как определение алгоритма, построение блок-схем, структура псевдокода, работа с исполнителями. Можно с уверенностью сказать, что со знанием основ изучение языков программирования и написание сложных программ окажется гораздо более увлекательным и менее сложным занятием.

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

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

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

 

Глава 1. Методика преподавания языков программирования

    1. Структурное программирование

На сегодняшний день самой популярной методикой программирования является структурное программирование "сверху — вниз". Эта технология программирования представляет собой процесс пошагового разбиения алгоритма на все более мелкие части с целью получить такие элементы, для которых можно легко написать конкретные предписания.

Структурная алгоритмизация основывается на двух принципах:

  • последовательная детализация "сверху вниз"
  • ограниченность базового набора структур для построения алгоритмов любой степени сложности.

Из принципов вытекают требования структурного программирования:

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

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

Основные свойства и достоинства  структурного программирования:

  • возможность преодоления барьера сложности программ;
  • возможность демонстрации правильности программ на разных этапах решения задачи;
  • наглядность программ;
  • простота модификации (внесение изменений) программ;

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

  1. "алгоритмический" подход: схема решения задачи описывается на алгоритмическом языке и затем переводится в программную реализацию на конкретном языке программирования;
  2. "программный" подход: описание решения задачи сразу на языке программирования.

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

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

В силу перечисленных достоинств наиболее верным и методически правильным для преподавания программирования на начальном этапе обучения является алгоритмический подход. При изучении программирования с использованием алгоритмического подхода учащиеся сталкиваются с двумя проблемами: описание и детализация решения задачи на алгоритмическом языке; переход от алгоритмических конструкций к конкретному языку программирования. На разрешение этих трудностей должно быть направлено методическое обеспечение. В первом случае это могут быть схемы основных базовых структур с описанием их работы и особенностей использования при построении алгоритмов. Во-втором — таблицы перевода алгоритмических конструкций в конструкции языка программирования.

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

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

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

  • начало, конец;
  • список данных;
  • ввод, вывод;
  • вычислительные операции, реализуемые оператором присваивания.

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

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

1.1.2. Псевдокод

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

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

Для подкрепления изучения программирования по алгоритмическому языку, был создан редактор-компилятор "Е-практикум", позволяющий вводить, редактировать и исполнять программы на алгоритмическом языке. В 1986 году для "Е-практикума" был выпущен комплект учебных исполнителей: "Робот", "Чертежник", "Двуног", "Вездеход", которые позволяют просто вводить понятия алгоритма.

 

1.1.3. Исполнители

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

Традиционно применяемым дидактическим средством в этом разделе являются учебные исполнители алгоритмов. Кроме Черепашки, существуют также и другие исполнители, каждый из которых имеет собственную систему команд: Робот, Чертежник, Кенгуренок, Муравей. Языком описания алгоритмов для всех исполнителей является учебный алгоритмический язык (АЯ). Вообще говоря, подходит любой исполнитель, который удовлетворяет следующим условиям:

  • это должен быть исполнитель, работающий "в обстановке";
  • этот исполнитель должен имитировать процесс управления некоторым реальным объектом (черепахой, роботом и др.);
  • в системе команд исполнителя должны быть все структурные команды управления (ветвления, циклы);
  • исполнитель позволяет использовать вспомогательные алгоритмы (процедуры).

 

1.2. Учебные языки программирования

Учебный язык программирования —  язык программирования, предназначенный  для обучения. Такой язык должен отвечать главному требованию: простота. Чем проще он будет, тем быстрее  его освоит новичок. Возможности  таких языков могут быть ниже чем возможности полноценных, но они и не предназначены для серьёзной работы. Однако такие языки тоже способны к развитию: многие учебные языки программирования впоследствии превратились в полноценные языки высокого уровня, например Pascal.

Цель существования учебных языков — научить основным структурным элементам программирования, таким как переменные и их типы, циклы, ветвления, массивы и т. д.

Из структурных языков к учебным  можно отнести Pascal, Basic и Си.

1.2.1. Pascal

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

Информация о работе Методика преподавания языков программирования разработка программы "числа"