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

Автор работы: Пользователь скрыл имя, 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 Кб (Скачать файл)

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

Также важнейшими особенностями Паскаля  являются воплощение идеи структурного программирования;

 развитые средства представления  структур данных обеспечивают  удобство работы с различными  типами информации;

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

 

1.2.2. Basic

Язык программирования Бейсик был  создан для обучения программированию студентов гуманитарных вузов. Его  прямое назначение — решение математических и инженерных задач в  режиме диалога "человек — компьютер".

Ученый Э. Дейкстра говорил: "Студентов, ранее изучавших Бейсик, практически  невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой  умственной деградации".

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

Простота Бейсика зачастую сказывается  отрицательно:

  • в ряде случаев не надо явным образом описывать переменную. Даже начинающий программист должен понимать, переменные какого типа и в каких целях он собирается использовать, так как это приучает к дисциплине и способствует уменьшению ошибок при преобразовании типов переменных.
  • использование нумерации строк, способствующее использованию оператора goto вместо условных операторов. Это приводит к злоупотреблению оператором goto, так как сложно уловить логику работы программы, пытаясь проследить прыжки с одной строки на другую.
  • при операции сравнения и присваивания используется один и тот же оператор «=», что создает двусмысленность.

Однако необходимость изучения Бейсика все же существует в связи  с использованием языка VBA в офисном  программировании при написании  макросов.

1.2.3. Си

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

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

Си имеет следующие важные особенности:

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

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

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

 

1.3. Объектно-ориентированное программирование

Объектно-ориентированная программа  — совокупность множества независимых  объектов. Каждый объект можно использовать для решения задачи, не вникая во внутренние механизмы его функционирования. Наиболее популярные языки объектного программирования — C++, Delphi, Visual Basic.

Объектно-ориентированное программирование в настоящее время занимает ведущее  место в разработке профессиональных программных средств.

В ходе изучения данного курса будут  решены три круга задач:

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

Быстро растущая популярность визуального  программирования в системах программирования типа Delphi, Visual Basic, C++Builder делает привлекательной идею положить одну из них в основу курса. На этот счет в педагогической литературе высказываются различные точки зрения. Одна из них состоит в том, что занимательность и облегченность создания программ визуально-объектным способом не вполне соответствует усвоению идей и методов объектного программирования при проведении относительно короткого спецкурса. Другие аргументы в пользу ориентации на традиционные объектные средства, содержащиеся в версиях языка Паскаль — несомненная преемственность по отношению к курсу программирования на Паскале, существенно меньшие требования к компьютерам.

К недостаткам объектно-ориентированного программирования можно отнести:

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

 

Глава 2. Разработка программы "Числа"

    1. Постановка задачи

Задание: "Числа". Дано натуральное  число n (n<1001). Записать это число  римскими цифрами.

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

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

    1. Математические методы

Перевод числа производится таким  образом: строковой переменной res присваиваем пустую строку. Итерационной переменной i присваиваем число 13, равное количеству чисел в массиве уникальных комбинаций римских цифр. Пока число n больше нуля, повторяем действия: уменьшаем переменную i до тех пор, пока не найдется i-тый элемент массива арабских чисел, меньший, чем переводимое число n. Затем добавляем в строку res римскую цифру, соответствующую текущему разряду числа n, и уменьшаем число n на этот разряд. В итоге в переменной res будет находиться результат перевода (рис. 3).

    1. Описание алгоритма

В текстовое поле Input вводится число  для перевода. Если введено корректное число, то после нажатия кнопки "Перевести" в текстовом поле Output отобразится  переведенное число и произойдет сохранение в файл history.txt введенного числа и результата перевода (рис. 1). В случае неверного ввода в текстовом поле Output отобразится сообщение "повторите ввод" (рис. 2).

Проверка правильности ввода числа  происходит с использованием цикла  с двумя постусловиями. Повторяется проверка каждого введенного символа на принадлежность к множеству цифр; повторение происходит до тех пор, пока один из символов не окажется некорректным или не будут проверены все введенные символы (рис. 4).

