000 17248nam a2200265 i 4500
001 315
003 OSt
005 20250324112305.0
008 250207s2023 unr||||||f|||l000 |yukr d
020 _a978-617-7519-74-3
_c450.00 грн.
040 _bukr
_cЦНТУ
080 _a004.432Python(075.8)
100 1 _aВисоцька, В. А.
245 0 0 _aPyton: алгоритмізація та програмування :
_bнавч. посіб. /
_cВ. А. Висоцька, О. В. Оборська ; М-во освіти і науки, Львівська політехніка
260 _aЛьвiв :
_bНовий Світ – 2000,
_c2023
300 _a515 с.
500 _aЗміст: Розділ 1. Основи програмування 1.1. Парадигми програмування 1.1.1. Системне програмування 1.1.2. Структурне та процедурне програмування 1.1.3. Модульне та об’єктно-орієнтоване програмування 1.1.4. Функційне програмування 1.2. Середовище програмування та програмне забезпечення для Python 1.2.1. Інтерактивний режим 1.2.2. Створення скриптів 1.3. Математичні операції на Python 1.4. Порядок виконання операцій 1.5. Написання програм на Python 1.5.1. Редагування файлів 1.5.2. Запускаємо програму за файлу 1.6. Функція input Розділ 2. Системи числення 2.1. Позиційні системи числення 2.2. Одиниці виміру інформації 2.3. Двійкова система числення 2.4. Вісімкова система числення 2.5. Шістнадцяткова система числення 2.6. Двійково-вісімкові перетворення 2.7. Двійково-шістнадцяткові перетворення 2.8. Вісімково-шістнадцяткові перетворення Розділ 3. Типи даних в мові програмування Python 3.1. Булевий тип (bool) 3.1.1. Логічні вирази та логічний тип даних 3.1.2. Логічні оператори, або Булеанівські вирази 3.1.3. Складні логічні вирази 3.2. Числа 3.2.1. Цілі числа (Integer) 3.2.2. Числа з плаваючою комою (float) 3.2.3. Додаткові методи 3.3. Змінні 3.4. Strings як складний тип даних 3.4.1. Екрановані послідовності 3.4.2. Рядки у потрійних лапках чи апострофах 3.4.3. Довжина рядка 3.5. Комплексні числа (complex) Розділ 4. Основи алгоритмізації 4.1. Поняття алгоритму та способи його подання 4.2. Властивості та класи алгоритмів 4.3. Розроблення програми 4.3.1. Структура модуля в Python 4.3.2. Багатомодульні програми 4.3.3. Помилки 4.3.4. Техніка налагодження (зневаджування) програм 4.4. Розроблення алгоритму програми 4.4.1. Рекурсія 4.4.2. Динамічне програмування 4.5. Приклади бібліотек Python 4.5.1. Matplotlib 4.5.2. Network X 4.5.3. CSV 4.5.4. NumPy 4.5.5. Інші бібліотеки Розділ 5. Умовний оператор 5.1. Інструкція if 5.2. Оператори "else" та "elif" – коли це не є правдивим (True) виразом Розділ 6. Цикли в мові Python 6.1. Цикл while 6.2. Відступи 6.3. Цикл for Розділ 7. Файли 7.1. Відкриття та закриття файлу в Python 7.2. Список режимів доступу до файлу у мові Python 7.3. Інші функції Вводу та Виводу 7.4. Pickles або процес збереження даних у файл Розділ 8. Кортежі, списки та словники 8.1. Відмінність списків, кортежів та словників 8.2. Незмінюваний тип даних 8.3. Змінювані впорядковані послідовності об’єктів 8.4. Змінюваний невпорядкований набір об’єктів 8.5. Присвоювання для списків 8.6. Порівняння для списків 8.7. Умовні твердження (висловлювання) 8.8. Послідовності 8.9. Операції над послідовностями різних типів 8.10. Процедурний чи декларативний стиль Розділ 9. Стеки, черги та деки 9.1. Стеки 9.1.1. Реалізація стеку за допомогою масиву 9.1.2. Реалізація стеку за допомогою списку 9.1.3. Системний стек в програмах 9.2. Черги 9.2.1. Реалізація черги за допомогою масиву 9.2.2. Реалізація черги за допомогою списку 9.3. Деки Розділ 10. Функції 10.1. Використання Функцій 10.2. Параметри та результати функцій – зв’язок з функцією 10.3. Функції як основа структурного програмування 10.3.1. Вхідні та вихідні дані функції 10.3.2. Програма Калькулятор 10.3.3. Визначення власних функцій 10.3.4. Параметри та аргументи функцій 10.3.5. Кінцева програма 10.4. Локальні та глобальні змінні 10.5 Створення функції меню 10.6. Перша "Гра" 10.7. Покращуємо гру 10.8. Складні випадки використання функцій 10.8.1. Функція як аргумент 10.8.2. Функції вищого рівня 10.9. Рекурсія 10.10. Обмеження на глибину рекурсії 10.11. Опрацювання помилок 10.12. Винятки (Exceptions, Ексепшини) – обмеження коду 10.13. Хрестики-нулики на Python (текстовий варіант) Розділ 11. Графіка та модуль turtle 11.1. Простота роботи з модулем turtle 11.2. Основні команди модуля turtle 11.2.1. Команда "повзати" 11.2.2. Команда "малювати" 11.2.3. Команда "взнати про черепашку" 11.2.4. Команда "інтерактив" 11.2.5. Ще нетривіальні приклади 11.3. Обмеження модуля turtle 11.4. Генератор випадкових чисел 11.5. Цикл for для повторення частини коду 11.6. Список як засіб збереження даних Розділ 12. Алгоритми пошуку та хешування 12.1. Пошукові алгоритми та їх загальна класифікація 12.1.1. Лінійний пошук 12.1.2. Двійковий (бінарний) пошук елемента в масиві 12.1.3. Пошук методом Фібоначчі 12.1.4. Інтерполяційний пошук 12.1.5. Бінарний пошук із визначенням найближчих вузлів 12.2. Хешування даних 12.2.1. Поняття хеш-функції 12.2.2. Хеш-таблиці 12.2.3. Алгоритми хешування 12.2.4. Динамічне хешування 12.2.5. Методи розв’язування колізій 12.2.6. Уникнення колізій за допомогою ланцюгів 12.2.7. Переповнення таблиці та рехешування 12.2.8. Хеш-функції 12.2.9. Відкрита адресація 12.2.10. Оцінювання якості хеш-функції 12.3. Пошук з використанням хеш-функції Розділ 13. Алгоритми сортування 13.1. Методи внутрішнього сортування 13.1.1. Сортування обміном (метод бульбашки) 13.1.2. Шейкерне сортування 13.1.3. Сортування вставкою (включенням) 13.1.4. Сортування прямим вибором 13.1.5. Швидке сортування (метод Хоара) 13.1.6. Сортування за допомогою дерева 13.1.7. Сортування за лінійний час 13.1.8. Піраміди 13.1.9. Сортування методом злиття 13.1.10. Методи порозрядного сортування 13.2. Методи зовнішнього сортування 13.2.1. Пряме злиття 13.2.2. Природне злиття 13.2.3. Збалансоване багатошляхове злиття 13.2.4. Багатофазне сортування Розділ 14. Об'єктно-орієнтоване програмування 14.1. Класи та об’єкти 14.2. Використання класу 14.2.1. Приховування атрибутів класу 14.2.2. Сетери, гетери та делетери 14.2.3. Властивості 14.2.4. Обчислювані властивості 14.3. Конструктори та деструктори класу 14.4. Наслідування 14.5. Поліморфізм 14.6. Інкапсуляція 14.7. Композиція 14.8. Перевантаження операторів 14.9. Вказівники 14.10. Імпортування модулів 14.10.1. Що таке модуль? 14.10.2. І ще кілька фішок по модулях Розділ 15. Модуль tkinter 15.1. Користувацькі підпрограми і моделювання на основі tkinter 15.2. Моделювання математичних функцій 15.3. Моделювання фізичного явища: тіло, кинуте під кутом до горизонту 15.4. Tkinter замість turtle 15.5. Опрацювання подій після натискання кнопок 15.6. Графічні примітиви tkint 15.7. Згадаємо цикл for та rnd 15.8. Приймаємо рішення або оператор вибору в tkinter 15.9. Деякі задачі для for та while в tkinter 15.10. Мишка залишає слід. Працюємо з інформацією про event в Tkinter 15.11. Робимо першу гру на Python з модулем tkinter: злови кульку 15.12. Починаємо створювати гру "Jumper". Анімація 15.13. Продовжуємо робити гру "Jumper". Об’єкти як екземпляри класів 15.14. Закінчуємо гру "Jumper" 15.15. Створюємо список "кульок" для наступних завдань 15.16. Опрацювання списків в tkinter 15.17. Перевірте себе Розділ 16. Модуль pygame 16.1. Особливості розроблення комп’ютерних ігор 16.2. Місце Pygame серед інструментів розробки ігор 16.3. Як встановити Pygame 16.4. Вікно відкривається та закривається 16.5. Сцени та меню 16.6. Анімація в русі 16.7. Управління та зіткнення 16.8. Звуки музики 16.9. Шари та групи 16.10. Цілочисельні координати 16.10.1. Render 16.10.2. Фізика Розділ 17. Модуль NymPy 17.1. Початок роботи 17.1.1. Установка NumPy 17.1.2. Починаємо роботу 17.1.3. Створення масивів 17.1.4. Друк масивів 17.2. Базові операції над масивами 17.2.1. Базові операції 17.2.2. Індекси, зрізи, ітерації 17.2.3. Маніпулювання з формою 17.2.4. Поєднання масивів 17.2.5. Розбиття масиву 17.2.6. Копії та подання 17.3. Random 17.3.1. Шлях перший 17.3.2. numpy.random 17.3.3. Створення масивів 17.3.4. Вибір і перемішування 17.3.5. Ініціалізація генератора випадкових чисел 17.4. Linalg 17.4.1. Підняття ступеня 17.4.2. Розкладання 17.4.3. Деякі характеристики матриць 17.4.4. Системи рівнянь 17.5. 100 NumPy класичних задач Розділ 18. Python для Web через CGI 18.1. CGI пишемо простий сайт на Python 18.1.1. Настройка локального сервера 18.1.2. Hello, world 18.2. Опрацювання форм та cookies 18.2.1. Отримання даних із форм 18.2.2. Уразливість при екрануванні небезпечних символів 18.2.3. Cookies 18.2.4. Опрацювання Cookies 18.3. Приклад додатку 18.4. Публікація в мережі Інтернет Анотація: Навчальний посібник містить матеріал для вивчення основних теоретичних засад, функціональних можливостей та практичного застосування теорії алгоритмів та основ програмування, розроблення прикладних засобів та інформаційних систем аналізу та опрацювання інформації за допомогою алгоритмів на мові Python. Теоретичний та практичний матеріал викладено у доступній формі. Викладання матеріалу супроводжується значною кількістю прикладів, що полегшує його сприйняття та засвоєння. Подається перелік питань та тестів для самоконтролю, а також завдань для самостійного виконання трьох рівнів складності. Навчальний посібник призначений для студентів, що навчаються за спеціальностями 122 "Комп'ютерні науки", 124 "Системний аналіз", 126 "Інформаційні системи та технології" та споріднених спеціальностей, які пов'язані з інформатикою та інформаційними технологіями. Він може бути використаний аспірантами як підґрунтя для наукових досліджень та викладачами як дидактичний матеріал, а також для самостійного вивчення. Книга призначена для спеціалістів із проектування, розроблення та впровадження інтелектуальних систем, систем штучного інтелекту. Інтернет-технологій, фахівців з електронної комерції, Інтернет-маркетингу та Інтернет-реклами, менеджерів комплексних Web-проектів, а також для здобувачів 3-го (освітньо-наукового) рівня вищої освіти в галузі знань 12 "Інформаційні технології". Кожний розділ закінчується переліком питань для самоконтролю, прикладом тестових питань з відповідями та переліком індивідуальних занять для виконання лабораторних робіт.
650 0 4 _aМови програмування
650 0 4 _aPython
700 1 _aОборська, О. В.
710 2 _aМіністерство освіти і науки України
710 2 _aНаціональний університет "Львівська політехніка"
852 _h004.432Python(075.8)
_iВ53
942 _2udc
_cBKS
_h004.432Python(075.8)
_iВ53
_n0
999 _c315
_d315