Методика изучения языка программирования | Классификация языков программирования


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

Вопрос.

  1. Основная цель изучения раздела. Общие вопросы методики.
  2. Понятие языка программирования, данные, величины, команды.
  3. Изучение языков программирования.
  4. Методические рекомендации к изучению систем программирования.
  5. Решение задач.

Основная цель.Познакомить учащихся с разделом информатики «Программирование». Научить прий Омам построения простых вычислительных алгоритмов и представления алгоритмов на языке программирования высокого уровня (например, Паскаль).Научить начальным навыкам работы с системой програмування.

Основные тематические единицы материала

  1. Программирование как раздел информатики.
  2. Классификация и краткая характеристика различных типов языков программирования.
  3. Знакомство с языком программирования Паскаль. Структура Паскаль-программ.
  4. Назначение систем программирования. Освоение приемов работы с системой программ ие.
  5. Основные конструкции языка.
  6. Понятие величины. Основные типы величин, их характеристика.
  7. Построение вычислительных алгоритмов различной структуры.

 

Согласно школьной программе по информатике в 9-12 классах отводится часов на изучение данной темы:
12 кл. — 34 ч.

 

1. Алгоритмы и алгоритмические структуры. описание алгоритмов 9
2. Методология проектирования программ 1
3. Системы визуального программирования 24

 

Общие вопросы.

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

Новым направлением в развитии темы «Программирование» является введение в курс информатики изучен ние объектно-ориентированных языков программирования.Учитель информатики может в зависимости от наличия компьютерной техники и профильного направления школы преподавать структурную или объектно-ориентирован в язык программирования.Как объектно-ориентированный язык в школьной практике можно исп ористовуваты расширение языка Паскаль — среда визуального программирования Delphi-Pascal и Visual Basic.

Рассмотрим вопрос, что такое программирование как предметная область. Программирование — это раз дел информатики, задача которого — разработка программного обеспечения ЭВМ. В узком смысле слово программирования означает процесс разработки программы на определенном языке программирования.Разработку средств системного программного обеспечения и систем программирования принято называть системным пр в грамуванням; разработку прикладных программ называют прикладным программированием.Согласно этому принципу разделяют программистов на системных и прикладных, в зависимости от типа создаваемых программ.

В период существования ЭВМ 1-2-3 поколений для использования компьютера в любой области Фахи тель должен был уметь программировать.В 1985г., Когда вводился курс информатики в школе, автор а мы 1 учебника был провозглашен лозунг «Программирование — вторая грамотность».Прошло время, и стали появляться пакеты прикладных программ. Прикладное программное обеспечение стало доступным и общепринятым. На современном этапе к программированию обращаются специалисты только в том случ д ку, когда отсутствует должное программное обеспечение для решения конкретной задачи.И такие вып адкы становятся все более редкими.

Читать  Лекции по дисциплине "Архитектура компьютерных систем"

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

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

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

 

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

  • процедурное программирование (Паскаль, Бейсик, Фортран, Си, Ассемблеры)
  • логическое программирование (Пролог)
  • функциональное программирование (Лисп)
  • объектно-ориентированное программирование (Смолток, Delphi-Pascal, Visual Basic, C ++).

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

 

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

  1. Языки программирования низкого уровня.

Язык ассемблера.

  1. Языки программирования высокого уровня.

Fortran, Cobol, Algol, Pascal, Basic, C, C ++, Java

  1. Языки программирования баз данных.

SQL (Structured Query Language)

4. Языки программирования для Интернета

Скрипт-языка, HTML, Perl, Java.

5. Логические языки программирования

PL / 1, Prolog, LISP, Forth

 

Процесс изучения и практического освоения программирования можно разделить на 3 этапа:

  1. изучение методов построения вычислительных алгоритмов;
  2. изучение языка программирования;
  3. изучение и практическое освоение конкретной системы программирования.

 

Вопрос первой части можно рассматривать при изучении раздела «алгоритмизация».

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

Процесс программирования делятся на 3 этапа:

  1. составление алгоритма решения задачи;
  2. составление программы на языке программирования;
  3. отладки и тестирования программы.

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

  1. множество допустимых значений;
  2. множество операций над данными;
  3. множество функций, определенных над данными этого типа;
  4. множество определенных отношений.

С методической точки зрения знакомство учащихся с типами величин лучше разделить на отдельные уроки и вводить новые типы постепенно, по мере необходимости, в следующей последовательности: Integer, Real, Сhar, Boolean. Например, после знакомства с целым типом данных и решения некоторого количества задач, учитель изменяет условие задачи таким образом, чтобы ученики столкнулись с проблемных ситуаций семьей: решить данную задачу для диапазона целых чисел невозможно.Учитель вводит понятие типа данных Real.

Читать  Методические указания к выполнению лабораторных работ Информатика

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

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

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

 

Тип операции функции отношение
целый      
действительный      
логический      
символьный      

Типы констант определяются по контексту (по форме записи в тексте), а типы переменных устанавливаются при описании переменных.

Другой вариант классификации данных: по структуре.Данные делятся на простые и структурированы. Для простых величин (их еще называют скалярными) справедливо утверждение: одна величина — одно значение. Для структурированного: одна величина — несколько значений. К структурированных величин е д носятся: массивы, множества, строки, файлы, записи.В разделе «Введение в программирование» в ивчають простые величины, массивы, строки, другие типы — для углубленного изучения материала.

 Действия над величинами, обусловленные алгоритмом, основываются на следующей иерархии понятий: операция — выражение — команда (оператор) — система команд.

