Складання і виконання алгоритму упорядкування та пошуку значень у масиві
Задача:
Уявіть, що ви – організатор шкільних спортивних змагань. Вам потрібно обробити результати забігу на 100 метрів. Результати представлені у вигляді списку, де кожен елемент – це час, за який учасник пробіг дистанцію.
Напишіть програму, яка:
Приймає на вхід список результатів забігу (час у секундах).
Сортує цей список у порядку зростання (від найменшого часу до найбільшого).
Виводить відсортований список.
Запитує у користувача час для пошуку.
Використовує алгоритм бінарного пошуку для пошуку заданого часу у відсортованому списку.
Виводить повідомлення про те, чи знайдено заданий час, і якщо так, то на якій позиції (індексі) у списку.
Приклад вхідних даних:
results = [12.5, 13.2, 11.8, 14.1, 12.9]
Приклад вихідних даних:
Відсортований список: [11.8, 12.5, 12.9, 13.2, 14.1]
Введіть час для пошуку: 12.9
Час 12.9 знайдено на позиції 2
Програма на Python:
Python
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1
def main():
results = [12.5, 13.2, 11.8, 14.1, 12.9]
results.sort()
print("Відсортований список:", results)
search_time = float(input("Введіть час для пошуку: "))
index = binary_search(results, search_time)
if index != -1:
print(f"Час {search_time} знайдено на позиції {index}")
else:
print(f"Час {search_time} не знайдено")
if __name__ == "__main__":
main()
Інструкція для перевірки в Google Colab:
Відкрийте Google Colab.
Скопіюйте код програми в комірку коду.
Натисніть кнопку "Виконати" (значок відтворення) або натисніть Shift + Enter.
Введіть час для пошуку, коли програма запитає.
Перевірте, чи відповідає вивід програми очікуваним результатам.
Додаткові завдання (для тих, хто хоче ускладнити):
Додайте обробку помилок, щоб програма коректно обробляла некоректні вхідні дані (наприклад, введення нечислових значень).
Реалізуйте інший алгоритм сортування (наприклад, сортування вставками або бульбашкове сортування).
Додайте можливість пошуку не лише одного часу, а й діапазону часів.
Завдання: Розробити простого чат-бота, який відповідає на питання про українську мову, культуру або історію. Чат-бот може надавати інформацію про видатних діячів, цікаві факти про мову, пояснення граматичних правил тощо.
Мета: Розвинути навички програмування та створення штучного інтелекту, поглибити знання учнів про українську мову та культуру.
Завдання: Розробити простого чат-бота, який відповідає на питання про українську мову, культуру або історію. Чат-бот може надавати інформацію про видатних діячів, цікаві факти про мову, пояснення граматичних правил тощо.
Мета: Розвинути навички програмування та створення штучного інтелекту, поглибити знання учнів про українську мову та культуру.
******************************* Озвучення тексту:
Завдання: Записати аудіоверсію відомого українського вірша, оповідання або уривка з книги. Для озвучення можна використовувати спеціальні програми для запису та обробки звуку.
Мета: Розвинути навички роботи зі звуком, навчити учнів виразно читати та декламувати українською мовою.
*********************************
Вікторина:
Завдання: Розробити комп'ютерну вікторину, яка містить питання про українську мову, культуру та історію. Питання можуть бути різного рівня складності та стосуватися різних аспектів мови: граматика, лексика, фразеологія тощо.
Мета: Поглибити знання учнів про українську мову та культуру, розвинути навички програмування та створення інтерактивних завдань.
План створення слайд-шоу на тему: "Мій улюблений актор (акторка)" (Мистецтво, 9 клас)
І. Підготовчий етап
Вибір актора (акторки):
Оберіть актора (акторку), який вас цікавить своєю творчістю, грою, особистістю.
Подумайте, що саме вас приваблює в ньому (ній): талант, харизма, цікаві ролі, внесок у мистецтво тощо.
Збір інформації:
Біографія: роки життя, місце народження, дитинство, початок кар'єри, освіта.
Творчість: фільмографія (найвідоміші ролі, нагороди, цікаві факти про зйомки), театральні роботи, інші види діяльності (режисура, продюсування, озвучування).
Особисте життя: сім'я, захоплення, цікаві історії з життя (за бажанням).
Фото та відео: знайдіть якісні фото актора (акторки) різних років, відео з фільмів, інтерв'ю, церемоній нагородження тощо.
Формулювання ідеї та концепції слайд-шоу:
Яка головна думка вашого слайд-шоу? (Наприклад, "Талант та багатогранність актора", "Актор, який надихає", "Мій улюблений актор - приклад для наслідування").
Яким буде формат слайд-шоу? (Наприклад, біографічний нарис, огляд творчості, аналіз однієї ролі, слайд-шоу-портрет).
Створення таблиці для сортування даних в Excel може бути досить простим процесом. Наведу приклад, як можна організувати дані в таблиці, а також поясню, як потім їх сортувати.
### Приклад таблиці
Уявімо, що у вас є таблиця для відстеження замовлень:
| Номер замовлення | Дата замовлення | Ім'я клієнта | Сума замовлення | Статус |
|------------------|------------------|---------------|------------------|--------------|
| 001 | 2024-12-01 | Іван Петров | 1500 | Виконано |
| 002 | 2024-12-02 | Олена Сидоренко | 2500 | Очікує |
| 003 | 2024-12-05 | Микола Ковалев | 1200 | Виконано |
| 004 | 2024-12-03 | Анна Гриценко | 3000 | Скасовано |
### Сортування даних в Excel
Щоб відсортувати дані в Excel:
1. **Вибір таблиці:**
- Виділіть всю таблицю, включаючи заголовки стовпців.
2. **Сортування:**
- Перейдіть на вкладку "Дані" (Data).
- У групі "Сортування і фільтр" (Sort & Filter) виберіть "Сортування" (Sort).
- У діалоговому вікні виберіть стовпець, за яким потрібно відсортувати (наприклад, "Сума замовлення"), і виберіть сортировку за зростанням або спаданням.
3. **Фільтрація:**
- Щоб ще більше уточнити дані, можна додати фільтри, натиснувши кнопку "Фільтр" (Filter) у тій же групі. Тоді можна буде фільтрувати за статусом, датою або іншими параметрами.
Якщо потрібна додаткова інформація або більше прикладів, будь ласка, дайте знати!
Умова: Створити таблицю оцінок учня за семестр. Використати формули для розрахунку середнього арифметичного балу за кожен предмет, середнього балу за семестр та визначення, чи учень допускається до наступного семестру (наприклад, при середньому балі вище 8).
Коментар:
Ця задача дозволяє закріпити навички роботи з формулами, особливо зі функцією AVERAGE для обчислення середнього значення.
Для визначення допуску можна використати функцію IF, яка повертає різні значення залежно від умови.
Можна додати умовне форматування, щоб виділити оцінки нижче певного порогу.
Задача 2: Аналіз витрат на продукти
Умова: Створити таблицю з переліком продуктів, їхньою кількістю та ціною за одиницю. Використати формули для розрахунку загальної вартості кожного продукту та загальної суми витрат. Побудувати діаграму, яка відобразить структуру витрат.
Коментар:
Ця задача розвиває навички роботи з даними, формулами для обчислень та побудови діаграм.
Можна запропонувати учням додати до таблиці ще один стовпчик з категорією продуктів (наприклад, фрукти, овочі, молочні продукти) та побудувати кругову діаграму для візуалізації розподілу витрат за категоріями.
Задача 3: Моделювання фінансових інвестицій
Умова: Створити таблицю для моделювання зростання банківського депозиту з урахуванням відсоткової ставки та періоду інвестування. Використати формулу складних відсотків для розрахунку суми на рахунку в кінці кожного року. Побудувати графік, який відобразить зміну суми депозиту з часом.
Коментар:
Ця задача дозволяє застосувати знання з математики (складні відсотки) та продемонструвати практичне застосування Excel для фінансових розрахунків.
Можна ускладнити задачу, додавши можливість внесення додаткових вкладів або зняття коштів протягом інвестиційного періоду.
Додаткові поради:
Запропонуйте учням самостійно вибрати дані для таблиць, щоб зробити завдання більш цікавим.
Заохочуйте їх експериментувати з різними функціями та форматуванням.
Обговоріть з учнями отримані результати та зробіть висновки.
Можливі розширення задач:
Використання функцій SUM, COUNT, MAX, MIN для виконання більш складних обчислень.
Створення макросів для автоматизації рутинних дій.
Зв'язування кількох таблиць між собою.
Використання зовнішніх даних (наприклад, курси валют з інтернету).
Ці задачі допоможуть учням не тільки освоїти основні функції Excel, але й розвинути логічне мислення, аналітичні навички та вміння працювати з інформацією.