Автор: Пользователь скрыл имя, 07 Декабря 2011 в 22:17, курсовая работа
Решение задачи на компьютере невозможно без создания алгоритма. Умения решать задачи, разрабатывать стратегию ее решения, выдвигать и доказывать гипотезы опытным путем, прогнозировать результаты своей деятельности, анализировать и находить рациональные способы решения задачи путем оптимизации, детализации созданного алгоритма позволяют судить об уровне развития алгоритмического мышления школьников. Поэтому необходимо особое внимание уделять алгоритмическому мышлению подрастающего поколения.
Введение
1. Выбор технологии программирования для учебного процесса
2. Возможности методического обеспечения структурного программирования в школе
2.1 Принципы структурной алгоритмизации
2.2 Выбор подхода к преподаванию структурного программирования
2.3 Базовый набор структур и построение алгоритмов на их основе
3. Особенности языка программирования Pascal ABC
3.2 Типы данных в языке Pascal ABC
3.3 Структурный тип данных массив
4. Разработка методического обеспечения для работы со структурным типом данных массив
3.1 Основные этапы разработки решения задачи
3.2 Реализация учебных задач по работе с массивами
3.3 Описание игровых моментов при решении задач
Заключение
Список использованных источников
Приложение
End.
В алгоритме
по очереди просматриваются все
элементы массива, начиная с первого.
Элементы массива делятся на два
вида: удаляемые и неудаляемые. Если
в очередной клетке массива удаляемый
элемент, тогда значение переменной Sdv
увеличивается на единицу. Таким образом
в переменной Sdv подсчитывается число
удаляемых элементов.
Если
в рассматриваемой клетке находится
неудаляемый элемент, то он сдвигается
на Sdv позиций влево, как и определено правилом.
Присоединение
массива к массиву. Дано число
m и ряд из m чисел. Затем дано число n и два
ряда по n чисел. Требуется сформировать
единый ряд чисел. Новый ряд получается
при дописывании первого ряда в конец
второго. Длина ряда увеличивается одной
командой сразу на m.
Program Prisoedinenie;
Var n, m, i:
integer;
Var A, B: array
[1.. 100] of integer;
Begin
Writeln (‘Объединение
рядов: ’);
Readln (m);
(*Ввод
массива В из m элементов*)
Readln (n);
(*Ввод
массива A*)
i:=1;
While i<=m
do
Begin
A[i+n]:=B[i];
i:=i+1
End;
n:=n+m;
(*Вывод
массива А*)
End.
Первый
ряд запоминается во вспомогательном
массиве В, а длина ряда – в переменной
m. Затем в массив А заноситься второй ряд.
Теперь достаточно дописать ряд из массива
В элемент за элементом в продолжение
массива А.
Перестановка
соседей. Пусть дано число n и два
ряда по n чисел в каждом. Требуется каждый
элемент ряда, стоящий на четной позиции,
поменять с предыдущим. Исполнение цикла
по этому правилу должно начинаться со
второго элемента ряда.
Program Perestanovka;
Var n, i, Buf:
integer;
Var A: array
[1.. 100] of integer;
Begin
Writeln (‘Обмен
чисел: ’);
Readln (n);
(*Ввод
массива А*)
i:=2;
While i<=n
do
Begin
Buf:=A[i];
A[i]:=A[i-1];
A[i-1]:=Buf;
i:=i+2
End;
(*Вывод
массива А*)
End.
В задаче
исходный ряд чисел запоминается
в массиве А. Затем числа ряда переставляются
в массиве А в соответствии с условием
задачи. Когда ряд полностью построен,
содержимое массива А выводится на экран.
Слияние
двух массивов. Пусть дано число
n и два ряда по n чисел в каждом. Необходимо
построить ряд, в котором первый элемент
равен большему из первых элементов исходных
рядов. Второй элемент – большему из вторых
элементов исходных рядов и так для всех
элементов. Вывести получившийся ряд.
Исходные
данные задачи – два ряда чисел.
Разместить эти числа можно в
двух массивах: в А – первый ряд, а в В –
второй ряд. Вычисляя элемент за элементом,
будем выводить эти числа на экран [8, c.
67].
Program Sliyanie;
Var n, i, Max:
integer;
Var A, B: array
[1.. 100] of integer;
Begin
Writeln (‘Выбор
в парах: ’);
Readln (n);
(*Ввод
массива А*)
(*Ввод
массива В*)
i:=1;
While i<=n
do
Begin
If A[i]>B[i]
then Max:=A[i]
Else Max:=B[i];
Write (Max,
‘’); i:=i+1
End
End.
Сортировка
выбором. Сортировка выбором упорядочивает
ряд из n чисел по возрастанию с использованием
поиска наибольшего числа ряда. Среди
всех элементов массива от A[1] до A[n] находим
наиболший и меняем его местами с последним.
Затем точно так же поступаем с рядом от
A[1] до A[n-1]. Процесс завершается, когда
дойдем до ряда из одного элемента A[1] [8,
c. 73].
Program SortVibor;
Var n, i, j,
Max, Pos: integer;
Var A: array
[1..100] of integer;
Begin
Writeln (‘Сортировка
чисел: ’);
Readln (n);
(*Ввод
массива А*)
j:=n;
While j>1
do
Begin
If A[i]>Max
then
Begin
Max:=A[i];
Pos:=i
End;
i:=i+1;
End;
A[Pos]:=A[j];
A[j]:=Max;
j:=j-1;
End;
(*Вывод
массива А*)
End.
В программе
переменная j указывает на последний элемент
еще неотсортированной части ряда. В процессе
поиска наибольший элемент среди чисел
от A[1] до A[j] запоминается в переменной
Max, а номер клетки – в переменной Pos. Затем
найденный элемент меняется местами с
элементом A[j]. Процесс поиска и обмена
выполняется для значений j от n до 2 последовательно,
постепенно уменьшая длину неотсортированной
части ряда.
4.3 Описание
игровых моментов при решении
задач
При изучении
раздела информатики «
Плодотворность
труда учащихся на уроке зависит
от выбранной формы работы. Следует
комбинировать самостоятельную
и коллективную работу учеников для
осуществления взаимопомощи и быстроты
усвоения материала. Игра должна быть
интересна и охватывать всех учащихся.
Игра
«Группа разработчиков». Все учащиеся
делятся на три группы. Каждая группа
получает задание написать алгоритм
нахождения максимума (минимума), алгоритм,
сортирующий элементы массива по
возрастанию (по убыванию), алгоритм, суммирующий
элементы массива. После написания
алгоритмов группы учеников заменяют
одного из своих разработчиков
Кроме
того, принцип работы алгоритма на
перестановку элементов массива
в порядке возрастания, поиска максимального
(минимального) элемента удобно продемонстрировать
с помощью ролевого исполнения алгоритма,
примером которого является игра «Сценка».
Игра
«Сценка». Выбирается N количество учащихся
в зависимости от количества переменных
в алгоритме. Каждому ученику
раздается соответствующая роль
и его начальное значение: переменная
Счетчик (1 ученик), ячейки массива (количество
учеников зависит от размерности
массива), переменная Максимум (1 ученик),
переменная Минимум (1 ученик), переменная
Сумма (1 ученик), а также ученик, записывающий
на доске код программы. Задание:
найти сумму максимального и
минимального элементов массива. При
этом на доске чертится массив из N элементов,
отводится место для записи значения
переменных. Далее учащиеся проигрывают
алгоритм по ролям: если переменная счетчик
увеличивает свое значение, то ученик,
отвечающий за соответствующую ячейку
массива, должен сказать значение своей
ячейки или сравнить его со значением
соседней ячейки и изменить его, если
это соответствует алгоритму
решения задачи, который один из
учащихся записывает на доске. При этом
за каждый правильный шаг начисляется
бонус, а за неверный отнимается.
Немаловажной
составляющей успешного решения
алгоритмических задач является
частично самостоятельная работа учащихся
с возможностью проверить результаты
своей деятельности.
Игра
«Улитка». Заранее готовиться плакат
с изображением пустого массива
в виде спирали размерностью N. Учащиеся
по очереди бросают кубики, при
этом выпавшие числа последовательно
записывают в ячейки массива. Когда
массив будет заполнен, учащиеся получают
задание отсортировать массив в
порядке возрастания (убывания) таким
образом, чтобы каждое число повторялось
в массиве только один раз. При
этом после написания каждого
элемента программы один из учеников
проверяет его, внося при этом
нужные коррективы в рисунок на плакате.
Зависимость
качественного результата совместной
работы учащихся от эффективного труда
каждого ученика положительно влияет
на ответственный подход учеников к
решению алгоритмической
Игра
«Японский рисунок». На доске имеется
поле, размерностью N×M клеток. Каждый учащийся
получает многомерный массив, который
содержит значения только 1 и 0. Задача
каждого ученика заключается
в том, чтобы составить верный
алгоритма подсчета количества нулей
и единиц в своем массиве, и
зарисовать на доске клетку, координаты
которой по горизонтали и по вертикали
равны соответственно количеству нулей
и единиц в своем массиве. Если
все подсчеты будут выполнены
правильно, то из зарисованных клеток
на доске сложится определенный рисунок.
Мотивационную
составляющую решения любой алгоритмической
задачи определяет правильно поставленная
цель выполнения работы и ее дальнейшее
применение.
Игра
«Спортлото». Учащиеся получают задание
написать алгоритм, который бы обнулял
те стоки многомерного массива N×M, которые
содержат указанное число. Затем
каждый ученик получает свой лотерейный
билет (файл, содержащий многомерный
массив N×M). Учащиеся по очереди вытягивают
бочонки с номерами, которые последовательно
вводят в написанную ранее программу.
Таким образом, победителем станет
тот ученик, у которого раньше других
будут вычеркнуты все строки его
лотерейного билета, т.е. обнуляться
все строки многомерного массива.
Разработанные
игры «Группа разработчиков», «Сценка»,
«Улитка», «Японский рисунок», «Спортлото»
могут применяться при изучении
структурного типа данных массив (приложение
A).
Таким
образом, применение игровых форм в
обучении основам алгоритмизации и
программирования способствует повышению
эффективности традиционных методов
обучения за счет усиления доли исследовательских,
информационно-поисковых
Заключение
Современный
этап развития общества характеризуется
внедрением информационных технологий
во все сферы человеческой деятельности.
Новые информационные технологии оказывают
существенное влияние и на сферу
образования. Происходящие фундаментальные
изменения в системе
Информация о работе Планирование производственной программы предприятия