Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

533

.pdf
Скачиваний:
3
Добавлен:
08.01.2021
Размер:
208.77 Кб
Скачать

Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное

образовательное учреждение высшего образования

«Воронежский государственный лесотехнический университет имени Г.Ф. Морозова»

Использование алгоритмических языков программирования в

мехатронике и робототехнике

Методические указания для самостоятельной работы студентов по

направлению подготовки

15.03.06 Мехатроника и робототехника

Воронеж 2018

2

УДК 004.432

Использование алгоритмических языков программирования в мехатронике и робототехнике [Электронный ресурс] : методические указания для самостоятельной работы студентов по направлению подготовки 15.03.06 Мехатроника и робототехника / А. В. Стариков; М-во науки и высшего образования РФ, ФГБОУ ВО «ВГЛТУ». – Воронеж, 2018. – 10 с.

Печатается по решению редакционно-издательского совета ВГЛТУ

Рецензент: заведующий кафедрой электротехники и автоматики ФГБОУ ВО «Воронежский государственный аграрный университет имени императора Петра I», доктор технических наук, профессор Афоничев Д.Н.

3

Введение

Учебный план по направлению подготовки бакалавра 15.03.06 – «Мехатроника и робототехника» включает изучение дисциплины «Использование алгоритмических языков программирования в мехатронике и робототехнике» в течение 3-го семестра в объеме 216 часов, из которых 36 часов отводится для лекционных занятий, 36 часов для лабораторных работ, 72 часа для самостоятельной работы студентов, 36 часов на подготовку к прохождению итогового контроля (сдача экзамена). Кроме того, по данной дисциплине предусматривается выполнение и защита курсовой работы.

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

Для достижения данной цели в ходе изучения дисциплины решаются следующие задачи:

ознакомление со стандартными средствами разработки и записи алгоритмов на языке схем алгоритмов (блок-схем), возможностями и способами использования инструментальных средств системы программирования (интегрированной среды разработки);

изучение основных понятий, синтаксиса и семантики операций и операторов алгоритмического языка программирования высокого уровня Си, принципов структурного и модульного программирования;

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

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

приобретение навыков программирования на языке Си, работы с инструментальными средствами системы программирования (интегриро-

ванной среды разработки).

В результате освоения дисциплины «Использование алгоритмических языков программирования в мехатронике и робототехнике» студент должен:

знать: основные блоки языка схем алгоритмов (блок-схем) и способы их использования, синтаксис и семантику операторов языка программирования Си, структуру программы на языке Си, функциональные возможности инструментальных средств системы программирования (интегрированной среды разработки);

уметь: разрабатывать и представлять алгоритмы решения вычислительных (инженерных) задач на языке схем алгоритмов (блок-схем),

4

записывать разработанные алгоритмы на языке программирования высокого уровня (языке Си);

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

1 Содержание учебной дисциплины

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

Раздел 1. ОСНОВНЫЕ ПОНЯТИЯ АЛГОРИТМИЧЕСКИХ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

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

Раздел 2. ЭЛЕМЕНТЫ ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ СИ Основные понятия языка Си. Структура программы на языке Си. Про-

стые операции и операторы языка Си. Ввод-вывод в программах на языке Си. Раздел 3. ПРОГРАММИРОВАНИЕ БАЗОВЫХ АЛГОРИТМИЧЕСКИХ

СТРУКТУР НА ЯЗЫКЕ СИ Программирование линейных и разветвляющихся алгоритмов на языке

Си. Условные операторы языка Си. Выбор вариантов. Программирование циклических алгоритмов на языке Си. Операторы цикла языка программирования Си.

Раздел 4. ИСПОЛЬЗОВАНИЕ МАССИВОВ И СИМВОЛЬНЫХ СТРОК В ПРОГРАММАХ НА ЯЗЫКЕ СИ

Использование одномерных и многомерных массивов в программах на языке Си. Использование символьных строк в программах на языке Си.

Раздел 5. ИСПОЛЬЗОВАНИЕ СТРУКТУР ДАННЫХ И ФАЙЛОВ В ПРОГРАММАХ НА ЯЗЫКЕ СИ

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

Раздел 6. ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ В ПРОГРАММАХ НА ЯЗЫКЕ

СИ

Пользовательские функции в языке Си. Механизмы передачи параметров. Области видимости переменных. Библиотеки функций языка программирования Си. Стили программирования. Модульное программирование. Структурное программирование. Объектно-ориентированное программирование. Инструментальные средства систем программирования.

5

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

Помимо лекционных занятий, обязательным элементом изучения дисциплины «Программирование микроконтроллеров для мехатронных и робототехнических систем» является прохождение студентом лабораторного практикума. Согласно Положению о сдаче экзаменов и зачётов в ФГБОУ ВО ВГЛТУ им. Г.Ф. Морозова студент, не выполнивший лабораторный практикум, не допускается к сдаче экзамена или зачёта.

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

1.Базовые алгоритмические структуры: линейная, разветвляющаяся, циклическая. Комбинация базовых алгоритмических структур (4 часа).

