Процедурное программирование

Языки программирования

1 курс


Протокол чтения лекций

  1. Понятие алгоритма (1-4 недели)
  2. Основы программирования на языке С++ (3-6 недели)
  3. Конструкция ветвления. Циклы. Массивы (5-8 недели)
  4. Перечисления. Указатели (7-10 недели)
  5. Программное управление - основа вычислительного процесса. Сложность алгоритмов. Программное обеспечение (9-12 недели)
  6. Функции в С++. Итерация и рекурсия. Задача про шарики (11-14 недели)
  7. Различие языков С и С++. Тернарные операторы. Ссылки, Файлы (13-16 недели)
  8. Динамические массивы (15-17 недели)

Полезные ссылки

"Боевой курс С++": ищите на youtube


Для допуска к экзамену нужно решить следующие задачи:

  1. Все 5 домашних заданий.
  2. Задача про шарики - не для РТС.
  3. Сделать доклад с демонстрацией программы по любому из алгоритмов сортировки (на ваш выбор).
  4. Выполнить контрольную работу "Про спиннеры и не только"- не для РТС.

Сюжет задачи про шарики. Из урны с 10 пронумерованными шариками вынимают по одному шарику. Подсчитать общее количество ситуаций, когда номер хотя бы одного вынутого шарика совпадает с порядковым номером действия "вынимания", например, когда шарик № 3 будет вынут 3-им по порядку.

Один из возможных вариантов алгоритма решения задачи про шарики

1. Задать количество шариков n.

2. Создать массив пронумерованных шариков от 1 до n.

3. Целочисленная переменная i - номер шарика (от 1 до n), одновременно являющаяся счетчиком действий.

4. Создать функцию perestanovka от целочисленных m и n, которая генерирует перестановки, в зависимости от количества шариков (n) и в которой фигурирует номер очередного переставляемого шарика (m). В этой функции использовать условие: когда номер шага i равен номеру вынимаемого шарика m, печатать очередную перестановку. Во всех остальных случаях менять местами элементы с номерами i и m, после чего вызывать функцию perestanovka со следующим значением шага и опять же менять местами элементы с номерами i и m.

5. Основная программа: присваивание шарикам порядковых номеров, вызов функции perestanovka с параметрами 1 (первый шаг) и n (количество шариков).


Лекции


Лекция 1

Лекция 2

Лекция 3

Лекция 4

Лекция 5

Лекция 6

Лекция 7

Лекция 8


Задача про шарики

Лабораторный практикум
по криптографии

Практические задания


Домашние задания

Программирование алгоритмов
сортировки

Классификация
алгоритмов сортировки
 

Тематика практических занятий (будет редактироваться)

  1. Дз1
  2. Дз2
  3. Дз3
  4. Дз4
  5. Дз4 (продолжение)
  6. Дз5
  7. Дз5 (продолжение)
  8. Обработка массивов
  9. Суммирование рядов
  10. Алгоритмы сортировки
  11. Алгоритмы сортировки (продолжение)
  12. Обработка файлов
  13. Самостоятельная работа "Про спиннеры и не только"
  14. Задача про шарики
  15. Защита всех заданий
  16. Подготовка к экзамену

Методички по практике


ДЗ 1

ДЗ 2

ДЗ 3

ДЗ 4

ДЗ 5

Структурные числа

 


Задачи для семинаров и самостоятельной работы


База заданий


Контрольная работа


Про спиннеры и не только



Алгоритмы сортировки (темы докладов)


Алгоритмы сортировки


Задания на "автомат" (возможные варианты)

  1. Задания 98-103, 150, 151 из файла "База заданий".
  2. Нахождение экстремума функции двух или трех переменных с помощью генетического алгоритма (см. вкладку "Искусственный интеллект" -> Задания для очников -> пункт 2в. Для проверки рекомендую сделать аналитические решения.
  3. Разработать нейронную сеть (НС), распознающую примитивные образы. Лекции по НС лежат на youtube. Автор Дмитрий Дзюба.