ac91f0b8e50b245cf20688afee4c2237.ppt
- Количество слайдов: 37
Назва дисципліни: Інформатика, програмування та математичне моделювання. Лектор: Ахметов Володимир Сабірджанович, кандидат фіз. -мат. наук, старший наук. співробітник, доцент кафедри астрономії та космічної інформатики. Статус: нормативний. Курс, семестр. I - II курс, 2 -3 семестр. Кількість кредитів: 6
Состав курса 2 семестра: • Основы программирования на языках C и C++ • Математическое моделирование и численные методы.
• 2 семестр: Лекции-практические 4 часа в неделю в НИИ астрономии, новый корпус 105 аудитория. 50% кредитов – С. Р. Индивидуальное задание – курсовая работа(зачет) Вычислительная практика 2 недели!? !? (летом) • 3 семестр: Лекции-практические 4 часа в неделю в НИИ астрономии, новый корпус 105 аудитория. (экзамен)
Програма навчальної дисципліни складається з таких розділів: • 1. Алгоритмізація та програмування як спосіб моделювання явищ природи та суспільства. • 2. Основи мови програмування С++. • 3. Об‘єктно-орієнтоване програмування на мові C++.
. Мета та завдання навчальної дисципліни • 1. 1. Метою викладання навчальної дисципліни є придбання студентами вміння застосовувати персональну електронно-обчислювальну машину (ПЕОМ) в науково-дослідній діяльності. • 1. 2. Основними завданнями дисципліни є вивчення поняття алгоритму та види алгоритмів: лінійний, гіллясті, циклічні; методів розробки програмного забезпечення на мові програмування С++; методів аналізу і обробки одно та багатовимірних масивів даних; основної концепції об‘єктно-орієнтованого програмування (ООП) на мові С++; Eclipse як засіб створення програмного забезпечення. • Курс націлений на розвиток наукової ерудиції, фізико-математичної і експериментальної культури студентів, збагачення їх знанням сучасних проблем розвитку комп’ютерних технологій.
• 1. 3. Згідно з вимогами освітньо-професійної (освітньо-наукової) програми студенти повинні досягти таких результатів навчання: Вміти: • - розв’язувати наукові завдання з використанням навичок програмування на мові С++; • створювати програмне забезпечення використовуючи сучасні методи програмування.
3. Виклад змісту навчальної дисципліни. • Розділ 1. Алгоритмізація та програмування як спосіб моделювання явищ природи та суспільства. • Тема 1. Інформатика і сучасні інформаційні технології. • Зміст: Предмет, цілі та проблеми інформаційних технологій. Архітектура та загальні принципи роботи ЕОМ. Ієрархія програмних засобів (ПЗ): операційні системи, системне та прикладне ПЗ. • Тема 2. Моделювання явищ природи та суспільства. • Зміст: Моделювання явищ природи та суспільства як метод наукового пізнання. Поняття алгоритму, види алгоритмів. Опис алгоритмів на мовах програмування ЕОМ. Процедурне та об‘єктно-орієнтоване програмування (ООП). Сучасні технології програмування.
• Розділ 2. Основи мови програмування С++. • Тема 1. Структура програми. • Зміст: Синтаксис мови програмування С++. Константи. Змінні. Оператори. Алгебраїчні та логічні дії. Процедури та функції. Правила оформлення текстів програм. • Тема 2. Лінійні, гіллясті та циклічні програми. • Зміст: Умовний оператор if else. Цикл з передумовою while та після умовою do while. Оператори керування циклами break та continue. Циклічні програми з заздалегідь відомим та невідомим числом повторення. Оператор виходу з процедури або функції return та переривання програми break. • Тема 3. Масиви. Одновимірні, двовимірні та багатовимірні масиви. • Зміст: Операції над масивами та елементами. Алгебраїчні операції над векторами та матрицями. Пошук елементів масиву за значеннями. Сортування масивів.
• Розділ 3. Об‘єктно-орієнтоване програмування на мові C++. • • Тема 1. Основні концепції об‘єктно-орієнтоване програмування. • Зміст: Концепції ООП як найбільш адекватна парадигма моделювання явищ природи та суспільства. Інкапсуляція, наслідування, поліморфізм. Класи та об‘єкти. Поля, методи, властивості. • Тема 2. Організація програм у стилі ООП. • Зміст: Застосування наслідування та поліморфізму. Віртуальні методи. Ієрархія класів. Простір імен. Елементи комп‘ютерної графіки. Побудування найпростіших графіків та зображень.
5. Теми семінарських (практичних, лабораторних) занять № з/п Назва теми Кількість годин 1 Правила техніки безпеки під час праці з персональним комп‘ютером: безпека оператора, безпека апаратури та безпека інформації. 2 2 Знайомство з середовищем розробки Microsoft Visual Studio. Створення нового проекту, запис на диск, відкриття проекту. Створення та редагування найпростішої програми. Компіляція та запуск програми. Налагодження програм. 4 3 Розробка лінійної програми. Розробка програми з процедурами та функціями. Розробка програми з умовами. Програма вирішення коренів квадратного рівняння. Програма обчислення поверхні та об’єму циліндра. Розробка програми обчислення факторіалу. 8 4 Програми з масивами. Розробка процедур введення масиву з клавіатури та текстового файлу. Розробка процедури виведення масиву в текстовий файл. Розробка програм сортування масивів. 8 5 Розробка програми додавання, віднімання матриць, знаходження скалярного добутку векторів. Добуток та обернена матриця. 6 6 Створення віконних програм засобами Windows Form Application. Розробка програми для побудування найпростіших графіків. Робота з FITS зображеннями. 8 Разом 36
6. Самостійна робота № з/п 1 Назва теми Архітектура та загальні принципи роботи ЕОМ: процесори, шини, пам‘ять та їх взаємодія; графічні підсистеми; зовнішні накопичувачі інформації – HD, FDD, CD, DVD та їх протоколи обміну; засоби вводу та виводу інформації; локальні та глобальні комп‘ютерні мережі. Кількість годин 3 Форма контролю Поточне опитування, перевірка завдань самостійної роботи, контрольна робота при закінченні модуля. Одинадцятибальна шкала оцінювання за кожним опитуванням, визначення середнього балу за результатами перевірки знань по темі. 2 Історія виникнення та розвитку мов програмування. Дві основні парадигми програмування. 3 Теж саме 3 Стандартні функції. Вирази, пріоритет виконання в виразах. Формальні та фактичні параметри, передача параметра за значенням та адресою, параметри для повернення значень. 10 Теж саме 4 Введення та виведення значень у консольному режимі. Складений оператор. Операторні дужки. Відношення, логічні вирази, оператори порівняння. 6 Теж саме 5 Читання (запис) масивів з(в) текстовий або бінарній файл. Приймання аргументів програми з командної строки. 6 Теж саме 6 Строка (string) як масив символів. Операції над строками. Структури (struct) як тип даних. Доступ до полів структури. Типи, що задаються користувачем. 10 Теж саме 7 Написання програми для роботи з FITS файлами. Створення кольорових зображень зоряного неба. 10 Теж саме Разом 48
Рекомендоване методичне забезпечення Базова література • Лафоре Р. Объектно-ориентированное программирование в С++. ПИТЕР, 2004. • Культин Н. С/С++ в задачах и примерах. Санкт. Петербург, 2005 • Литвиненко Н. А. - Технология программирования на С++. • Стефан Р. Дэвис - С++ Для чайников. • Керниган, Ричи. Язык C. • Бьeрн Страустрап. Введение в язык Си++
Допоміжна література та Інформаційні ресурси • Дейкстра. Дисциплина программирования. • Дональд Кнут. Искусство программирования. • А. Филд, П. Харрисон. Функциональное программирование. • • https: //www. visualstudio. com/ - сайт для розробки Visual Studio • https: //msdn. microsoft. com/ - інформаційний сайт для розробки ПО в Visual Studio. • https: //eclipse. org/ - вільне середовище для розробки модульних крос-платформеного ПО. • http: //astrodata. univer. kharkov. ua/astrometry/Akhmetov/C / - текстові, бінарні файли даних для самостійної роботи.
Программирование • Искусство создания компьютерных программ • Анализ задачи (понятия, подходы, приемы, решения) • Проектирование (определение структуры программы), разработка алгоритмов • Написание программы (кодирование) • Тестирование, отладка, сопровождение
Алгоритм • Последовательность действий, необходима для решения определенной задачи • Формы записи алгоритма: • Пошаговая; • Блок-схема; • Программа.
Идентификаторы
Тип bool char short int unsigned short int байт Диапазон принимаемых значений целочисленный (логический) тип данных 1 0 / 255 целочисленный (символьный) тип данных 1 0 / 255 целочисленные типы данных 2 -32 768 / 32 767 2 0 / 65 535 int 4 -2 147 483 648 / 2 147 483 647 unsigned int 4 0 / 4 294 967 295 long int 4 -2 147 483 648 / 2 147 483 647 unsigned long int 4 0 / 4 294 967 295 типы данных с плавающей точкой float 4 -2 147 483 648. 0 / 2 147 483 647. 0 long float 8 -9 223 372 036 854 775 808. 0 / 9 223 372 036 854 775 807. 0 double 8 -9 223 372 036 854 775 808. 0 / 9 223 372 036 854 775 807. 0
КОМЕНТАРИИ • // Однострочные комментарий • /* Многострочный комментарий */