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

РПД Программирование

.pdf
Скачиваний:
25
Добавлен:
14.03.2016
Размер:
371.72 Кб
Скачать

n

2. Вычислите: ( 1)i / i!.

i1

3.Дан массив из целых чисел (5, 5). Найти 4 максимальных элемента.

4.Дана последовательность действительных чисел а1,а2,..,аn. Указать те элементы, которые принадлежат отрезку [с,d]. Использовать процедуры и типизированные файлы.

5.Дан текстовый файл. Подсчитать, сколько раз среди символов текста встречается символ «пробел».

Экзаменационные вопросы

1семестр:

1.Среда разработки. Компиляция программы. Запуск программы.

2.Форматированный ввод/вывод в Си.

3.Простые типы данных в Си.

4.Операторы, арифметические, алгебраические и логические выражения.

5.Программа линейной структуры.

6.Программа разветвляющейся структуры. Структура if.

7.Оператор выбора. Инструкция switch.

8.Оператор цикла for.

9.Оператор цикла с предусловием while.

10.Оператор цикла с постусловием do…while.

11.Обработка целых чисел. Операторы % и /.

12.Вычисление сложных сумм.

13.Алгоритм Евклида.

14.Одномерные массивы. Ввод/вывод.

15.Линейный поиск в одномерном массиве.

16.Бинарный поиск в одномерном массиве.

17.Сортировка. Метод пузырька.

18.Сортировка. Метод выбора.

19.Сортировка. Метод вставки.

20.Двумерные массивы. Ввод/вывод.

21.Сортировка двумерного массива. Метод пузырька.

22.Символы и строки. Ввод, вывод значения строковых переменных.

23.Основные функции работы со строками.

2семестр:

1.Функции. Объявление и определение функции. Модификаторы.

2.Функции. Возврат значения через return.

3.Функции. Возврат значений через параметр.

4.Функции. Возврат значений через return и параметр.

5.Функции. Работа одномерным массивом.

6.Функции. Работа с двумерным массивом.

7.Рекурсивные функции.

8.Функции. Локальные и глобальные переменные.

9.Ссылки. Указатели и адресная арифметика.

10.Методы распределения памяти.

11.Указатели и массивы.

12.Обработка нажатий клавиатуры.

13.Создание простого меню.

14.Текстовые файлы. Работа в Си.

15.Текстовые файлы. Работа с числами.

16.Текстовые файлы. Работа с массивами.

17.Текстовые файлы. Работа со строками и текстом.

18.Потоковый ввод/вывод в С++.

19.Форматирование данных в С++. Флаги.

20.Форматирование данных в С++. Манипуляторы.

21.Работа с файлами в С++.

22.Бинарные файлы.

23.Бинарные файлы. Работа с числами.

24.Бинарные файлы. Работа с массивами.

25.Структуры.

26.Перегрузка операций.

27.Графика в С/C++.

28.Введение в объектно-ориентированное программирование. Основные концепции ООП.

29.Введение в объектно-ориентированное программирование. Классы, объекты и методы.

30.Введение в объектно-ориентированное программирование. Конструкторы и деструкторы.

31.Введение в объектно-ориентированное программирование. Наследование.

32.Введение в объектно-ориентированное программирование. Перегрузка операций как пример полиморфизма.

33.Динамические структуры данных. Стеки.

34.Динамические структуры данных. Очереди.

35.Динамические структуры данных. Бинарное дерево поиска.

Примерные задачи для экзаменов

1.Заданы радиус круга R и площадь квадрата S. Определить, поместится ли квадрат в круг.

2.Вычислить наибольший общий делитель двух целых чисел.

3.Дан массив целых чисел из 12 элементов. Найти сумму первого отрицательного и первого положительного.

4.Дан массив из целых чисел А(5 X 5). Заменить нулями все элементы на главной диагонали и выше еѐ.

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

6.Написать программу нахождения НОД 3-х чисел, используя НОД двух чисел.

7.Написать рекурсивную процедуру вычисления факториала целого положительного числа n.

8.Пусть дан файл целых чисел. Определите, являются ли числа в файле упорядоченными по возрастанию.

9.Пусть даны два текстовых файла. Определите, равны ли они.

7. Учебно-методическое и информационное обеспечение дисциплины (модуля) «Языки и методы программирования»

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

1.Ахо А.В., Хопкрофт Д., Ульман Д.Д. Структуры данных и алгоритмы: Пер. с англ. М: Издательский дом "Вильяме", 2003, 384 с.

2.Керниган Б.У., Ритчи Д.М. Язык программирования С. М.: Изд. дом «Вильямс», 2006. 304с.

3.Кнут Д. Е. Искусство программирования на ЭВМ. Т. 1-3. Москва, 2008.

4.Липпман С.Б. Основы программирования на С++. - М.: Вильяме, 2002. 256с.

5.Павловская Т.А. Программирование на языке высокого уровня. СПб.: Питер, 2007.

461с.

6.Подбельский В.В. Язык С++: Учеб.пособие. М.:Финансы и статистика, 1999. 560с.

7.Подбельский В.В., Фомин С.С. Программирование на языке Си: Учеб. пособие. М.: Финансы и статистика, 2001. 600с.

8.Пратт Т., Зелковиц М. Языки программирования. Разработка и реализация. Пер. с англ.

СПб.: Питер, 2002. 688 с.

9.Страуструп Б. Язык программирования С++: Пер.с англ. Спец. изд. М.: Бином,

2001. 1114 с.

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

1.Алексеев И.П., Уваровская М.И. Практикум по программированию «Одномерные и двумерные массивы». Якутск: Изд-во ЯГУ, 2010. 32с.