Вход в меню функций администратора происходит при нажатии кнопки "Вход от администратора" на главной форме. Открывается новая форма (TForm2), содержащая текстовое поле passw для ввода пароля администратора. Если будет введен верный пароль, текущая форма закроется и откроется форма TForm3, на которой расположено меню функций администратора; в ином случае будет выведено сообщение "неверный пароль" (рис. 5).

В меню функций администратора расположены  кнопки удаления файла истории переводов  и очистки файла истории переводов.

При нажатии на кнопку удаления файла произойдет связывание файловой переменной с файлом history.txt и удаление файла. В случае если файл был уже удален прежде, появится сообщение "файл не найден".

При нажатии на кнопку очистки файла  произойдет лишь очистка его содержимого, файл удален не будет: файловая переменная будет связана с файлом history.txt, данный файл будет перезаписан и закрыт.

 

    1. Блок-схемы

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Системные требования

Для корректной работы программы необходима операционная система семейства  Windows. Программа написана с использованием среды программирования Delphi 10. Требуется не менее 1 МБ дискового пространства и не менее 1 МБ ОЗУ

    1. Руководство пользователя

 Запуск программы осуществляется путем запуска файла Project1.exe. Для перевода необходимо ввести арабское число от 1 до 10000 в текстовое поле Input, нажать кнопку "Перевести". В результате будет получено римское число, выведенное в текстовое поле Output. При вводе числа, не существующего в римской системе, или слишком большого числа (>99999), а также при вводе некорректной записи, включающей нечисловые значения, в текстовом поле Output будет получена ошибка ввода.

 

 

Вход в меню администраторских  функций осуществляется путем нажатия  кнопки "Вход от администратора" на главной форме и последующим вводом пароля (123). После ввода необходимо нажать кнопку "OK". При вводе неверного пароля в метку выводится сообщение об ошибке. При вводе верного пароля открывается окно функций администратора.


 

 

 

 

 

 

 

 

 

 Для очистки или удаления файла  истории необходимо нажать соответствующую кнопку. При повторном нажатии на кнопку удаления файла истории в метку будет выведено сообщение "файл не найден".

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

Результаты корректных переводов  сохраняются в текстовый файл.


 

 

 

 

 

 

 

 

 

 

Заключение

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

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

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

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

При осуществлении перевода происходит сохранение текущего перевода в файл текстового типа history.txt. Поддерживается вход в меню администраторских функций, таких как очистка и удаление файла истории переводов.

 

Список литературы

  1. Иванова Г. С. Основы программирования: Учебник для вузов. / Г. С. Иванова. — М.: Изд-во МГТУ им. Н.Э. Баумана, 2001. — 392 с.
  2. Казиев В. М. Информатика в примерах и задачах: кн. для учащихся / В. М. Казиев. — М.: Просвещение, 2007. — 304 с.
  3. Лапчик М. П. Методика преподавания информатики: Учеб. пособие для студ. пед. Вузов / М. П. Лапчик, И. Г. Семакин, Е. К. Хеннер. — М.: Издательский центр "Академия", 2001. — 624 с.
  4. Татарникова Л. А. Основы алгоритмизации и программирование на языке Pascal: Учеб. пособие / Л. А. Татарникова. — Томск, 2008. — 139 с.
  5. Фаронов В. В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. / В. В. Фаронов. — М.: Изд-во "ОМД Групп", 2003. — 616 с.
  6. Любутов О. Д. Структурное программирование сверху-вниз. / О. Д. Любутов. // Информатика и образование. — М., 2003. С. 20-23.
  7. Богатырев Р. Летопись языков Паскаль. / Руслан Богатырев. // Мир ПК. — 2001.—№ 4.
  8. Орещенков И. Бейсик. Visual. / Игорь Орещенков. // Мир ПК. — 2009. — № 8.
  9. Википедия — свободная интернет-энциклопедия. http://ru.wikipedia.org/wiki/Категория:Языки_программирования.

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