МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Основы программирования

рабочая программа дисциплины
Закреплена за кафедройКафедра информатики
Направление подготовки09.03.03. Прикладная информатика
ПрофильПрикладная информатика в дизайне
Форма обученияОчная
Общая трудоемкость3 ЗЕТ
Учебный план09_03_03_ПИвД-3-2019
Часов по учебному плану 108
в том числе:
аудиторные занятия 36
самостоятельная работа 72
Виды контроля по семестрам
зачеты: 2

Распределение часов по семестрам

Курс (семестр) 1 (2) Итого
Недель 23,5
Вид занятий УПРПДУПРПД
Лекции 18 18 18 18
Лабораторные 18 18 18 18
Сам. работа 72 72 72 72
Итого 108 108 108 108

Программу составил(и):
старший преподаватель, Смолякова Лариса Ленгардовна

Рецензент(ы):
к.ф.-м.н., доцент , Пономарев И.В.

Рабочая программа дисциплины
Основы программирования

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт высшего образования по направлению подготовки 09.03.03 Прикладная информатика (уровень бакалавриата) (приказ Минобрнауки России от 12.03.2015г. №207)

составлена на основании учебного плана:
09.03.03 Прикладная информатика
утвержденного учёным советом вуза от 25.06.2019 протокол № 9.

Рабочая программа одобрена на заседании кафедры
Кафедра информатики

Протокол от 22.06.2019 г. № 8
Срок действия программы: 2019-2023 уч. г.

Заведующий кафедрой
ВРИО к.ф.-м.н., доцент Жариков А.В.


Визирование РПД для исполнения в очередном учебном году

Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2019-2020 учебном году на заседании кафедры

Кафедра информатики

Протокол от 22.06.2019 г. № 8
Заведующий кафедрой ВРИО к.ф.-м.н., доцент Жариков А.В.


1. Цели освоения дисциплины

1.1.Целями освоения дисциплины являются:
- формирование базовых знаний в области основ алгоритмизации и программирования;
- выработка навыков решения типичных задач с использованием ЭВМ;
- овладение приемами разработки и отладки программ в современных средах программирования.
Изучение дисциплины направлено
- на развитие у обучающихся алгоритмического мышления, систематизацию принципов построения языков программирования и подходов к разработке программ для ЭВМ;
- на формирование навыков реализации алгоритмов на высокоуровневом императивном языке программирования; разработки, отладки и тестирования программ;
- на подготовку обучающихся к системному восприятию дальнейших дисциплин из учебного плана, использующих навыки алгоритмизации и программирования;
- на получение представлений об основных идеях структурного программирования и развитие способностей сознательно использовать материал курса, умение разбираться в существующих языковых и программных средствах и условиях их применения.

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: Б1.В

3. Компетенции обучающегося, формируемые в результате освоения дисциплины

ПК-2 способностью разрабатывать, внедрять и адаптировать прикладное программное обеспечение
ПК-4 способностью документировать процессы создания информационных систем на стадиях жизненного цикла
ПК-8 способностью программировать приложения и создавать программные прототипы решения прикладных задач
ПК-9 способностью составлять техническую документацию проектов автоматизации и информатизации прикладных процессов
ПСК-1 способностью проектировать дизайн интерфейса пользователя информационной системы, в том числе с учетом развития современной шрифтовой культуры и особенностей пользовательского поведения
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.теоретические основы разработки, внедрения и адаптации прграмного обеспечения;
основные правила для создания документов в процессе создания информационных систем;
основные принципы и понятия проектирования дизайна интерфейса пользователя информационной системы. особенности современной шрифтовой культуры и особенностей пользовательского интерфейса;
основные понятия и терминологию для составления технической документации проектов автоматизации и информатизации прикладных процессов;
о различных парадигмах программирования и современном уровне развития языков и технологий программирования;
о сложности программных систем и методах ее преодоления;
об основах построения трансляторов;
основные понятия в области алгоритмизации, свойства алгоритмов, методы анализа сложности алгоритмов;
синтаксис и базовые конструкции языков C и С++, основные возможности и приемы программирования на этих языках;
принципы структурного программирования;
назначение, устройство и свойства основных структур данных: список, очередь, стэк, дерево, граф;
эффективные алгоритмы поиска и сортировки, алгоритмы решения задач теории графов.

3.2.Уметь:
3.2.1.разрабатывать алгоритмы решения типичных задач и реализовывать их на языке С;
применять полученные навыки для составления технической документации проектов автоматизации и информатизации прикладных процессов;
применять при решении алгоритмических задач типичные алгоритмы и структуры данных;
использовать для разработки и отладки программ современные интегрированные среды разработки;
изменять и создавать дизайн интерфейса пользователя информационной системы.
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1. навыками описания информационных документов;
создавать документы в процессе создания информационных систем на разных стадиях написания программ;
методами и программными средствами для составления технической документации проектов автоматизации и информатизации прикладных процессов;
приемами чтения, построения и записи алгоритмов;
навыками написания и отладки программ на высокоуровневом языке программирования в интегрированной среде разработки.

