УДК 378.016
МЕТОДОЛОГИЯ РЕАЛИЗАЦИИ МЕЖДИСЦИПЛИНАРНОЙ ИНТЕГРАЦИИ В ТЕХНИЧЕСКОМ ВУЗЕ НА БАЗЕ КУРСА
ПРОГРАММИРОВАНИЯ Тюльпинова Нина Владимировна, к.т.н., доцент (e-mail: ninatulpinova@mail.ru) Брянский государственный технический университет, г.Брянск, Россия
Предложена методология реализации междисциплинарной интеграции в техническом вузе на базе курса программирования. Представлен пример структуры и содержания соответствующего лабораторно-практического занятия с иллюстрацией каждого из его этапов. Приведен программный код и пользовательский интерфейс приложения, разрабатываемого обучающимися по итогам междисциплинарного занятия.
Ключевые слова: программирование, лабораторно-практическое занятие, межпредметная связь, высшее образование.
Введение
Эффективным средством повышения качества образования в техническом вузе является междисциплинарная интеграция, основанная на создании у обучающихся единого системного представления о различных аспектах профессионального знания. Причем межпредметные связи должны реализовываться как в аспекте содержания обучения, так и в аспекте учебной деятельности, поскольку только «межпредметность» способна в полной мере реализовать системность и фундаментальность образования.
Межпредметные связи играют важную роль в осуществлении принципов доступности и прочности знаний. Трудные и сложные вопросы нередко становятся легкими и доступными, если на помощь обучающимся приходят сведения из других учебных дисциплин, ведь, как известно, прочностью обладают лишь те знания, которые включены в систему и активно применяются при усвоении новых вопросов.
В современных условиях необходимости скорейшего достижения технологического суверенитета нашей страны ядром и центральным связующим звеном при реализации междисциплинарных связей в техническом вузе может и должен стать курс программирования, так как именно в нём на основе деятельностного подхода можно объединить изучение информационных аспектов других учебных дисциплин. А, учитывая, что сегодня существует объективная потребность в инженерах, способных на основе IT-технологий проектировать наукоёмкие и инновационные технологии, смысловым содержанием курса программирования должна стать разработка прикладных программ для научных исследований. В этой связи целью настоящей работы является разработка структуры и содержания лаборатор-но-практического занятия, реализующего межпредметные связи в курсе
программирования и направленного на формирование научно-исследовательской компетентности обучающихся.
Методика исследований
Исследовательскую базу настоящей работы составляет изучение и анализ современной системы образования; анализ образовательных стандартов, учебных планов, программ и учебных пособий по программированию; экспериментальное преподавание; наблюдение за ходом учебного процесса и деятельностью студентов.
Обзор литературных источников [1-3] показывает, что содержание подавляющего большинства учебников по программированию практически не включает описание процесса разработки конкретных прикладных инженерных и научных программ, в то время как ФГОС ВО по многим инженерным направлениям содержит такую общепрофессиональную компетенцию выпускника как «способен разрабатывать алгоритмы и компьютерные программы, пригодные для практического применения». Как правило, в учебниках по программированию описывается решение абстрактных программистских задач без привязки к реальной инженерной и научной деятельности, и это несмотря на то, что цифровизация научных исследований сегодня уже стала объективной повседневной реальностью профессиональной деятельности инженера.
Одной из основ программирования являются массивы (матрицы), а одной из основ научных исследований является планирование эксперимента. Матричный подход в теории планирования эксперимента является тем связующим звеном, на базе которого можно реализовать междисциплинарную интеграцию в курсе программирования. Ниже приведен пример структуры и содержания лабораторно-практического занятия по программированию на тему: «Разработка генератора планов экспериментов». Для удобства программирования предлагается двухуровневый полный факторный эксперимент (ПФЭ), а пользовательское задание числа факторов ограничивается количеством 10. В процессе разработки такого генератора реализуется междисциплинарная связь между математикой, комбинаторикой, теорией вероятностей, теорией алгоритмов, теорией планирования эксперимента, теорией научных исследований и, конечно же, программированием.
Результаты и их обсуждение
Ниже представлена методология реализации межпредметных связей в курсе программирования на примере разработки обучающимися генератора планов экспериментов, включающая 4 этапа.
Матрица плана двухуровневого ПФЭ состоит из трёх блоков: блок 1 -нулевой столбец, блок 2 - столбцы линейных эффектов, блок 3 - столбцы эффектов взаимодействия. С точки зрения программирования, наиболее сложным и трудоёмким является формирование блока 3, поэтому особое внимание следует уделить подготовительной работе с обучающимися для последующей генерации этого блока - ей посвящён этап №2.
Этап №1. Изучение обучающимися методов и приёмов решения типовых задач обработки массивов: детальное иллюстрированное описание соответствующих алгоритмов и программ приведено в [4, 5].
Этап №2. Перебор обучающимися всех возможных неповторяющихся комбинаций уровней факторов и реализация комбинаторного алгоритма в виде консоль-приложения, например, в IDE Free Pascal. Иллюстрация перебора и поиска комбинаций из 5 факторов представлена деревом решения на рис. 1, где сплошные однонаправленные стрелки отвечают за добавление узла, а штрихпунктирные - за пропуск узла. Также на рис. 1 приведены образующиеся подмножества - сочетания из 5 чисел по 1, по 2, по 3, по 4 и по 5. Пример программного кода на языке программирования Паскаль представлен на рис. 2: здесь вводу числа факторов ПФЭ посвящены строки 13-14, перебору комбинаций - строки 16-44, а верхние и нижние границы подмножеств объявлены в строке 4. Результат выводится в файл, содержимое которого также представлено на рис. 2.
Рис. 1. Пример дерева и подмножества решений для случая 5 факторов
1 2
3
4
5
6
3 9 10 11 12
13
14
15
16
17
18
19
20 21 22 23 21
25
26 27 23
29
30
31
32
33
34
35
36
37 33
39
40
41
42
43
44
45
46
47 43
49
50
51
program comb; var
K,min,raax:array[l, Л1| of integer; n r i,j,к:integer;
f:text;
begin
assign(f,'comb.txt1}; rewrite(f);
write(hn='); readln(n);
for к : =1 to n do
begin
for j:-1 to к do begin
max[j]:=n-j+1; min[j]:j+1; x[ji! : =min[ j] end;
while i<=k do begin
for j:-k downto 1 do
write(f,x[j]:3); writeln(f);
i: -1;
while (i<=k) end (x[i] =max[i]) do i:=i+l; if i<=k then
x{i]: =x [ i J + 1; for j;=±-l downto 1 do begin
min[j]:= x[ j+l]+l; jt[j] : =rairi[ j] ; end;
end;
end; close (f)
write(1 Расчёт завершён'') ;
readln; end.
Рис. 2. Программный код перебора и его результат для случая 5 факторов
Этап №3. Генерация обучающимися плана двухуровневого ПФЭ в виде консоль-приложения, например, в IDE Free Pascal. Пример программного кода на языке программирования Паскаль представлен на рис. 3: здесь вводу числа факторов ПФЭ посвящены строки 14-16, определению числа опытов - строки 50-52, генерации массива комбинаций для эффектов взаимодействий - строки 18-48 (копируются из этапа №2), а матрица плана ПФЭ и массив комбинаций объявлены в строках 6 и 8 соответственно. Блок 1 матрицы плана ПФЭ (все элементы которого равны 1) формируется в строках 54-55 программного кода, блок 2 (все элементы которого определяются на основе правила чередования знаков) - в строках 57-67 программного кода, блок 3 (все элементы которого определяются на основе правила перемножения столбцов матрицы плана ПФЭ согласно массиву комбинаций для эффектов взаимодействий) - в строках 69-81 программного кода. Сгенерированная матрица плана ПФЭ выводится в файл (строки программного кода - 83-91).
program generator;
i,j,k,n,m,ii,jj,pp:integer; token,marker:integer; p:array[1..1024,0..1023] of integer; x,min,max;array[1..11] of integer; comb.array[1..1013,1..10] of integer; f:text;
begin
writeln('n<=10'); write(1n='); readln(n);
ii:=1;
for k:=2 to n do begin
for j:=l to k do begin
max[j]:=n-j+1; min [ j] :=k-j+1; x[j]:=min[j] end;
while i<=k do begin jj:=0;
for j:=k downto 1 do begin
jj:=jj+l;
comb[ii,jj]:=x[j]; end; ii:=ii+l; i: =1;
while (i<=k) and (x[i] =max[i]) do i:=i+l; if i<—k then
x[i] :=x[i]+l; for j:=i-l downto 1 do begin
min[j]:= x[j+1]+1; x[j]:=min[j] end ;
end;
end ;
49
50
51
52
53
54
55
56
57
58
59
60 61 62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 81 82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
m:»l i
for i:«l to n do id ;=m*2;
for 1 to ш do p[i,0]
token:=1; marker:"1; for j : to r: do begin
for i:=l to ш do begin
p[i,j]:^token' if i mod marker = 0 then token:=token*(-1) ;
end ;
marker:-marker*2; end;
ii:=l;
for j J=n+l to m-1 do begin
fox 1 ;■=! to m do begin
for : -1 to n do
if comb [ii, j j ] <>0 then pp:=pp*p[i,comb[ii,jj]], p[i,j]:=pp; end; ii:=ii+l; and;
assign(f„ 'plan.txth) ; rewrite(f); for i;=1 to m do begin
for j:=0 to m-1 do
write(f,p[i,j]:3); writeln(f); end; close(fJi
write(1 Расчёт завершён!');
readlnI end.
Рис. 3. Программный код генератора плана двухуровневого ПФЭ
Рис. 4. Интерфейс пользователя генератора плана двухуровневого ПФЭ
Этап №4. Если консоль-приложение этапа №3 работает верно, то его программный код может быть использован обучающимися для разработки итогового варианта генератора с цветовой индикацией каждого из трех блоков матрицы плана ПФЭ (рис. 4) в среде визуального программирования (например, в IDE Lazarus).
Заключение
Конструирование лабораторно-практических занятий по программированию в техническом вузе по предложенной методологии и её трансляция на другие типы научных и (или) прикладных задач позволяет эффективно организовать межпредметные связи и способствует формированию у обучающихся научно-исследовательской компетентности.
Список литературы
1. Алексеев, Е.Р. Free Pascal и Lazarus: учебник по программированию / Е.Р. Алексеев, О.В. Чеснокова, Т.В. Кучер. - Саратов: Профобразование, 2019. - 438 с.
2. Андреева, Т.А. Программирование на языке Pascal: учебное пособие / Т.А. Андреева. - Москва: Интернет-Университет Информационных Технологий (ИНТУИТ), Ай Пи Ар Медиа, 2020. - 277 c.
3. Павловская, Т. А. Программирование на языке высокого уровня Паскаль: учебное пособие / Т.А. Павловская. - Москва: Интернет-Университет Информационных Технологий (ИНТУИТ), Ай Пи Ар Медиа, 2021. - 153 с.
4. Тюльпинова, Н.В. Алгоритмизация и программирование: учебное пособие / Н.В. Тюльпинова. - Саратов: Вузовское образование, 2019. - 200 c.
5. Тюльпинова, Н.В. Технология алгоритмизации и программирования на языке Pascal: учебное пособие / Н.В. Тюльпинова. - Саратов: Вузовское образование, 2019. -244 c.
Tyulpinova Nina Vladimirovna, Cand.Tech.Sci., associate professor Bryansk State Technical University, Bryansk, Russia (e-mail: ninatulpinova@mail.ru)
THE METHODOLOGY OF IMPLEMENTATION OF INTERDISCIPLINARY INTEGRATION IN A TECHNICAL UNIVERSITY BASED ON PROGRAMMING COURSE
Abstract. The methodology for implementing interdisciplinary integration in a technical university based on a programming course is proposed. The example of the structure and content of the corresponding laboratory-practical lesson with an illustration of each of its stages is presented. The program code and user interface of the application developed by students following the results of an interdisciplinary lesson are presented.
Keywords: programming, laboratory and practical training, interdisciplinary communication, high education.