2.Структура программы на языке Си. Простые операции и операторы языка Си. Ввод-вывод в программах на языке Си (4 часа).

3.Программирование линейных и разветвляющихся алгоритмов на языке Си. Условные операторы языка Си (4 часов).

4.Программирование циклических алгоритмов на языке Си. Операторы цикла языка программирования Си (4 часов).

5.Использование одномерных и многомерных массивов в программах на языке Си (4 часов).

6.Использование динамических структур в программах на языке Си (на примере однонаправленных и двунаправленных связных списков) (6 часов).

7.Работа с файлами в программах на языке Си (4 часа).

8.Пользовательские функции в языке программирования Си. Модульное

программирование. Структурное программирование (4 чача).

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

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

6

ных лабораторных работах и подготовки к их защите, третью для выполнения курсовой работы и подготовки к её защите.

2 Учебно-методическое обеспечение самостоятельной работы

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

Ниже приведен перечень основной и дополнительной литературы, имеющейся в учебной библиотеке ВГЛТУ, а также представленной в открытом доступе в электронных библиотечных системах (ЭБС): Знаниум, Единое окно доступа к образовательным ресурсам и других.

Основная литература

1. Кузин, А. В. Программирование на языке Си [Электронный ресурс] : учеб. пособие / А. В. Кузин, Е. В. Чумакова. М. : ФОРУМ : ИНФРА-М, 2015.

144 с. ЭБС «Знаниум».

2.Царев, Р. Ю. Программирование на языке Си [Электронный ресурс] :

учеб. пособие / Р. Ю. Царев. Красноярск : Сиб. федер. ун-т, 2014. 108 с. ЭБС «Знаниум».

Дополнительная литература

1. Логинов, В. И. Основы алгоритмизации [Электронный ресурс] : учеб.- метод. пособие для студ. оч. и заоч. обуч. технич. cпециальностей / В. И. Логинов, Л. Н. Шемагина. Н. Новгород : Изд-во ФГБОУ ВПО «ВГАВТ», 2010. 81 с. ЭБС «Единое окно доступа к образовательным ресурсам».

2. Немцова, Т. И. Программирование на языке высокого уровня. Программирование на языке С++ [Электронный ресурс] : учеб. пособие / Т. И. Немцова, С. Ю. Голова, А. И. Терентьев ; под ред. Л. Г. Гагариной. М. : ИД «ФОРУМ» : ИНФРА-М, 2018. 512 с. ЭБС «Знаниум».

3. Программирование на С++ с погружением: практические задания и примеры кода [Электронный ресурс] : практикум / Авт.-сост. Е. А. Воронцова ; М. : ИНФРА-М, 2016. 80 с. ЭБС «Знаниум».

4.Стариков, А. В. Использование алгоритмических языков программирования в мехатронике и робототехнике [Электронный ресурс] : методические указания для лабораторных работ по направлению подготовки бакалавра 15.03.06 – «Мехатроника и робототехника» для очной формы обучения / А.В. Стариков; М-во науки и высш. образования РФ, ФГБОУ ВО «ВГЛТУ». – Воро-

неж, 2016. – 32 с.

5.Стариков, А. В. Использование алгоритмических языков программирования в мехатронике и робототехнике [Электронный ресурс] : методические указания к выполнению курсовой работы по направлению подготовки бакалавра 15.03.06 – «Мехатроника и робототехника» для очной формы обучения / А.В.

7

Стариков; М-во науки и высш. образования РФ, ФГБОУ ВО «ВГЛТУ». – Воро-

неж, 2016. – 16 с.

6. Стариков, А. В. Использование алгоритмических языков программирования в мехатронике и робототехнике [Электронный ресурс] : методические указания для самостоятельной работы по направлению подготовки бакалавра 15.03.06 – «Мехатроника и робототехника» для очной формы обучения / А.В. Стариков; М-во науки и высш. образования РФ, ФГБОУ ВО «ВГЛТУ». – Воро-

неж, 2016. – 8 с.

Для качественного освоения дисциплины, возможно, потребуются следующие ресурсы информационно-телекоммуникационной сети «Интернет»:

ЭБС «Единое окно доступа к образовательным ресурсам»: http://window.edu.ru/;

ЭБС «Знаниум»: http://www.znanium.com;

сайт фирмы Atmel: http://www.atmel.com;

сайт с обширной подборкой научной, учебной и учебно-методической литературы, представленной в виде библиотеки открытых электронных источников.

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

 

 

Таблица 1

 

 

 

№ п/п

Тема самостоятельной работы

Номер источника

 

 

 

1

2

3

 

 

 

1

Язык схем алгоритмов. Алгоритмизация инже-

1 (доп.)

 

нерных задач.

 

2

Инструментальные средства систем програм-

1, 2 (осн.);

 

мирования.

3, 4 (доп.)

 

 

 

 

 

3

Директивы препроцессора языка Си.

1, 2 (осн.),

 

 

3, 4 (доп.)

 

 

 

4

Условные операторы языка Си.

1, 2 (осн.);

 

 

3, 4 (доп.)

 

 

 

5

Использование массивов в программах на язы-