4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Алгоритмизация
1.1. Алгоритмические языки программирования. Базовые алгоритмические структуры: cледование, ветвление, повторение. Алгоритмические языки программирования. Уровни языков программирования. Алфавит, синтаксис и семантика алгоритмических языков программирования. Инструменты и схема построения исполняемого модуля для программы на языке программирования высокого уровня. Интегрированные среды разработки. Лекции 2 1 ПК-2, ПК-4, ПК-8, ПК-9 Л2.1, Л1.2, Л1.3, Л1.1
Раздел 2. Язык программирования Си
2.1. Синтаксис языка Си. Алфавит, идентификаторы, ключевые слова. Комментарии. Типы, константы. Операции и выражения. Приоритет операций. Общая структура программы. Лекции 2 2 ПК-2, ПК-4 Л1.2, Л1.1
2.2. Управляющие конструкции языка Си. Условный оператор. Оператор ветвления. Операторы циклов. Прерывание циклов. Инвариант цикла Лекции 2 2 ПК-2, ПК-4, ПК-8 Л2.1, Л1.2, Л1.1
2.3. Функции. Параметры функций. Инвариантная функция. Рекурсия. Взаимосвязь итерации и рекурсии. Индуктивное вычисление функции на последовательности данных Лекции 2 1 ПК-4, ПК-8, ПК-9, ПСК-1 Л1.2, Л1.1
2.4. Логическая и физическая структура программы. Структура программы, состоящей из нескольких файлов. Области видимости. Заголовочные файлы. Лекции 2 1 ПК-2, ПК-8, ПК-9 Л1.2, Л1.1
2.5. Препроцессор. Назначение и роль препроцессора. Директивы препроцессора. Макроконстанты и макрофункции. Условная компиляция. Лекции 2 1 ПК-8, ПК-9 Л2.1, Л1.2, Л1.3, Л1.1
2.6. Скалярные переменные. Классы памяти переменных. Изменяемость переменных. Общая схема описания переменных. Лекции 2 2 ПК-8, ПК-9 Л1.2, Л1.1
2.7. Массивы. Многомерные массивы. Массивы как параметры функций. Типичные операции над массивами. Лекции 2 2 ПК-8, ПК-9 Л2.1, Л1.2, Л1.1
2.8. Указатели. Связь указателей и массивов. Динамические массивы. Указатели на функции. Указатели и параметры функций. Сложные описания с указателями. Лекции 2 2 ПК-8, ПК-9, ПСК-1 Л1.2, Л1.1
2.9. Структуры. Битовые поля. Указатели на структуры. Объединения. Размещение структур в памяти Лекции 2 2 ПК-8, ПК-9 Л1.2, Л1.3, Л1.1
2.10. Строки. Функции для работы со строками. Типичные операции над строками. Строки как параметры функций Лекции 2 1 ПК-8, ПК-9 Л1.2, Л1.1
2.11. Файлы. Файловая система. Текстовые и бинарные файлы. Функции для работы с файлами. Типичные приемы работы с файлами. Лекции 2 1 ПК-2, ПК-4, ПК-8, ПК-9 Л1.2, Л1.1
2.12. Линейный вычислительный процесс Лабораторные 2 2 ПК-8, ПК-9 Л2.1, Л1.2, Л1.3, Л1.1
2.13. Линейный вычислительный процесс Сам. работа 2 10 ПК-8, ПК-9 Л2.1, Л1.2, Л1.1
2.14. Ветвящийся вычислительный процесс Лабораторные 2 2 ПК-8, ПК-9 Л2.1, Л1.2, Л1.1
2.15. Ветвящийся вычислительный процесс Сам. работа 2 10 ПК-8, ПК-9 Л2.1, Л1.2, Л1.1
2.16. Циклический вычислительный процесс Лабораторные 2 2 ПК-8 Л2.1, Л1.2, Л1.1
2.17. Циклический вычислительный процесс Сам. работа 2 10 ПК-8 Л2.1, Л1.2, Л1.1
2.18. Функции Лабораторные 2 2 ПК-4, ПК-8 Л1.2, Л1.1
2.19. Функции Сам. работа 2 8 ПК-8 Л1.2, Л1.1
2.20. Массивы Лабораторные 2 4 ПК-8 Л2.1, Л1.2, Л1.1
2.21. Массивы Сам. работа 2 8 ПК-4 Л2.1, Л1.2, Л1.1
2.22. Строки Лабораторные 2 2 ПК-2, ПК-8 Л2.1, Л1.2, Л1.1
2.23. Строки Сам. работа 2 8 ПК-8 Л2.1, Л1.2, Л1.1
2.24. Структуры Лабораторные 2 2 ПК-2, ПК-8 Л2.1, Л1.2, Л1.3, Л1.1
2.25. Структуры Сам. работа 2 8 ПК-8 Л2.1, Л1.2, Л1.3, Л1.1
2.26. Файлы Лабораторные 2 2 ПК-8 Л2.1, Л1.2, Л1.1
2.27. Файлы Сам. работа 2 10 ПК-8 Л2.1, Л1.2, Л1.1

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
смотри приложение
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
Не предусматривается
5.3. Фонд оценочных средств для проведения промежуточной аттестации
смотри приложение

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Подбельский В.В., Фомин С.С. Курс программирования на языке Си: Учебники Издательство "ДМК Пресс", 2012 e.lanbook.com
Л1.2 Смирнов А.А. Технологии программирования : учебно-практическое пособие [Электронный ресурс]: Учебно-практическое пособие Евразийский открытый институт, 2011 // ЭБС "Университетская библиотека ONLINE" biblioclub.ru
Л1.3 Вирт Н. Алгоритмы и структуры данных. Новая версия для Оберона: Учебные пособия Издательство "ДМК Пресс", 2010 e.lanbook.com
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 Кауфман В.Ш. Языки программирования. Концепции и принципы: Учебник М.: ДМК Пресс // ЭБС "Лань", 2011 e.lanbook.com
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 C — The ISO Standard — Rationale, Revision 5.10 (англ.) (апрель 2004). — Обоснование и пояснения для стандарта C99. – http://www.open-std.org/JTC1/SC22/WG14/www/docs/C99RationaleV5.10.pdf
Э2 ISO/IEC JTC1/SC22/WG14 official home – Официальная страница международной рабочей группы по стандартизации языка программирования Си. – http://www.open-std.org/JTC1/SC22/WG14/
Э3 Поисковые системы - yandex.ru, google.com
Э4 Свободная энциклопедия Википедия – http://ru.wikipedia.org
Э5 Форум разработчиков программного обеспечения - Stackoverflow.com
Э6 Интернет-университет информационных технологий. – http://www.intuit.ru
Э7 Образовательный курс Основы программирования. Факультет искусств и дизайна на платформе MOODLE portal.edu.asu.ru
6.3. Перечень программного обеспечения
Интегрированная среда разработки (Visual Studio)
Компилятор С/С++ (Visual Studio)
Microsoft Windows
Microsoft Office
7-Zip
AcrobatReader
6.4. Перечень информационных справочных систем
1. Образовательный портал АлтГУ [Электронный ресурс]: http://portal.edu.asu.ru
2. Издательство «Лань» - электронно-библиотечная система [Электронный
ресурс]: http://e.lanbook.com
3. Издательство МЦНМО. Свободно распространяемые книги издательства
Московского центра непрерывного математического образования
[Электронный ресурс]: www.mccme.ru/free-books
4. Математическая библиотека [Электронный ресурс]: www.math.ru/lib
7. Электронная библиотечная система Алтайского государственного
университета [Электронный ресурс]: http://elibrary.asu.ru
8. Научная электронная библиотека Elibrary [Электронный ресурс]:
http://elibrary.ru

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
206Л лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 14 посадочных мест; компьютеры: марка DEPO модель Neos 260, мониторы: марка Philips модель 227E3LHSU - 14 единиц
303Д читальный зал НБ – помещение для самостоятельной работы Учебная мебель на 9 посадочных мест; компьютер; переносные ноутбуки (по запросу)
207Л лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 14 посадочных мест; компьютеры: марка DEPO модель Neos 260, мониторы: марка Philips модель 227E3LHSU - 14 единиц
106Л помещение для хранения и профилактического обслуживания учебного оборудования Стеллажи – 3 шт. осциллограф, паяльная станция, источник тока, переносные ноутбуки
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска)

