Цілі
- Застосовувати всі вивчені концепції у складніших програмах
- Розвивати самостійні навички вирішення проблем
- Планувати та структурувати програми
Складні проекти
Проект 1: Інтерактивний калькулятор
Напишіть комплексну програму калькулятора, яка:
- Запитує у користувача два числа
- Запитує про бажану операцію (+, -, *, /, степінь)
- Обчислює та відображає результат
- Запитує, чи слід виконати ще одне обчислення
- Показує повідомлення про помилку при діленні на 0
Використовуйте:
- Введення користувача з
input()
- Функції для кожного типу обчислення
- Цикл while для повторення
- Складні умови для перевірки введення
Проект 2: Генератор візерунків
Створіть програму, яка пропонує користувачеві різні візерунки на вибір:
- "1" для Спіралі: Малює спіраль з 50 кроків
- "2" для Квітки: Малює 8 кіл навколо центральної точки
- "3" для Вибуху зірки: Малює 20 ліній від центру назовні
- "4" для Випадкового мистецтва: 15 випадкових форм у випадкових кольорах
- "5" для Райдужної спіралі: Спіраль зі змінними кольорами
Вимоги:
- Використовуйте окрему функцію для кожного візерунка
- Використовуйте цикли та випадкові числа
- Дозвольте користувачеві вводити параметри (наприклад, розмір, кількість)
Проект 3: Геометрична вікторина
Напишіть інтерактивну програму вікторини:
- Генеруйте випадкові геометричні задачі:
- Довжина кола при заданому радіусі
- Площа прямокутника при заданих сторонах
- Кути трикутника (180° - інші кути)
- Запитайте користувача про рішення
- Порівняйте з правильною відповіддю
- Ведіть статистику (правильні/неправильні відповіді)
- Дайте оцінку в кінці
Проект 4: Галерея мистецтва черепашки
Створіть програму, яка малює різні твори мистецтва:
python
def фрактальне_дерево(довжина, кут, глибина):
"""Малює фрактальне дерево"""
if глибина == 0:
return
t.forward(довжина)
t.left(кут)
фрактальне_дерево(довжина * 0.7, кут, глибина - 1)
t.right(2 * кут)
фрактальне_дерево(довжина * 0.7, кут, глибина - 1)
t.left(кут)
t.backward(довжина)
def мандала(розмір, деталі):
"""Малює мандалу"""
for i in range(деталі):
t.circle(розмір)
t.right(360 / деталі)
Складні окремі завдання
Завдання 1: Гра вгадування чисел
Запрограмуйте гру вгадування чисел:
- Комп'ютер вибирає випадкове число між 1-100
- Користувач вгадує, комп'ютер дає підказки ("занадто високо", "занадто низько")
- Рахуйте кількість спроб
- Після гри: Статистика попередніх ігор
Завдання 2: Графічний редактор черепашки
Створіть простий графічний редактор:
- Меню з різними варіантами малювання
- Користувач може вибирати кольори
- Доступні різні фігури
- Функція "гумки" (білий колір)
- Збереження/завантаження малюнків (як список координат)
Завдання 3: Генератор лабіринтів
Генеруйте прості лабіринти:
- Створіть сітку з ліній
- Випадково видаляйте стіни для створення шляхів
- Переконайтеся, що старт та фініш досяжні
- Бонус: Автоматично вирішіть лабіринт
Завдання 4: Симуляція погоди
Симулюйте дані погоди:
- Генеруйте випадкові температури протягом 30 днів
- Обчисліть середнє, максимум, мінімум
- Намалюйте просту діаграму температур
- Прогноз на наступний день на основі тенденції
Критерії оцінювання проектів
При оцінюванні ваших проектів я звертаю увагу на:
- Функціональність: Чи працює програма без помилок?
- Якість коду: Чи код чисто структурований та прокоментований?
- Використання концепцій: Чи функції, цикли, умови використовуються осмислено?
- Креативність: Власні ідеї та розширення
- Вирішення проблем: Як вирішуються виклики?
Поради для великих проектів
- Плануйте спочатку: Подумайте про хід виконання, перш ніж кодувати
- Маленькі кроки: Програмуйте маленькими, тестованими секціями
- Тестуйте часто: Регулярно запускайте свою програму
- Коментуйте: Пояснюйте складні частини в коді
- Просіть допомоги: При проблемах не боріться занадто довго самостійно
Підсумок курсу
У цьому курсі Python ви навчилися:
- Змінні та типи даних: Зберігати та обробляти дані
- Умови: Дозволяти програмам приймати рішення
- Цикли: Змушувати код повторюватися
- Функції: Структурувати та повторно використовувати код
- Бібліотеки: Використовувати готові функції
- Введення користувача: Створювати інтерактивні програми
З цими інструментами ви вже можете писати багато цікавих програм. Це лише початок вашої подорожі програмування!