Операция — самая законченное действие над данными.

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

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

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

Узловые понятия программирования: переменная и оператор присваивания.

Процесс решения задачи — это процесс последовательной смены значений переменных. Переменная получает к в Канны результат в процессе присваивания.На уровне машинных команд присваивания — это с анесення в ячейку памяти, отведенная для переменной, определены значения в результате выполнения команды.К таким команд относятся: присваивания, процедура ввода данных и передача параметров подпрограммам.

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

Читать  Информатика Конспект лекций Для студентов – Windows, язык программирования Turbo Pascal 7

<Переменная> = <выражение>

Механизм действия:

  1. вычислить значение выражения;

2.присвоиты (положить) полученное значение переменной.

Обратить внимание учащихся, что данная команда выполняется справа налево.

Нельзя путать с математической равенством. Знак = — читается как присвоить, а не равна.

Далее обязательно следует объяснить содержание команды:

Х = Х + 1

Объяснить задачу обмена значениями двух переменных.

x = y;

y = z;

z = x

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

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

Эффективным методическим средством, позволяющим достичь понимания программирования, является ручное трассировки алгоритмов.

Изучение языков программирования.

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

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

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

  1. сначала рассматриваются различные алгоритмы, для описания которых используются блок-схемы и алгоритмический язык, а затем — правила языка программирования, способы перевода уже построенных алгоритмов в программу на этом языке;
  2. алгоритмизация и программирование осваиваются параллельно.

 

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

 

Системы программирования.

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

В каждой конкретной системе программирования можно выделить следующие компоненты:

— среда;

— режимы работы;

— система команд

— данные.

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

Характерные режимы работы систем программирования:

  1. режим редактирования текста программы;
  2. режим компиляции программы;
  3. режим выполнения программы;
  4. работа с файлами;
  5. режим помощи;
  6. отладки программы.

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

Читать  Среда программирования АЛГО – Изучения Паскаля для школьников

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

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

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

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

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

 

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

В конце изучения раздела «Введение в программирование» проходит урок обобщения знаний. На этом уроке поднимается вопрос о различные классы языков программирования, о парадигмы пр ограмування, о способах трансляции, делаются выводы об особенностях и характерные черты структурного подхода в программировании и объектно-ориентированного.

Более детальное изучение раздела «Программирование» выносится для профильного курса программирования.

 

Методические рекомендации к решению задач по курсу алгоритмизации и программирования.

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

— линейные алгоритмы (вычисления по формулам, любые пересылки значений переменных)

— разветвленные алгоритмы (поиск наибольшего или наименьшего значений из нескольких данных, сортировки 2-3 значений, диалог с разветвлениями)

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

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

 

Примеры задач, которые можно предложить ученикам.

 

Пример 1.

Сравнить возраст двух детей. Ответ выводить в виде фраз: «Маша старше Саши», «Маша м олодша за Сашу», «Маша и Саша сверстники».

Замечания.Алгоритм имеет структуру 2 вложенных полных разветвлений. При переходе от алг оритмичнои языка в Паскаля надо обратить внимание на необходимость соблюдения правил синтаксиса языка.

Читать  Учебно-методическое обеспечение

Пример 2.

Составить алгоритм упорядочения значений 3 сменных А, В, С по росту.

Замечания.Для решения этой задачи следует применить алгоритм: упорядочить А и В, уп орядкуваты В и С (после этого максимальное значение попадет в С), еще раз упорядочить А и В. Таким образом, алгоритм будет иметь структуру 3 последовательных неполных разветвлений.

 

алг Сортировка Program Sort
реч А, В, С, Х var A, B, С, Х: real;
нач begin
      введение А, В, С     read (А, В. С)
      если А> B     if А> B
                  то Х = А; А = В; В = Х          then begin
      все                    Х = А; А = В; В = Х
                      end;
     если В> С     if В> С
                  то Х = В; В = С; С = Х          then begin
в это                    Х = В; В = С; С = Х
                     end;
     если А> B     if А> B
                 то Х = А; А = В; В = Х          then begin
    все                    Х = А; А = В; В = Х
                     end;
    вывода А, В, С     write (A, B, C)
кон end.

 

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

Program Sort
var A, B, C: real;
 

Procedure Sort_2 (var X, Y: real)

  var Z: real;
   begin
             Z = X; X = Y; Y = Z
    end;
Begin

read (А, В. С)

Sort_2 (A, В);

Sort_2 (B, C)

Sort_2 (A, В);

           write (A, B, C)
end.

 

Пример 3.

Дано действительное число Х и натуральное N. Составить алгоритм вычисления Х N.

Замечания.Возведение в степень заменяется многократным умножением основы на саму себя.

i: = 1; Y: = 1;

while i <= N do

begin

Y = Y * X;

i = i + 1;

end;

При выполнении трассировки алгоритма обязательно нужно проверить при N = 0.

 

Пример 4.

Найти наибольший общий делитель последовательности целых чисел. Использовать подпрограмму нахождения НОД 2-х чисел. Можно использовать алгоритм Евклида.

 

Пример 5.

Последовательно вводятся N целых чисел. Найти максимальное из них.

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

 

Пример 6.

Сколько различных N-буквенных слов можно составить путем перестановок данных N букв?

[Всего голосов: 4    Средний: 5/5]