8. Методические указания для обучающихся по освоению дисциплины

Методические указания по изучению курса для студентов

Изучение учебной дисциплины студентами предусматривает два вида работ:
- работа с преподавателем;
- самостоятельная работа.

Работа с преподавателем охватывает два вида учебных занятий: лекционные занятия и практические занятия. Последовательность проведения данных занятия, их содержание определяются настоящей программой. Посещение данных занятий является обязательным для всех студентов. Практическое занятие требует подготовки студентов, предусматривающей изучение теоретического материала по теме занятия с использованием учебной литературы, перечень которой приведен в данной рабочей программе.
Вторым видом работы студента, выполняемым им при изучении курса является самостоятельная работа, которая помимо подготовки к практическим занятиям предусматривает изучение рекомендованной основной и дополнительной литературы, а также выполнение заданий для самостоятельной работы студентов.
Цель заданий для самостоятельной работы - закрепить полученные знания в рамках отдельных тем по учебной дисциплине, сформировать умения и навыки по решению вопросов, составляющих содержание курса.
Работа должна носить самостоятельный, творческий характер. Задания по темам выполняются на лабораторных занятиях в компьютерном классе. В процессе работы над заданием закрепляются и расширяются знания по конкретным вопросам учебной дисциплины. При необходимости в процессе работы над заданием студент может получить индивидуальную консультацию у преподавателя.
Выполненное задание проверяется преподавателем и оценивается по двухбалльной системе - зачтено/не зачтено.
Если лабораторные занятия пропущены по уважительной причине, то соответствующие задания необходимо выполнить самостоятельно и представить результаты преподавателю на очередном занятии или консультации.

методические материалы размещены на образовательном портале АлтГУ:
https://portal.edu.asu.ru/course/view.php?id=3188