2.Антонов Ю.С., Тихонова О.А., Уваровская М.И. Практикум по программированию на языке Паскаль. Часть 1. Якутск: филиал издательства ЯГУ, ИМИ, 2010. 117 с.

3.Антонов Ю.С., Тихонова О.А., Уваровская М.И. Практикум по программированию на языке Паскаль. Часть 2. Якутск: филиал издательства ЯГУ, ИМИ, 2010. 117 с.

4.Антонов Ю.С., Тихонова О.А., Уваровская М.И. Практикум по программированию на языке Паскаль. Часть 3. Якутск: филиал издательства ЯГУ, ИМИ, 2010. 117 с.

5.Баженова И.Ю. С++. Уроки программирования. М.: Диалог: МИФИ, 1999. 416с.

6.Воеводин В.В. Математические основы параллельных вычислений. М.: Изд-во МГУ,

1991.

7.Крячков А.В., Сухинина И.В., Томшин В.К. Программирование на С и С++. Практикум: Учебное пособие для вузов. М.: Горячая линия. Телеком, 2000. 344с.

8.Павлов Н.Н. Практикум на ЭВМ. Якутск, изд-во ЯГУ, 1999.

9.Павловская Т.А., Щупак Ю.А. С/С++. Структурное программирование: Практикум.

СПб: Питер, 2005. 239с.

10.Франка П. С++: учебный курс. СПб: Питер, 2008. 528с.

8. Материально-техническое обеспечение дисциплины «Языки и методы программирования»

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

Аннотация к рабочей программе дисциплины

Б3.Б.4 ЯЗЫКИ И МЕТОДЫ ПРОГРАММИРОВАНИЯ

 

 

 

Составитель:

 

 

Уваровская Мария Ивановна, доцент кафедры

 

 

 

ПМ, ИМИ СВФУ, к.ф.-м.н.

 

 

 

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

 

010400.62

Профиль подготовки

 

1. Математическое моделирование и

 

 

 

вычислительная математика

 

 

 

2. Системный анализ, исследование

 

 

 

операций и управление

Квалификация (степень) выпускника

 

Бакалавр

 

 

 

Цикл, раздел учебного плана

 

Б3.Б.4

Семестр(ы) изучения

 

1, 2

 

 

Количество зачетных единиц (кредитов)

8

 

 

 

 

Форма

промежуточной

аттестации

Экзамен, экзамен

(зачет/экзамен)

 

 

Количество часов всего, из них:

 

288

 

 

 

 

 

лекционные

 

108

 

 

 

 

 

СРС

 

126

 

 

 

 

 

на экзамен/зачет

 

54

 

 

 

 

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

Целями освоения дисциплины (модуля) «Языки и методы программирования» являются:

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

(АР1) и их применением;

ознакомление с основными конструкциями программирования; основными структурами данных; и с объектно-ориентированным программированием;

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

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

b) общекультурные (ОК):

способность работать в коллективе и использовать нормативные правовые документы в своей деятельности (ОК-13);

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

способность работы с информацией из различных источников, включая сетевые ресурсы сети Интернет, для решения профессиональных и социальных задач (ОК-15);

способность к интеллектуальному, культурному, нравственному, физическому и профессиональному саморазвитию, стремление к повышению своей квалификации и мастерства (ОК-16).

б) профессиональные (ПК):

способность понимать и применять в исследовательской и прикладной деятельности современный математический аппарат (ПК-3);

способность в составе научно-исследовательского и производственного коллектива решать задачи профессиональной деятельности (в соответствии с профилем подготовки) (ПК-4);

способность критически переосмысливать накопленный опыт, изменять при необходимости вид и характер своей профессиональной деятельности (ПК-5);

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

(ПК-7);

способность применять в профессиональной деятельности современные языки программирования и языки баз данных, операционные системы, электронные библиотеки и пакеты программ, сетевые технологии (ПК-10).

способность составлять и контролировать план выполняемой работы, планировать необходимые для выполнения работы ресурсы, оценивать результаты собственной работы (ПК-12).

Врезультате освоения дисциплины обучающийся должен:

1.Знать:

основные конструкции программирования;

основные структуры данных;

применять на практике технологии программирования;

объектно-ориентированное программирование.

2.Уметь:

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

пользоваться классическими алгоритмами;

процедурным программированием, рекурсией;

применять на практике технологии программирования;

объектно-ориентированным программированием.

3.Иметь представление:

об алгоритмах и процессах решения задач;

навыками решения практических задач;

о событийно-управляемом и параллельном программировании;

о прикладных программных интерфейсах (АР1) и их применении.

3. Краткое содержание дисциплины

Основные понятия и конструкции современных языков индустриального программирования. Основное внимание уделяется семантике и прагматике языковых понятий, их связи с методами и технологией программирования. Изложение ведется на примере языка программирования: С/С++.

Курс состоит из введения и двух частей. В первой части основное внимание уделено понятиям, унаследованным из традиционных языков программирования: типам, основным структурам данных, модульности, раздельной трансляции, подпрограммам, статическому полиморфизму и структурам управления последовательностью вычислений. Во второй части основное внимание уделено объектно-ориентированным особенностям современных языков программирования: наследованию, полиморфизму, а также динамическим структурам данных.

4. Аннотация разработана на основании:

1. Федерального государственного образовательного стандарта высшего профессионального образования по направлению 010400.62 Прикладная математика;

2.ООП ВПО по направлению 010400.62 Прикладная математика;

3.РПД (Утверждено УМС Протокол №______ от «____» __________20___г.).