994
Школьное образование по информатике и информационным технологиям
И.С. Драпеза
УДК 004
DOI: 10.25559/SITITO.14.201804.994-999
МЕТОДИЧЕСКАЯ РАЗРАБОТКА ПО ИЗУЧЕНИЮ АЛГОРИТМОВ ОБРАБОТКИ МАССИВОВ С ПОМОЩЬЮ СОВРЕМЕННЫХ СРЕДСТВ ЯЗЫКА ПРОГРАММИРОВАНИЯ
И.С. Драпеза
Оренбургский государственный педагогический университет, г. Оренбург, Россия
METHODICAL DEVELOPMENT FOR THE STUDY OF ARRAY PROCESSING ALGORITHMS USING MODERN PROGRAMMING LANGUAGE TOOLS
Irina S. Drapeza
Orenburg State Pedagogical University, Orenburg, Russia
> Драпеза И.С., 20181
Ключевые слова
Информатика; программирование; методическая разработка; методика использования современных средств языка программирования.
Аннотация
Задачей автора была разработка методического обеспечения для изучения алгоритмов обработки массивов современными средствами языка программирования на уроке информатики. Автором были поставлены цели и задачи урока, указаны технические и программные средства необходимые для полноценного проведения занятия. Разработана технологическая карта урока, как современная форма планирования педагогического взаимодействия учителя и учеников. Такая форма представления плана занятия позволяет легко отслеживать полноценное выполнение каждого этапа урока, и вовремя использовать необходимые ресурсы. Подобраны задачи для изучения темы, а также для закрепления материала. Автором была подобрана литература, для углубленного изучения темы, вся литература представлена в списке использованных источников. Помимо этого создана сопроводительная презентация урока, она одержит все основные опорные моменты необходимые для изучения материала и усвоения знаний. Слайды включают рассмотрение способов: описания, вывода, заполнения массива известными и случайными числами, поиск в массиве определенного элемента или его индекса, поиск максимального и минимального элемента, выбор из массива элементов удовлетворяющих определенному условию. Изучение нового материала строится на сравнение с уже известными способами программирования, это позволяет наглядно убедиться в преимуществах современного способа программирования. Таким образом, с использованием актуальных алгоритмов обработки массивов было создано методическое обеспечение урока направленное на повышение уровня образования в профильных классах. Методическая разработка была применена на практике, результативность была проверена на следующем уроке, 95% детей самостоятельно решили поставленные перед ними задачи с помощью изученных алгоритмов.
Keywords
Abstract
Computer science; informatics; programming; methodical development; method of using modern means of programming.
The author's task was to develop methodological support for studying algorithms for processing arrays by modern means of the programming language in the Informatics lesson. The author set goals and objectives of the lesson, indicated the technical and software tools necessary for the lesson. The technological map of the lesson, as a modern form of planning of pedagogical interaction of teachers and students. This lesson plan allows you to easily track the implementation of each stage, and in time to use the necessary resources. We created tasks for studying the topic and fixing the material. The author has found literature, for in-depth study of the topic, all information is presented in the list of sources used. The author made a presentation for the lesson, which contains all the information for the study of new material. The slides contain information: descriptions, output, filling the array with known and random numbers, searching an array for a particular element or its index, searching for the maximum and minimum element, and selecting from the array of elements by condition. As a result, the author created methodological support for the lesson aimed at raising the level of education in the profile classes, 95% of children successfully coped with independent tasks.
|об авторе:|
Драпеза Ирина Сергеевна, магистр, физико-математический факультет, Оренбургский государственный педагогический университет [460014, Россия, г. Оренбург, ул. Советская, д. 19), ORCID: http://orcid.org/0000-0002-7597-6492, [email protected]
Современные информационные технологии и ИТ-образование
Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru
- „ School education
rina S. Drapeza
in computer science and ICT
Введение
Кто всерьез занимается программированием, знают, что оно стремительно развивается и что стиль его изучения в средне и общеобразовательных учреждениях необходимо менять. Исследования книг по информатике для старших классов с углубленным изучением предмета показали, что последнее переиздание с исправлениями ошибок осуществлялось в 2015года, но сами книги выпущены еще в 2013году и содержание их не изменилось. К тому же каждый год выходят обновления в средах программирования, но школьная программа не подвергается значительным изменениям. Например, в среде программирования PascalABC.Net, который изучается как базовый в большинстве школ России, с 2015 года выпущено немало важных обновлений [1]. Одними из последних являются: использование технологии LINQ, дополнительные встроенные функции и лямбда-выражения [2-7].
В большинстве учебных заведениях с углубленным изучением информатики нагрузка предполагает наличие элективных занятий по предмету, в рамках которых мы предлагаем изучить технологии LINQ. Такой подход позволит лучше подготовить учеников к обучению в профильных ВУЗах.
Цель исследования разработать методическое обеспечение для проведения урока информатики в старшей школе с использованием современных средств среды программирования PascalABC.Net [8-10].
Работа имеет практическую значимость, поскольку в ней опробована на практике разработанная методика. Методика, позволяющая начать изучение современных способов программирования, максимально доступно для учеников старшей школы и не нарушающая процесс подготовки к итоговым экзаменам. Урок информатики по теме «Алгоритмы обработки массивов современными средствами ЯП». Класс: 10.
Ход урока
Таблица 1. Технологическая карта урока Table 1. Technological map of the lesson
Тип урока: комбинированный, изучение нового материала.
Цель урока: формирование умений обрабатывать массивы.
Планируемые результаты урока
Личностные
• развитие устойчивости внимания, умения наблюдать, сравнивать, анализировать, делать выводы.
Метапредметные
• развитие умений самостоятельно ставить и формулировать цели урока, планировать свою деятельность;
• умение самостоятельно оценивать правильность выполнения действий и вносить необходимые коррективы в исполнение, владеть основами самоконтроля и самооценки;
• формирование навыков работы в группе, коллективе, умений соотносить и координировать свои действия с действиями других людей, проводить рефлексию и обсуждение.
Предметные
• умение разрабатывать программы по обработке всех элементов массива, нахождение определенного элемента в массиве, нахождение максимального или минимального элемента массива;
• развитие умений применять полученные навыки для решения задач практического характера или задач из смежных дисциплин.
Технические средства обучения
• ПК учителя и учащихся;
• мультимедийный проектор;
Программные средства
• операционная система Windows;
• система программирования PascalABC.NET.
Методическое обеспечение занятия:
• приложение 1. Компьютерный практикум. Задания;
• презентация «Алгоритмы обработки массива».
Этапы урока Деятельность учителя Деятельность учеников Используемые ресурсы
Организационный момент Приветствие Готовность к уроку (тетрадь, учебник на парте, ручка)
Проверка домашнего задания 1. Что такое массив? 2. Зачем нужны массивы? 3. Какие способы объявления, заполнения и вывода массива вы уже знаете? 4. Задача. Заполните массив из 10 элементов случайными числами в диапазоне 0..100 и подсчитайте количество четных элементов массива. 5. Как вы считаете, существуют ли средства ЯП позволяющие уменьшить код задачи? 1. Массив - это группа переменных одного типа, расположенных в памяти рядом (в соседних ячейках) и имеющих общее имя. Каждая ячейка в массиве имеет уникальный номер. 2. Для хранения и обработки большого количества данных. 3. Объявление A: array[«нач. индекс» .. «кон. индекс»] of integer; Заполнение с клавиатуры for i:=1 to N do read ( A[i] ) или случайным образом Слайд 1
Актуализация знаний Комментирует слайд, актуализация знаний. Приводит примеры применения масси- Определяют тему урока и ставят задачи урока/' Слайд 2
Изучение нового материала Изучение нового материала, организация работы в тетрадях, актуализирует опорные знания, помогает ученикам запомнить материал и сделать выводы. Слушают, изучают, познают, наблюдают, сравнивают, обсуждают. Изучают страницы учебника 170-173 [11].Сами пытаются решить поставленные задачи (программы могут записать на доске), работают в тетрадях, задают вопросы. Слайд 3-4 Возможно оформление решения задач на доске Работа с учебником стр. 170-173[11]. Слайд 5-8.
Первичное закрепление материала, корректировка Организует первичное закрепление материала. Организует работу по парам. После самостоятельной работы организует проверку работы (фронтальный опрос). Проводит корректировку усвоения. Работа в парах. Самопроверка, при обсуждении ответов. Объяснение решения. Слайд 9 Работа на доске
Компьютерный практикум, применение полученных новых знаний Выдает задания для компьютерного практикума. Следит за записями на доске, подстраивается под коллективную работу учеников, организует проверку и самопроверку. Организует работу с учениками, раньше всех справившимися с заданиями, одарёнными детьми (доп. задачи из учебника 3,4 стр.177). Коллективная работа. Индивидуальная работа за ПК Самопроверка и корректировка собственных действий. Приложение 1 (Слайд 10). Коллективная работа на доске. Индивидуальная работа на ПК.
Подведение итогов Домашнее задание Подводит вместе с учениками итоги урока. Отмечает активных помощников. Домашнее задание: §63, задача5 Подведение итогов урока. Самооценка.
Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru
Modern Information Technologies and IT-Education
996
Школьное образование по информатике
И.С. Драпеза
и информационным технологиям
В содержание сопроводительной презентации урока, входят вопросы для повторения, которые были представлены на этапе урока «Проверка домашнего задания» и разбор задачи. Решение задач при повторении домашнего материала позволяет закрепить знания учеников и лучше усвоить структуру написания программ. Важно! Для полноценной совместной и самостоятельной работы в среде программирования PascalABC.Net, ребята должны уметь пользоваться справкой.
Дрвтеща К С 201В гв
ОБЪЯВЛЕНИЕ И ВЫВОД МАССИВА
const N = Б;
var A: array[l. .N] of integer;
i: integer; Begin
for i:=l to N do begin write([A[!, i, ']='); read ( A[i] ) end;
writeln('Массив A:'); for i:=l to N do
write(A[i]:4); // вывод на экран
End.
Begin
var A: = Arr(1, 5,7,2,4) ;
write(A); // [1,5,7,2,4] A^JPrintln; // 1 5 7 2 4 End.
Изучение новой темы начинаем со сравнения конструкций объявления, ввода и заполнение массива с помощью циклов и встроенных методов [12-14]. Это позволяет наглядно увидеть преимущества современных средств языка. Для более привычного представления описания массива заводим переменную и в дальнейшем работаем с ней, так ребятам легче ориентироваться. Возможен и другой синтаксис вывода массива, например Агг(1,3,4,5).РпП:, о нем можно просто проговорить.
ЗАПОЛНЕНИЕ СЛУЧАЙНЫМИ ЧИСЛАМИ
const N = 5;
var A: array[1..N] of integer;
i: integer; Begin
for i:=l to N do begin A[i]:= random(81); write{A[i], } end;
End.
Заполнение случайными числами Begin
var A:= ArrRandom.(b, c, d) ; A.Println; End.
//Ь-количестБО элементов в массиве. с,d-диапазон случайных чисел,по умолчанию от 0-100
Рис. 1. Слайд 3; 4
Fig. 1. Slide 3. Announcement and array output; Slide 4. Filling with random numbers
Базовыми задачами при работе с массивами являются задачи на нахождение одного или несколько элементов удовлетворяющих условию, а так же нахождение их индексов. Поэтому на первом занятии по алгоритмам обработки массивов рассматриваются именно они.
Так как задачи ЕГЭ по информатике номер №19 предполагают использование умений циклической обработки массивов,
ПОИСК В МАССИВЕ
Задача. Требуется найти в массиве индекс первого элемента равного X const N = 5;
var A: array [1. _N] of integer i, nX,x: integer;
Begin
for i:=l to N do read{A[i] , Read {x); nX: = 0 ;
for i:=l to N do
if A[i] =X then begin
nX:;
л. ;
breaks-
end; if nX > 0 then
write{1A[1,i, else write{ ' -11) ;
End.
var x: integers-Begin
var A:= ArrRandom.(10} ; A.Println; 1>; Read <x);
A.IndexOf(x).Print; end
//IndexOf() Метод возвращает индекс первого вхождения элемента или -1 если элемент не найден
]= ,х)
из этого вытекает необходимость рассматривать оба способа решения задач [15-17].
Обращаем внимание учеников на то что, методы удобны не только в написании, но и в прочтение кода, например А.Мех-0^х).Рпп:1п позволяет взять массив А найти в нем индекс элемента конкретного значения и вывести на экран.
Дрвпеза И.С. 2018 гс
МАКСИМАЛЬНЫМ И МИНИМАЛЬНЫЙ ЭЛЕМЕНТ
Задача. Требуется найти в массиве максимальный и минимальный элемент.
Н:=А[1], for i: = 2 to Ы do if A [i] >H then H: = A[i]; write CM) ;
M: = A[1] ; for i: = 2 to H do if A[i] >M then M: = A[i] ; write{M} ;
А .Мак . Println ; //вывод мах
элемента
A.Hin.Println; //вывод Min элемента
Рис. 2. Слайд 5; 6
Fig. 2. Slide 5. Search in Array; Slide 6. Maximum element and minimum element
Алгоритм выбора элемента предполагает использование функций или лямбда выражений. Удобнее для сокращения кода и упрощения его прочтения использовать лямбда [18-21]. Чтобы детям было понятно, как используются лямбда в алгоритмах обработки массивов, предлагаем следующее объяснение: до
лямбда оператора [->) необходимо указать элемент к которому обращаемся, а после по какому условию это элемент будет выбран [22-25]. Чем проще мы объясним это детям, тем легче они будут к этому относиться в дальнейшем.
Современные информационные технологии и ИТ-образование
Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru
- ^ School education
rina S. Drapeza
in computer science and ICT
ДрапезаИ.С.2018 год
ВЫБОР ЭЛЕМЕНТОВ
Задача. Ввести элементы, которые больше трех, begin
var А :=Агг(1,2, 8, 3, 5, 6); A.Where(x -> х > 3 )Println; //8 5 6 end
Where(> Выполняет отбор элементов на основе заданного условия.
ДрапезаИ.С.2(И8 год
НЕСКОЛЬКО ИНДЕКСОВ
Задача. Требуется найти в массиве все индексы данного элемента, begin
¥агА:=Агг(1,2,4, 8,2, 3, 2,5); A.lndexesOf(x -> х = 2).Print; //1 4 6 end
Вывод всех индексов элементов равных двум.
Лямбда-выражения предоставляют специальный синтаксис для определения функциональных объектов.
Они применяются для объявления локальных функций по месту их использования и позволяют объявлять функции в любом месте кода. При создании Л-выражений нужно указать входные параметры, если они есть, после Л-оператора (что берем -> условие отбора)
Рис. 3. Слайд 7; 8 Fig. 3. Slide 7. Element selection; Slide 8. Several indices
Для закрепления изученного материала предлагаем решить задачу всем вместе с помощью циклов и с использованием изученных методов.
ДрапезаИ.С. 2018 год
ОБЩАЯ ЗАДАЧА
Задача.
В налоговой инспекции хранятся данные о долгах 100 граодан известно что сумма долга каждого гражданина не превышает 2000 рублей. Найдите и выведите номера всех грэхщан долг которых кратен 10.
Решение begin
var А = ArrRandom(100. 0,2000); А-РпггИп:
ÄjndesesOSx -> х mod 10 = 0) Print end
Результаты
Как уже было сказано ранее языки программирования развиваются с большой скоростью и вслед за ними должны развиваться и меняться методики преподавания. Ведь качество знаний, умений и навыков учащихся зависит как от актуальности материала преподаваемого в школе, так и от методики преподнесения информации. Я разработала методическое обеспечение урока, которое было опробовано на практике, знания полученные учениками были проверены и применялись на следующих уроках, 95% учеников от всего класса справились с самостоятельными задачами, тем самым действенность методики доказана.
Список использованных источников
Рис. 4. Слайд 9 Fig. 4. Slide 9. Common task На этапе компьютерного практикума ученикам предлагается решить три задачи различного уровня сложности. Решение необходимо представить в двух вариантах с помощью циклов и методов. Задачи подобраны таким образом, чтобы проверить и закрепить все разобранные на занятии алгоритмы обработки массивов.
КОМПЬЮТЕРНЫЙ ПРАКТИКУМ
Задачи решать двумя способами: 1. С помощью циклов. 2. С использованием методов!
Задача"!. В налоговой инспекции хранятся данные о долгах 100 гралщан известно что сумма долга каищого гражданина не превышает 2000 рублей Найдите и выведите номер первого грааданина долг которого равен 530. Задача2. В Больнице хранится информация о росте 200 граадан (средний рост от 130 до 230 см) Найдите и выведите номера всех граодан имеющих максимальный рост
ЗадачаЗ. Магазин обслужил за день 200 покупателей, каодый из которых потратил на покупки не более 1000 рублей Найдите максимальный чек сумма в котором кратна трем и чек с минимальной четной суммой
Рис. 5. Слайд 10 Fig. 5. Slide 10. Computer practicum
[1] PascalABC.NET. Современное программирование на языке Pascal [Электронный ресурс]. URL: http://pascalabc.net (дата обращения: 12.07.2018).
[2] Фримен A., Раттц-мл Д.С. LINQ: язык интегрированных запросов в C# 2010 для профессионалов. М.: «Вильямс», 2011. 656 с.
[3] Язык программирования PascalABC.NET 3.1 // PascalABC. NET [Электронный ресурс]. URL: http://pascalabc.net/ downloads/Presentations/PABC.NET_2015-2016.pdf (дата обращения: 12.07.2018).
[4] WagnerB. et al. Синтаксис LINQ // Microsoft [Электронный ресурс]. URL: https://docs.microsoft.com/ru-ru/dotnet/ csharp/linq/ (дата обращения: 12.07.2018).
[5] Gaudiot J.-L, DeBoni T., Feo J, Böhm W, Najjar W., Miller P. The Sisal Project: Real World Functional Programming / S. Pande, D.P. Agrawal (Eds.) // Compiler Optimizations for Scalable Parallel Systems. Lecture Notes in Computer Science. Vol. 1808. Springer, Berlin, Heidelberg, 2001. Pp. 45-72. DOI: 10.1007/3-540-45403-9_2
[6] Абрамян М.Э. Технология LINQ на примерах. Практикум с использованием электронного задачника Programming Taskbook for LINQ. М.: ДМК Пресс, 2014. 326 с. URL: https:// elibrary.ru/item.asp?id=24006824 (дата обращения: 12.07.2018).
[7] Kasyanov V.N., Kasyanova E.V. Cloud system of functional and
Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru
Modern Information Technologies and IT-Education
Школьное образование по информатике .... п
И.С. Драпеза
и информационным технологиям
parallel programming for computer science education / B. Zhang (Ed.) // Proceedings of 2015 2nd International Confer- [21] ence on Creative Education (ICCE 2015). Vol. 10. Advances in Education Sciences. London, UK, 2005. Pp. 270-275. URL: [22] https://elibrary.ru/item.asp?id=25390986 (дата обращения: 12.07.2018).
[8] PascalABC.NET. Простейшие новые возможности // Pas-calABC.NET [Электронный ресурс]. URL: http://pascalabc. [23] net/downloads/Presentations/Tutorials/Simple.pdf (дата обращения: 12.07.2018).
[9] Абрамян М.Э. Платформа.^Т: Основные типы стандартной библиотеки. Работа с массивами, строками, файлами. [24] Объекты, интерфейсы, обобщения. Технология LINQ. Ростов н/Д: Изд-во ЮФУ 2014. 218 с. URL: https://elibrary. ru/item.asp?id=23933869 (дата обращения: 12.07.2018).
[10] Абрамян М.Э., Михалкович С.С. Использование новых возможностей системы программирования PascalABC.NET [25] при изучении сложных структур данных в компьютерной школе мехмата ЮФУ // Современные информационные технологии: тенденции и перспективы развития. Ростов-на-Дону: ЮФУ 2016. С. 29-31. URL: https://elibrary. ru/item.asp?id=25960797 (дата обращения: 12.07.2018).
[11] Поляков К.Ю., Еремин Е.А. Информатика. Углублённый уровень: учебник для 10 класса: в 2 ч. М.: БИНОМ. Лаборатория знаний, 2013. URL: https://elibrary.ru/item.as-p?id=23532226; URL: https://elibrary.ru/item.as- References p?id=23532227 (дата обращения: 12.07.2018).
[12] Массивы // PascalABC.NET [Электронный ресурс]. URL: [1] http://pascalabc.net/downloads/Presentations/Tutorials/ ArraysAlgsVsMeths.pdf (дата обращения: 12.07.2018). [2]
[13] Бондарев И.В., Белякова Ю.В., Михалкович С.С. Система программирования PascalABC.NET - 10 лет развития // Современные информационные технологии: тенденции [3] и перспективы развития. Ростов-на-Дону: ЮФУ 2013. С. 69-71. URL: https://elibrary.ru/item.asp?id=29949057 (дата обращения: 12.07.2018). [4]
[14] Михалкович С.С. Курс «Основы программирования» на базе системы PascalABC.NET // Современные информационные технологии и ИТ-образование. 2009. № 5. С. 385- [5] 392.
[15] Демоверсии, спецификации, кодификаторы // Федеральный институт педагогических измерений [Электронный ресурс]. URL: http://www.fipi.ru/ege-i-gve-11/demoversii-specifikacii-kodifikatory (дата обращения: 12.07.2018).
[16] Обработка массивов и матриц // Решу ЕГЭ. Информатика [6] [Электронный ресурс]. URL: https://inf-ege.sdamgia.ru/ (дата обращения: 12.07.2018).
[17] Поляков К.Ю. B:19 - Обработка массивов [Электронный ресурс]. URL: http://kpolyakov.spb.ru/school/egetest/b19. htm (дата обращения: 12.07.2018). [7]
[18] Hughes J. Why Functional Programming Matters / D. Turner (Ed.) // Research Topics in Functional Programming. Addi-son-Wesley, 1990. Pp. 17-42.
[19] Боголюбская Ю.В., Стоякова К.Л., Ибраев Р.Р., Бесфамильная Е.М., Савина Ю.И., Канидьев Д.Ю. Основы функционального программирования // Естественные и технические науки. 2015. № 6(84). С. 389-391. URL: https:// [8] elibrary.ru/item.asp?id=23906817 (дата обращения: 12.07.2018).
[20] AlbahariJ, AlbahariB. LINQ Pocket Reference. O'Reilly Media, [9]
2008. 174 p.
Филд A., Харрисон П. Функциональное программирование. М.: Мир, 1993. 637 с.
PascalABC.NET процедуры, функции, лямбда выражения // PascalABC.NET [Электронный ресурс]. URL: http:// pascalabc.net/downloads/Presentations/Tutorials/ ProcFuncLambdas.pdf (дата обращения: 12.07.2018). PascalABC.NET последовательности // PascalABC.NET [Электронный ресурс]. URL: http://pascalabc.net/ downloads/Presentations/Tutorials/Sequences.pdf (дата обращения: 12.07.2018).
Абрамян М.Э., Михалкович С.С. Основы программирования на языке Паскаль. Скалярные типы данных, управляющие операторы, процедуры и функции, работа с графикой в системе PascalABC.NET. 4-е изд., перераб. и доп. Ростов н/Д: Изд-во «ЦВВР», 2008. 223 c. Долинер Л.И. Основы программирования в среде PascalABC.NET. Екатеринбург: Изд-во Урал. ун-та, 2014. 128 с. URL: http://elar.urfu.ru/bitstre
am/10995/28702/1/978-5-7996-1260-3_2014.pdf (дата обращения: 12.07.2018).
Поступила 12.07.2018; принята в печать 10.09.2018; опубликована онлайн 10.12.2018.
Programming systems PascalABC.NET. Available at: http:// pascalabc.net/en/ (accessed 12.07.2018). Freeman A., Rattz J.C. Pro LINQ: Language Integrated Query in C# 2010. Apress, 2010. 840 p. DOI: 10.1007/978-1-43022654-3
Programming language PascalABC.NET 3.1. Available at: http://pascalabc.net/downloads/Presentations/PABC. NET_2015-2016.pdf (accessed 12.07.2018). (In Russian) Wagner B. et al. Syntax LINQ. Available at: https://docs.mic-rosoft.com/ru-ru/dotnet/csharp/linq/ (accessed
12.07.2018). (In Russian)
Gaudiot J.-L., DeBoni T., Feo J., Böhm W., Najjar W., Miller P. The Sisal Project: Real World Functional Programming. S. Pande, D.P. Agrawal (Eds.) Compiler Optimizations for Scalable Parallel Systems. Lecture Notes in Computer Science. Vol. 1808. Springer, Berlin, Heidelberg, 2001, pp. 45-72. DOI: 10.1007/3-540-45403-9_2
Abramyan M.E. LINQ technology with examples. Practical work with the use of an electronic problem book Programming Taskbook for LINQ. M.: DML Press, 2014. 326 p. Available at: https://elibrary.ru/item.asp?id=24006824 (accessed 12.07.2018). (In Russian)
Kasyanov V.N., Kasyanova E.V. Cloud system of functional and parallel programming for computer science education. B. Zhang (Ed.) Proceedings of2015 2nd International Conference on Creative Education (ICCE2015). Vol. 10. Advances in Education Sciences. London, UK, 2005, pp. 270-275. Available at: https://elibrary.ru/item.asp?id=25390986 (accessed
12.07.2018).
PascalABC.NET the simplest new features. Available at: http://pascalabc.net/downloads/Presentations/Tutorials/ Simple.pdf (accessed 12.07.2018). (In Russian) Abramyan M.E. Platform.NET: Basic types of the standard
Современные информационные технологии и ИТ-образование
Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru
_ ^ School education
Irina S. Drapeza
in computer science and ICT
library. Working with arrays, strings, files. Objects, interfaces, generalizations. LINQ technology. Rostov-on-Don: SFedU, 2014. 218 p. Available at: https://elibrary.ru/item. asp?id=23933869 (accessed 12.07.2018). (In Russian)
[10] Abramyan M.E., Mikhalkovich S.S. Use of new features of the programming system PascalABC.NET in the study of complex data structures in the computer school of Mehmet SFedU. Modern information technology: trends and development prospects. 2016, pp. 29-31. Available at: https://elibrary.ru/ item.asp?id=25960797 (accessed 12.07.2018). (In Russian)
[11] Polyakov K.Yu., Eremin E.A. Computer Science. In-depth level: a textbook for grade 10. Moscow: BINOM. Knowledge lab, 2013. Available at: https://elibrary.ru/item. asp?id=23532226; Available at: https://elibrary.ru/item. asp?id=23532227 (accessed 12.07.2018). (In Russian)
[12] Arrays. PascalABC.NET. Available at: http://pascalabc.net/ downloads/Presentations/Tutorials/ArraysAlgsVsMeths.pdf (accessed 12.07.2018). (In Russian)
[13] Bondarev I.V., Belyakova Yu. V., Mikhalkovich S.S. The PascalABC.NET Programming System -10 years of development. Modern Information Technologies: Trends and Development Prospects. Rostov-on-Don: SFedU, 2013, pp. 6971. Available at: https://elibrary.ru/item.asp?id=29949057 (accessed 12.07.2018). (In Russian)
[14] Mikhalkovich S.S. Course "Fundamentals of programming" on the basis of the PascalABC.NET system. Modern Information Technologies and IT-Education. 2009; 5:385-392. (In Russian)
[15] Demos, specifications, codifiers. Federal Institute of Pedagogical Measurements. Available at: http://www.fipi.ru/ ege-i-gve-11/demoversii-specifikacii-kodifikatory (accessed 12.07.2018). (In Russian)
[16] Processing of arrays and matrices. EGE Informatics site. Available at: https://inf-ege.sdamgia.ru/ (accessed 12.07.2018). (In Russian)
[17] Polyakov K.Yu. B:19 - Array and matrix processing. Available at: http://kpolyakov.spb.ru/school/egetest/b19.htm (accessed 12.07.2018). (In Russian)
[18] Hughes J. Why Functional Programming Matters. D. Turner (Ed.) Research Topics in Functional Programming. Addison-Wesley, 1990, pp. 17-42.
[19] Bogolyubskaya Yu.V, Stoyakova K.L., Ibraev R.R., Besfamilnaya E.M., Savina Yu.I., Kanidiev D.Yu. Fundamentals of functional programming. Natural and technical sciences. 2015. 6(84):389-391. Available at: https://elibrary.ru/item. asp?id=23906817 (accessed 12.07.2018). (In Russian)
[20] Albahari J., Albahari B. LINQ Pocket Reference. O'Reilly Media, 2008. 174 p.
[21] Field A.J., Harrison P.G. Functional Programming. Addison-Wesley, 1988. 616 p.
[22] PascalABC.NET procedures, functions, lambda expressions. Available at: http://pascalabc.net/downloads/ Presentations/Tutorials/ProcFuncLambdas.pdf (accessed 12.07.2018). (In Russian)
[23] PascalABC.NET sequence. Available at: http://pascalabc.net/ downloads/Presentations/Tutorials/Sequences.pdf (accessed 12.07.2018). (In Russian)
[24] Abramyan M.E., Mikhalkovich S.S. Fundamentals of Pascal programming. Scalar data types, control operators, procedures and functions, work with graphics in the PascalABC.NET system. Rostov-on-Don: Publishing house of the "CVVP", 2008. 223 p. (In Russian)
[25] Doliner L.I. Fundamentals of programming in the environment of PascalABC.NET. Ekaterinburg: Ural Publishing, 2014. 128 p. Available at: http://elar.urfu.ru/bitstream/10995/28702 /1/978-5-7996-1260-3_2014.pdf (accessed 12.07.2018). (In Russian)
Submitted 12.07.2018; revised 10.09.2018; published online 10.12.2018.
About the author:
Irina S. Drapeza, magistr, Faculty of Physics and Mathematics, Orenburg State Pedagogical University (19 Sovetskaya Str., Orenburg 460014, Russia), ORCID: http://orcid.org/0000-0002-7597-6492, [email protected]
This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted reuse, distribution, and reproduction in any medium provided the original work is properly cited.
Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru
Modern Information Technologies and IT-Education