Реализация проектной деятельности посредством компьютерного моделирования
Автор: Сафонов В.И.
Журнал: Экономика и социум @ekonomika-socium
Рубрика: Информационные и коммуникативные технологии
Статья в выпуске: 2-5 (15), 2015 года.
Бесплатный доступ
Короткий адрес: https://sciup.org/140113433
IDR: 140113433
Текст статьи Реализация проектной деятельности посредством компьютерного моделирования
Особенность проектной деятельности заключается в приобщении ученика к самостоятельной деятельности, его участии в планировании этапов исследования, прогнозировании результатов своей деятельности. Компьютерное моделирование, неотъемлемой частью которого является вычислительный эксперимент, предполагает формирование этих умений, поэтому может быть использовано в методе проектов.
Возможности компьютерного моделирования весьма велики. Оно позволяет, не привлекая больших материальных и временных затрат, исследовать объекты, процессы и явления (как детерминированные, так и стохастические); прогнозировать их развитие и т.д. Компьютерное моделирование может осуществляться с помощью различных программных средств: языков программирования, электронных таблиц, специализированных оболочек и др. Выбор средства должен быть обусловлен теми возможностями, которыми оно обладает для проведения исследования. С другой стороны, необходимо учитывать имеющийся у школьников опыт использования того или иного программного обеспечения. Так, например, учащиеся старших классов могут владеть одним из алгоритмических языков программирования (Basic, Pascal, Visual Basic, Delphi и др.) или навыками работы в среде табличного процессора MS Excel.
Для исследования можно брать реальные ситуации. В этом случае можно продемонстрировать практическую значимость полученных в школе знаний и умений. Рассмотрим задачу обслуживания очереди. Целью ее решения является формирование оптимальной стратегии обслуживания. Всю задачу для упрощения ее понимания можно разбить на четыре части. Первая часть позволяет помочь ученикам осознать поставленную проблему и подготовить исходные данные. Затем в каждой новой части добавляются условия. Итогом моделирования должна стать собственная стратегия обслуживания очереди, разработанная каждой исследовательской группой учеников.
Задача 1. Модель обслуживания в очереди (без штрафа).
Имеется некоторая очередь из n участников. Время Тi обслуживания i -го участника генерируется датчиком случайных чисел ( Тi ≥ 1, целое число).
Цель моделирования:
-
а) определение времени обслуживания каждого клиента ( Ti );
-
б) определение времени ожидания обслуживания каждым клиентом ( Wi ).
Результатом яв ляется с ледующая таблица:
Номер |
1 |
2 |
3 |
4 |
5 … |
Ti |
|||||
Wi |
Задача 2. Модель обслуживания клиентов в очереди (со штрафом).
За основу берется Задача 1. Вводится дополнение: за каждую единицу времени ожидания в очереди начисляется штраф в размере Р (целое число).
Цель моделирования:
-
а) определение штрафа за время ожидания обслуживания каждого клиента ( STi );
-
б) определение общей суммы штрафа.
Результатом является следующая таблица:
Номер |
1 |
2 |
3 |
4 |
5 … |
Ti |
|||||
Wi |
|||||
Штраф |
Общая сумма штрафа = …
Для решения первых двух задач создается следующая программа (листинги приведены на алгоритмическом языке программирования Паскаль). В массиве N хранится порядковый номер каждого клиента в очереди.
program ochered_straf;
uses crt;
const n=5; p=10;
type mass=array [1..n] of integer;
var ni,t,w,st : mass; i,k,s,straf : integer;
procedure vivod(x:mass); begin for i:=1 to n do write(x[i]:4); writeln end;
Begin clrscr; randomize; writeln('Начальное расположение очереди');
{Заполнение массива Ni} write('Номер '); for i:=1 to n do ni[i]:=i; vivod(ni);
-
{ Заполнение массива Ti} write('Ti '); for i:=1 to n do
t[i]:=trunc(10*random)+1; vivod(t);
{ Заполнение массива Wi} write('Wi '); w[1]:=0; for i:=2 to n do
w[i]:=w[i-1]+t[i-1]; vivod(w);
{Определение штрафов} write('Штраф');
straf:=0; for i:=1 to n do begin st[i]:=p*(w[i]); straf:=straf+st[i]; end;
vivod(st); writeln('Общая сумма штрафа = ',straf);
readln;
END.
Задача 3. Модель обслуживания клиентов в очереди (со штрафом) с упорядочением.
За основу берется Задача 2 .
Цель моделирования: определить, поможет ли уменьшить сумму штрафа изменение расположения клиентов в очереди:
-
а) по убыванию времени обслуживания ( Ti );
-
б) по возрастанию времени обслуживания ( Ti ).
Результатом являются две таблицы ( Задача 2 ): до сортировки и после.
program ochered_straf;
uses crt;
const n=5; p=10;
type mass=array [1..n] of integer;
var ni,t,w,st : mass; i,k,s,straf : integer;
procedure vivod(x:mass); begin for i:=1 to n do write(x[i]:4); writeln end;
Begin clrscr; randomize;
writeln('Начальное расположение очереди');
{Заполнение массива Ni} write('Номер'); for i:=1 to n do ni[i]:=i; vivod(ni);
{ Заполнение массива Ti} write('Ti '); for i:=1 to n do
t[i]:=trunc(10*random)+1; vivod(t);
{ Заполнение массива Wi}write('Wi '); w[1]:=0; for i:=2 to n do
w[i]:=w[i-1]+t[i-1]; vivod(w);
{Определение штрафов} write('Штраф');
straf:=0; for i:=1 to n do begin st[i]:=p*(w[i]); straf:=straf+st[i]; end;
vivod(st); writeln('Общая сумма штрафа = ',straf);
{Сортировка по времени обслуживания} writeln('Конечное расположение очереди');
for k:=1 to n-1 do for i:=k to n do
{В условии задается направление сортировки – по возрастанию или по убыванию} if t[k]>=t[i] then begin
s:=t[k]; t[k]:=t[i]; t[i]:=s; s:=ni[k]; ni[k]:=ni[i]; ni[i]:=s; end;
{Заполнение массива Wi}
w[1]:=0; for i:=2 to n do w[i]:=w[i-1]+t[i-1];
write('Номер '); vivod(ni); write('Ti '); vivod(t); write('Wi ');
vivod(w);
{Определение суммы штрафов после сортировки} write('Штраф');
st[1]:=0; straf:=0;
for i:=2 to n do begin st[i]:=p*w[i]; straf:=straf+st[i];
end;
vivod(st); writeln('Общая сумма штрафа = ',straf);
readln;
END.
Приведенная выше задача может быть решена с использованием как инструментальных (алгоритмические языки программирования), так и прикладных программных средств (табличные процессоры). При её решении ученикам не понадобится знание мощных вычислительных методов. Задачи, подобные представленным, позволяют: организовать самостоятельную исследовательскую деятельность учеников; продемонстрировать межпредметный характер информатики; использовать компьютер в качестве инструмента будущей профессиональной деятельности; развивать логическое мышление школьников; привлечь знания и умения учеников для работы с компьютерными программными продуктами.
"Экономика и социум" №2(15) 2015