1, 2 (осн.);

 

ке Си.

3, 4 (доп.)

 

 

 

 

 

6

Механизмы передачи параметров в функциях

1, 2 (осн.);

 

языка Си.

3, 4 (доп.)

 

 

 

 

 

7

Модульное и структурное программирование

1, 2 (осн.);

 

на языке Си.

3, 4 (доп.)

 

 

 

 

 

Проверка качества освоения разделов (тем) дисциплины осуществляется посредством текущего контроля успеваемости и промежуточной аттестации

8

студентов. Результаты текущего контроля отражаются в баллах модульнорейтинговой системы оценки знаний.

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

3.Вопросы выходного контроля (экзамена)

1.Понятие алгоритма. Исполнитель. Система команд исполнителя. Свойства алгоритмов. Компьютер как универсальный исполнитель.

2.Программирование как раздел информатики. Языки программирования. Обзор. Классификация.

3.Язык программирования Си. Общая характеристика языка: место в классификации языков, синтаксис и семантика языка, основные объекты языка, операторы, структура программы.

4.Понятие среды программирования. Компоненты среды. Компиляция и компоновка программы.

5.Синтаксические и логические ошибки. Тестирование и отладка про-

граммы.

6.Данные в языке Си: константы и переменные. Скалярные типы данных. Модификаторы типов.

7.Данные числовых типов в языке Си: объявление, характеристика, допустимые операции, приведение типов. Пример использования.

8.Операции языка Си. Приоритет операций. Оператор и операция присваивания в языке Си. Множественное присваивание. Выражения.

9.Функции форматного ввода и вывода. Параметры. Управляющая строка. Спецификаторы формата. Управляющие символы.

10.Алгоритмическая конструкция ветвления: полная и неполная форма, блок-схемы. Условная операция. Условный оператор в языке Си: структура оператора, полная и неполная формы, использование сложных условий. Пример на языке Си.

11.Алгоритмическая конструкция выбора: понятие, блок-схема. Оператор выбора в языке Си: структура оператора. Пример программы на Си.

12.Циклические алгоритмы: понятие, виды (перечислить). Алгоритмическая конструкция цикла с предусловием (понятие, использование, блок-схема). Оператор цикла for: структура оператора, пример использования.

13.Циклические алгоритмы: понятие, виды (перечислить). Алгоритмическая конструкция цикла с предусловием (понятие, использование, блок-схема). Оператор цикла с предусловием while в языке Си: структура оператора, допустимые и недопустимые условия, пример использования.

14.Циклические алгоритмы: понятие, виды (перечислить). Алгоритмическая конструкция цикла с постусловием (понятие, использование, блок-схема). Оператор цикла с постусловием в языке Си: структура оператора, допустимые

инедопустимые условия, пример использования.

9

15.Типовые циклические алгоритмы: максимум/минимум, сумма/произведение, количество.

16.Линейный массив: понятие массива, объявление, инициализация массива, индексация элементов. Формирование и вывод массива.

17.Типовые алгоритмы для работы с линейными массивами.

18.Задача сортировки массива. Алгоритм сортировки линейного массива методом «пузырька».

19.Двумерный массив. Объявление, инициализация двумерного массива, индексация элементов. Формирование и вывод двумерного массива.

20.Типовые алгоритмы для обработки двумерного массива (целиком).

21.Частичная обработка двумерного массива (по строкам или по столбцам). Типовые алгоритмы.

22.Указатели. Понятие указателя, объявление, инициализация. Операции, применимые к указателям. Указатель на указатель.

23.Использование указателей при работе с массивами и матрицами. Получение адресов и значений элементов. Последовательный перебор элементов. Примеры.

24.Функции в языке Си: понятие, объявление, прототипы функций. Вызов функции. Типы возвращаемых значений.

25.Функции в языке Си: параметры формальные и фактические, механизм передачи параметров. Передача параметров «по значению» и «по ссылке». Пример использования.

26.Локальные и глобальные переменные. Области действия и области видимости. Экранирование переменных.

27.Библиотечные функции. Заголовочные файлы. Подключение библиотек. Функции математической библиотеки.

28.Рекурсивное описание функций: база рекурсии, рекурсивный вызов, использование стека. Пример использования.

29.Динамическая память: выделение и освобождение памяти, размещение данных в динамической памяти. Выделение и освобождение памяти при работе с одиночными переменными и с массивами, изменение размера массива.

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

31.Массив символов и строка в языке Си. Ввод и вывод строк. Простейшие алгоритмы сканирования и обработки строки. Пример.

32.Строка в языке Си: библиотечные функции для обработки строк. Примеры использования.

10

Стариков Александр Вениаминович

Использование алгоритмических языков программирования в мехатронике и робототехнике

Методические указания для самостоятельной работы студентов

по направлению подготовки 15.03.06 Мехатроника и робототехника

Редактор С.Ю. Крохотина

Подписано в печать

Формат бумаги

Заказ

Объем

п.л.

Усл. п.л.

Уч-изд. л.

Тираж

 

ФГБОУ ВО «Воронежский государственный лесотехнический

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]