учебно-методический комплекс по дисциплине «информатика

advertisement
1
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ
ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ГЕОДЕЗИИ И КАРТОГРАФИИ» (МИИГАиК)
Утвержден
Учебно-методической
комиссией МИИГАиК
от «____»__________2014__ г.
УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС
ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА»
ДЛЯ ГФ
Москва
2014 год
2
1.
Пояснительная записка
Цели и задачи курса
Курс «Информатика» знакомит студентов современными методами
программирования на языках высокого уровня С и С++ для решения различных
инженерно-геодезических
и
организационных
задач.
Дисциплина
«Информатика» является одной из базовых дисциплин инженерного цикла,
посвященных
программированию
на
языках
высокого
уровня.
Дипломированные специалисты, занятые в области геодезии и дистанционного
зондирования, должны обладать знаниями и практическими навыками по
программированию вычислительных средств. В курсе излагаются сведения о
языках программирования С и С++.
Целью изучения курса «Информатика» является:

подготовка студентов к деятельности, связанной с использованием
вычислительной техники;

формирование профессиональных компетенций, определяющих
способность студента к использованию теоретических знаний и практических
навыков при разработке, анализе и применении существующих программных
средств, а также разработке или модификации программ для решения своих
профессиональных задач.
В результате изучения курса «Технология программирования» студент
должен демонстрировать следующие результаты обучения:

иметь
представление
о
синтаксисе
и
грамматике
языков
программирования С/С++, их особенностях, различиях между собой и отличии
от других языков программирования высокого уровня, а также области
наиболее предпочтительного их использования; о современных средствах
разработки
программ
на
языках
высокого
уровня;
технологиях
программирования и методах анализа эффективности алгоритмов решения
прикладных задач;

знать правила написания программ на языках С и С++, их
3
редактирования, отладки и тестирования, а также знать современные
технологии проектирования, разработки структуры программы и разработки
программного модуля, их тестирования и отладки;

уметь формализовать поставленную задачу; выбирать необходимые
инструментальные
средства
для
разработки
программ,
уметь
строить
алгоритмы решения инженерно-геодезических и научно-исследовательских
задач; составлять, тестировать, отлаживать и оформлять программы на языках
высокого уровня С и С++, включая объектно-ориентированные программы.
Виды занятий и методики обучения
При реализации программы дисциплины «Информатика» в часы,
отведенные для аудиторных занятий (154 ч), занятия проводятся:

в виде лекций (36 ч) в больших потоковых аудиториях, с
использованием меловой доски;

в виде лабораторных работ (118 ч) в компьютерном классе с
использованием электронной интерактивной доски Polyvision;

в виде самостоятельной работы студентов под руководством
преподавателя по выполнению индивидуальных расчетно-графических работ.
Формы контроля
Рубежный контроль
В течение семестра студенты, руководствуясь учебно-тематическим
планом, выполняют лабораторные работы. Выполнение всех работ является
обязательным для обучающихся. Студенты, не выполнившие в полном объёме
лабораторные работы, не допускаются кафедрой к сдаче экзамена.
Итоговый контроль по курсу
Для
контроля
усвоения
данной
дисциплины
учебным
планом
предусмотрен – зачет. Оценка за зачет является итоговой по дисциплине и
проставляется в Приложении к диплому.
4
Методические рекомендации по изучению дисциплины
2.

советы по планированию и организации времени, необходимого на
изучение дисциплины,

рекомендации по использованию материалов учебно-методического
комплекса,
№
п/
п
1
1
2
3
4
5
6

рекомендации по работе с литературой;

