
- •Министерство образования и науки рф
- •Владимирский государственный университет
- •Оглавление
- •Глава 1. Алгоритмизация 17
- •Глава 2. Программирование 77
- •Глава 3. Отдельные вопросы методики преподавания
- •2. Проектная технология – средство реализации
- •3. Пример использования элементов технологии
- •Введение
- •Краткая структурная схема изучения темы «Алгоритмизация и программирование»
- •Требования к знаниям и умениям учащихся при изучении содержательной линии «Алгоритмизация и программирование»
- •Рекомендации по изучению языков программирования Процедурное программирование
- •Краткая история языков программирования Ершол, Turbo Pascal, qBasic Язык программирования Ершол
- •Язык программирования Turbo Pascal
- •Язык программирования qBasic
- •Визуальное объектно-ориентированное программирование
- •Языки логического и функционального программирования
- •Глава 1. Алгоритмизация
- •1. Алгоритм и его свойства
- •1.1. Понятие алгоритма
- •1.2 Исполнитель. Схема знакомства с исполнителем
- •1.3. Свойства алгоритмов
- •2. Способы записи алгоритмов
- •2.1. Словесный способ записи алгоритмов
- •2.2. Блок-схемы4 алгоритмов
- •2.2.1. Основные элементы построения блок-схем
- •Основные управляющие команды организации действий в алгоритмах
- •2.2.3. Дополнительные управляющие команды организации действий в алгоритмах
- •3. Примеры блок-схем алгоритмов
- •3.1. Блок-схемы алгоритмов, содержащих команды ветвления
- •3.2. Блок-схемы алгоритмов, содержащих команды повторения
- •3.3 Блок-схемы алгоритмов работы с массивами
- •3.4. Блок-схемы алгоритмов, содержащих команды обращения к вспомогательным алгоритмам
- •4. Алгостихи
- •5. Алгоритмы для исполнителя мнр (машины с неограниченными регистрами)
- •Глава 2. Программирование
- •1. Кодирование управляющих команд организации действий на процедурных языках Ершол, qBasic, Turbo Pascal13
- •2. Коды программ решения задач 10-36 на языках Ершол, qBasic, Turbo Pascal14
- •3. Занимательные игры-алгоритмы
- •Структурная схема возможных блоков построения игровых алгоритмов
- •3.1. Задача Баше
- •Программа на языке qBasic игры Баше
- •3.2. Ханойская башня
- •Программа на языке Turbo Pascal игры Ханойская башня (с использованием рекурсии)
- •3.3 Игра «Жизнь»
- •Программа на языке qBasic игры «Жизнь»
- •Глава 3. Отдельные вопросы методики преподавания учебного материала содержательной линии «Алгоритмизация и программирование»
- •1. Предметные технологии формирования информационной культуры учащихся
- •1.1. Проектирование алгоритмов «сверху вниз» и «снизу вверх»
- •Примеры проектирования алгоритмов с использованием технологий «сверху вниз» и «снизу вверх»
- •Задания к данному параграфу
- •1.2. Имитационное моделирование исполнения программ компьютером
- •1.2.1. Моделирование памяти компьютера
- •Задания к данному параграфу
- •1.2.2. Моделирование с использованием наглядных протоколов
- •Примеры ручного исполнения программ с использованием метода наглядных протоколов
- •Решение
- •Задания к данному параграфу
- •1.3. Имитационное моделирование при нахождении алгоритма поиска минимального элемента в массиве чисел
- •Задания к данному параграфу
- •1.4. Имитационное моделирование при нахождении алгоритма сортировки элементов массива методом выбора
- •Задания к данному параграфу
- •1.5. Имитационное моделирование при изучении механизма пирамидальной сортировки элементов массива
- •2. Проектная технология – средство реализации личностно-ориентированного обучения
- •3. Пример использования элементов технологии проблемного обучения при введении команды повторения «пока», управляющей команды организации действий в алгоритмах
- •4. Вопросы и задания к семинарским занятиям
- •5. Лабораторно-практические работы
- •Лабораторная работа 1
- •Лабораторная работа 2
- •Лабораторная работа 3
- •Лабораторная работа 4
- •Лабораторная работа 5
- •Лабораторная работа 6
- •6. Самостоятельная работа
- •Приложения Приложение 1. Программа на языке vba для Microsoft Excel, имитирующая механизм сортировки элементов массива простыми включениями
- •Приложение 2. Процедура на языке Turbo Delphi, имитирующая механизм сортировки элементов массива простым выбором
- •Библиографический список
- •Отпечатано в отделе оперативной полиграфии вггу
- •600024, Г. Владимир, ул. Университетская, 2, т. 33-87-40
- •15 Легенда о происхождении игры «Ханойская башня»
Визуальное объектно-ориентированное программирование
В настоящее время при изучении содержательной линии «Алгоритмизация и программирование» предмета «Информатика и ИКТ» общеобразовательных учреждений используют языки визуального объектно-ориентированного программирования Visual Basic.Net, Turbo Delphi, C#, J#. Визуальное объектно-ориентированное программирование является развитием технологии алгоритмического структурного программирования.
Системы визуального объектно-ориентированного программирования являются визуальными, т.к. используют визуальный метод создания графического интерфейса, и объектно-ориентированными, т.к. используют объектный метод построения программного кода.
Объект в объектно-ориентированном программировании является основным понятием. Объект – это совокупность взаимосвязанных полей и методов, существующих как единое целое.
Объектно-ориентированное программирование – это методология программирования, которая основана на представлении программы в виде совокупности объектов. Процесс разработки программы в среде визуального объектно-ориентированного программирования сводится к выбору набора объектов и их свойств, заданию событий и процедур их обработки, которые в совокупности обеспечивают решение поставленной задачи. Объектно-ориентированное программирование характеризуется тремя основными свойствами: инкапсуляцией, наследованием и полиморфизмом.
Инкапсуляция – это объединение в единое целое данных и алгоритмов обработки этих данных. В рамках объектно-ориентированного программирования данные называются полями, а алгоритмы – объектными методами.
Наследование – это свойство объектов порождать своих потомков. Объект-потомок автоматически наследует от родителя все поля и методы. Программист может дополнять объекты-потомки новыми полями и методами.
Полиморфизм (с греческого языка «много форм») – это возможность родственных объектов решать схожие по смыслу проблемы разными способами, изменяя алгоритм того или иного метода в потомках объекта. Для изменения метода необходимо перекрыть его в потомке, т.е. объявить в потомке одноименный метод и реализовать в нем нужные действия. В результате в объекте-родителе и объекте-потомке будут действовать два одноименных метода, имеющих разную алгоритмическую основу и, следовательно, придающие объектам разные свойства.
Языки логического и функционального программирования
Для знакомства с идеями и методами логического программирования можно рекомендовать язык Пролог (Prolog). Язык Пролог может рассматриваться в школьном курсе информатики как средство построения несложных баз знаний.
Моделирование знаний – тема искусственного интеллекта, разработка которой в базовом курсе информатики носит пока еще поисковый характер. В будущем в школьном курсе информатики линия искусственного интеллекта, безусловно, получит дальнейшее развитие.
Язык Пролог – это logic programming language (язык логического программирования) или programming in logic (программирование в терминах логики). Язык Пролог описывает не процедуру решения задачи, а логическую модель предметной области задачи – некоторые факты (свойства) относительно объектов предметной области и отношения между этими свойствами, а также правила вывода новых свойств и отношений из уже заданных. Пролог разработан в начале 70-х годов 20-го века во Франции в Марсельском университете группой специалистов во главе с Алэном Колмероэ. Появление языка связано с работами в области создания искусственного интеллекта. Ценность Пролога в возможности использования его как сложного и тонкого инструмента для разработки высокоспециализированных систем искусственного интеллекта.
Для знакомства с идеями и методами функционального программирования можно рекомендовать изучение языка Лисп (Lisp). В 1962 году группа специалистов под руководством Дж. Маккарти в Массачусетском технологическом институте разработала язык Лисп. Лисп – это list processing – обработка списков. Программа и обрабатываемые данные в языке Лисп представляются в одной и той же форме, в форме списков. Основными методами функционального программирования являются композиция и рекурсия. Язык Лисп представляет собой реализацию идей теории рекурсивных функций. Язык Лисп – главенствующий язык для создания высокоспециализированных систем искусственного интеллекта в США, язык Пролог – в Японии.