Обучение

КУРС
Программирование
2161
Физика радиочастотных технологий
2160 Ф
Прикладная и теоретическая физика
2162
Фотоника и спинтроника
2158
Квантовые материалы
Беспроводные технологии
Гибридные материалы
Численное моделирование

 

 

Курс знакомит студентов с основами программирования, базовыми алгоритмами и структурами данных, принципами работы с исходным кодом. В рамках курса студенты «с нуля» знакомятся с языком программирования Python 3, а также с его дополнительными модулями, наиболее применимыми для естественно-научных вычислений (библиотека SciPy и не только).

Язык обучения
Русский
Образовательная программа:  
Модуль:  
Компьютерные методы
Содержание программы

Компьютерная архитектура и организация

1. Архитектура фон Неймана

2. Гарвардская архитектура

3. Представление информации

4. Бинарная система

5. Отличия естественного языка и языка программирования (синтаксис)

Процессоры

1. Архитектура набора команд

2. Рост технологий и производительности (Закон Мура)

3. Структура современных процесоров

Манипуляция данными

1. Машинный код

2. Коммуникация с периферией

3. Иерархия памяти

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

1. Трансляция программ и команд

2. Компиляция программного кода

3. Интерпретация

4. Динамическая компиляция

Вычислительные модели

1. Алгоритм

2. Машина с произвольным доступом к памяти

3. Машина с хранимой в памяти программой

4. Машина Тьюринга

5. λ-исчисление Чёрна

Декомпозиция, абстракции, функции

1. Структурирование программ

2. Функции

3. Спецификации

Итеративные и рекурсивные алгоритмы

1. Рекурсия и итерация

2. Анализ рекурсии

3. Списки и словари

Вычислительные алгоритмы

1. Дискретизация дифференциальных уравнений

2. Методы численного интегрирования

Парадигмы программирования

1. Функциональный подход

2. Объектно-ориентированный подход

Тестирование и отладка

1. Классификация тестов

2. Подходы к тестированию

3. Тестирование по стратегии черного ящика

4. Тестирование по стратегии белого ящика

5. Отладка

Эффективность программ

1. Что понимается под эффективностью программ

2. Как оценить эффективность

3. "О"нотация

4. Анализ вычислительной сложности

5. Классы вычислительной сложности

6. Примеры характерные для каждого класса