советы по подготовке к экзамену (зачёту);
3.
Учебно-тематический план курса
3.1.
Семестр 1
Раздел
ДИСЦИПЛИНЫ
2
Введение в языки программирования
С/С++. Среда программирования Borland
C++ Builder 6
Простейшая программа Hello world!
Имена переменных. Комментарии. Типы
и размеры данных: char, int, float, double,
void
Объявления переменных.
Арифметические операторы. Операторы
отношения и логические операторы.
Преобразования типов. Операторы
инкремента и декремента. Общие
сведения о приоритетах операторов.
Управление. Условные конструкции: if,
if-else, вложенные конструкции else-if.
Переключатель switch.
Циклы while, for, do-while.
Множественная инициализация и
приращение счетчиков цикла for.
Инструкции break и continue.
Побитовые операторы (побитовое И,
ИЛИ, исключающее ИЛИ, НЕ, сдвиг
ВИДЫ АУДИТОРНОЙ
РАБОТЫ (ЗАНЯТИЙ)
СРС
(ЧАС)
(ЧАС)
ЛЕКЦ Семи ПРАК ЛАБО
ИИ
нары ТИРА-
3
4
ЧЕСК
ИЕ
ТОРН
ЫЕ
5
6
2
2
2
2
2
2
2
2
2
2
2
10
7
5
7
8
9
влево, сдвиг вправо). Упрощенная форма
оператора присваивания. Условное
выражение: ( z = (a > b)? a :b).
Функции и структура программ на С.
Аргументы функции. Классы памяти:
auto, static, register, extern. Блочная
структура С программ. Си-препроцессор.
Указатели на переменные, понятие
адреса. Оператор взятия адреса (&) и
раскрытия ссылки (*). Арифметические
операции над указателями. Указатели и
аргументы функций.
Указатели на одномерные массивы.
Формы записи элементов массива: имя
массива с индексом a[ i ] и указатель со
смещением *(a+i). Основные сведения о
структурах. Структура point. Доступ к
членам структуры. Вложенные структуры
(struct rect). Операции над структурами.
Аттестация (зачет)
ИТОГО:
2
8
2
2
2
8
18
60
4. Программа дисциплины (содержание курса)
Раздел 1. Введение в язык С/С++
Введение в языки программирования С/С++. Среда программирования
Borland C++ Builder 6. Простейшая программа Hello world! Имена переменных.
Комментарии. Типы и размеры данных: char, int, float, double, void. Типы
констант: целая десятичная, восьмеричная, шестнадцатеричная, с плавающей
точкой. Объявления переменных. Арифметические операторы. Операторы
отношения и логические операторы. Преобразования типов. Операторы
инкремента и декремента. Общие сведения о приоритетах операторов.
Раздел 2. Основные конструкции языка С
Управление. Условные конструкции: if, if-else, вложенные конструкции
else-if. Переключатель switch. Циклы
while,
for, do-while. Множественная
инициализация и приращение счетчиков цикла for. Инструкции break и
continue.
Упрощенная
форма
оператора
присваивания.
Приоритет
и
очередность вычислений операторов. Функции и структура программ на С.
6
Аргументы функции. Блочная структура С программ. Си-препроцессор.
Подключение заголовочных файлов директивой #include. Макроподстановки с
помощью #define и отмена макроподстановки #undef. Директива #define с
параметрами.
Раздел 3. Более сложные конструкции языка С
Указатели на переменные, понятие адреса. Оператор взятия адреса (&) и
раскрытия ссылки (*). Арифметические операции над указателями. Указатели и
аргументы функций. Указатели на одномерные массивы. Формы записи
элементов массива: имя массива с индексом a[ i ] и указатель со смещением
*(a+i). Основные сведения о структурах. Структура point. Доступ к членам
структуры. Операции над структурами. Передача структур в функции.
Указатель на структуру. Доступ к членам структуры через указатель: обычная
(*p).x и короткая p->x форма записи.
Планы практических (лабораторных) занятий
5.
6. №№
НАИМЕНОВАНИЕ ЛАБОРАТОРНЫХ РАБОТ
РАЗДЕЛА
ДИСЦИП
П ЛИНЫ
/
П
1.
1.
ОЗНАКОМЛЕНИЕ
СОСТАВЛЕНИЕ
2.
2.
СОСТАВЛЕНИЕ
3.
3.
СОСТАВЛЕНИЕ
С РАБОТОЙ
IDE BORLAND C++ BUILDER.
ПРОГРАММЫ HELLO, WORLD. ОСВОЕНИЕ ФУНКЦИЙ
РЕДАКТИРОВАНИЯ,
КОМПИЛИРОВАНИЯ,
ЗАПУСКА
И
ОТЛАДКИ
ИСПОЛНЯЕМОГО
КОДА.
ВИЗУАЛИЗАЦИЯ РЕЗУЛЬТАТА РАБОТЫ
ПРОГРАММЫ.
И
ОТЛАДКА
ПРОГРАММ
НА
ВЫЧИСЛЕНИЕ
АРИФМЕТИЧЕСКИХ ВЫРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ ФУНКЦИЙ: POW(),
SQRT(), LOG(), LOG10(), EXP(), SIN(), COS(), TAN(), ASIN(), ACOS(), ATAN()
И ДРУГИХ ИЗ СТАНДАРТНОЙ МАТЕМАТИЧЕСКОЙ БИБЛИОТЕКИ С.
И ОТЛАДКА ПРОГРАММ С ЛИНЕЙНЫМ АЛГОРИТМОМ НА
ВЫЧИСЛЕНИЕ ДЛИН ДУГ МЕРИДИАНОВ. ЗАПУСК ПРОГРАММЫ ПЕРЕВОДА
ГРАДУСОВ ФАРЕНГЕЙТА В ГРАДУСЫ ЦЕЛЬСИЯ. ПОВЫШЕНИЕ
ЭФФЕКТИВНОСТИ КОДА И УДОБОЧИТАЕМОСТИ СОСТАВЛЕННОЙ
ПРОГРАММЫ.
7
4.
4.
ЛИНЕЙНЫЕ
АЛГОРИТМЫ. СОСТАВЛЕНИЕ И ОТЛАДКА ПРОГРАММ НА
ПРЕОБРАЗОВАНИЕ УГЛОВ, ПРЕДСТАВЛЕННЫХ В ГРАДУСНОЙ МЕРЕ
(ГРАДУСЫ, МИНУТЫ, СЕКУНДЫ) В ВЕЩЕСТВЕННОЕ ЧИСЛО РАДИАН И
ОБРАТНОЕ ПРЕОБРАЗОВАНИЕ.
5.
5.
ВЫДАЧА МАТЕРИАЛОВ ДОМАШНЕЙ РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЫ
№1 НА СОСТАВЛЕНИЕ И ОТЛАДКУ ПРОГРАММ ВЫЧИСЛЕНИЯ ВЫСОТЫ,
БИССЕКТРИСЫ И МЕДИАНЫ ПРОИЗВОЛЬНОГО ТРЕУГОЛЬНИКА
ИСПОЛЬЗОВАНИЕМ ТЕОРЕМ СИНУСОВ И КОСИНУСОВ.
С
6.
6.
ПОВТОРЯЮЩИЕСЯ ДЕЙСТВИЯ. СОСТАВЛЕНИЕ И ОТЛАДКА ПРОГРАММ НА
РАЗЛИЧНЫЕ ТИПЫ ЦИКЛОВ, ВКЛЮЧАЯ ВЛОЖЕННЫЕ (WHILE, FOR, DO –
WHILE) ДЛЯ НАХОЖДЕНИЯ РАЗЛИЧНЫХ СУММ И ПРОИЗВЕДЕНИЙ.
7.
7.
ВЕТВЛЕНИЯ. СОСТАВЛЕНИЕ
8.
8.
СОСТАВЛЕНИЕ И ОТЛАДКА
9.
9.
ПРИЕМКА
И ОТЛАДКА ПРОГРАММ НА ОСНОВНЫЕ
ТИПЫ УСЛОВНЫХ ИНСТРУКЦИЙ (IF, IF – ELSE, ВЛОЖЕННЫЕ
КОНСТРУКЦИИ ELSE - IF. И ПЕРЕКЛЮЧАТЕЛЬ SWITCH).
ПРОГРАММ НА ПРОСТЕЙШИЕ ВИДЫ ПРЯМОЙ
И ОБРАТНОЙ ГЕОДЕЗИЧЕСКОЙ ЗАДАЧИ.
ДОМАШНЕЙ РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЫ
ТИПОВЫХ ОШИБОК, ДОПУЩЕННЫХ В ПРОГРАММАХ
№1. АНАЛИЗ
6. Темы курсовых работ
Данный вид работы не предусмотрен учебным планом.
7. Методические рекомендации по выполнению курсовых работ
Данный вид работы не предусмотрен учебным планом.
8
8.
Контрольные вопросы по курсу (вопросы к зачету семестр 1)
1.
Разработка
программ:
написание
кода,
компилирование,
редактирование и отладка в среде Borland Builder 6. Понятие о языках низкого
и высокого уровня. Семейство языков высокого уровня С и С++. Особенности
программирования консольных приложения и приложений под Windows.
2.
Имена переменных. Комментарии. Типы и размеры данных. Типы
констант: целая десятичная, восьмеричная, шестнадцатеричная, с плавающей
точкой.
3.
Объявления переменных. Арифметические операторы.
4.
Операторы отношения и логические операторы. Преобразования
типов. Операторы инкремента и декремента. Общие сведения о приоритетах
операторов.
5.
Управление.
Условные
конструкции:
if,
if-else,
вложенные
конструкции else-if. Переключатель switch.
6.
Циклы
while,
for, do-while. Множественная инициализация и
приращение счетчиков цикла for. Инструкции break и continue. Упрощенная
форма оператора присваивания. Приоритет и очередность вычислений
операторов.
7.
Функции и структура программ на С. Аргументы функции. Блочная
структура С программ. Си-препроцессор. Подключение заголовочных файлов
директивой #include.
8.
Указатели на переменные, понятие адреса. Оператор взятия адреса
(&) и раскрытия ссылки (*).
9.
Арифметические
операции
над
указателями.
Указатели
и
аргументы функций. Указатели на одномерные массивы.
10.
Основные сведения о структурах. Структура point. Доступ к членам
структуры. Вложенные структуры (struct rect). Операции над структурами.
Передача структур в функции. Указатель на структуру.
9. Варианты контрольных работ для студентов заочной формы
9
обучения
Данный вид работы не предусмотрен учебным планом.
10.
Методические рекомендации по выполнению контрольных
работ студентами заочного отделения
Данный вид работы не предусмотрен учебным планом.
11.
Список основной и дополнительной литературы
а) основная литература:
1·
Керниган Б., Ритчи Д. Язык программирования Си. Изд. «Финансы
и статистика», М., 1992г.
2·
Страуструп Б. Язык программирования С++. Изд. «Радио и связь»,
М., 1991г.
б) дополнительная литература:
1·
Бобровский С. Самоучитель программирования на языке С++ в
системе Borland C++ Builder 5.0. Изд. «ДЕСС КОМ». М., 2001г.
2·
Джамса К. Учимся программировать на языке С++. Изд. «Мир», М.,
1999г.
12.
Выписка из федерального государственного образовательного
стандарта (ФГОСТа)
В результате изучения курса «Информатика» студент должен:
знать:

принципы и базовые концепции технологии программирования,
языки процедурного и объектно-ориентированного программирования;
уметь:

применять информационные технологии при проектировании
информационных систем;

использовать
языки
и
системы
программирования,
пакеты
математических программ для решения профессиональных задач;
владеть:

навыками
практического
использования
вычислительных машин (ЭВМ) и программирования;
электронно-
Download