Інформація про новину
  • Переглядів: 2804
  • Дата: 28-09-2020, 03:48
28-09-2020, 03:48

16. Моделювання в табличному процесорі та в Phyton. Невизначений цикл

Категорія: Інформатика





Попередня сторінка:  15. Вкладені цикли в Phyton
Наступна сторінка:   17. Алгоритми і програми у моїй професі...

 

Змоделюємо політ кинутого вперед м’яча. Задача така: перебуваючи над поверхнею Землі на певній висоті, людина кидає вперед м’яч. Нам цікаво, де опиниться м’яч через певний час (чи вже впаде, а якщо ще ні —

то в якій точці над Землею він буде). Також ми хочемо побудувати траєкторію руху м’яча.

Інакше кажучи, ми моделюємо вільне падіння тіла. Наша модель дасть змогу визначити, у якій точці перебуватиме тіло, кинуте з висоти h із початковою швидкістю и0, через t секунд.

Положення тіла визначатиметься двома координатами: х — віддалення від місця кидка по горизонталі; у — поточна висота.

Вільним падінням називають падіння тіл на Землю без урахування опору повітря. Прискорення, з яким падають на Землю тіла, називається прискоренням вільного падіння, позначається літерою# і становить 9,8 м/с2.

Наша модель буде формульною, оскільки одні величини виражатимуться формулами через інші. У такій моделі завжди є незалежні та залежні величини (тобто ті, що залежать від інших величин).

Переглянь схему, що зображує зв’язок величин у моделі, і вкажи, які з величин х, у, t, h та v0 будуть залежними, а які — ні.

Отже, нам потрібно шукати координати х (дальність, де буде перебувати м’яч під час польоту) та у (висота, яка буде постійно зменшуватися у міру падіння м’яча). Значення х та у не будуть постійними. Вони змінюватимуться у міру того, як змінюється ще одна величина — t (час). На те, як саме х та у залежатимуть від f, впливатимуть початкова швидкість и0 та початкова висота h.

Укажи, як варто пов’язати константи: h та и0, а також три змінні величини: t, х та у, щоб побудувати зображену траєкторію. Із чотирьох тверджень вибери 2 правильних:

• і задати як послідовність значень часу;

• х та у виразити через t,h \v0 за допомогою формул;

• h виразити через v0 за допомогою формул;

• t виразити через константи h і v за допомогою формул.

Константою називається величина, яка не змінюється під час розв’язування задачі.

Здогадайся, за якою формулою визначити, на якій дальності х перебуватиме через t секунд м’яч, кинутий із початковою швидкістю v .

Як, натвою думку, виглядатиме залежність висоти у від початкової висоти h і часу t?

Запиши обрану формулу в зошит.

Створи таблицю за зразком і надай імена клітинкам ЕЗ та F3, де зберігатимуться константи — початкова швидкість и0 і початкова висота h.

Щоб надати ім’я клітинці, виділи її та введи ім’я в поле «ім’я» над лівим верхнім кутом аркуша.

Обчисли х — горизонтальну координату м’яча, кинутого із початковою швидкістю v0, через t секунд.

1.3а допомогою автозаповнення задай значення часу від 0 до 10 з кроком 0,1.

2. Введи формулу для обчислення значення х у клітинку ВЗ і скопіюй її вниз.

Щоб згадати, як виконують автозаповнення та копіюють формули, переглянь рубрику «Запитання - відповіді» в розділі 7.

Визнач залежність висоти у від початкової висоти h та часу t. Введи обрану під час побудови моделі формулу в клітинку СЗ і скопіюй її вниз.

Побудуй графік польоту м’яча.

Виділи стовпці В і С (Дальність і Висота).

Вибери меню Вставлення, в області Діаграми натисни кнопку

Ініціалізуємо використані в моделі змінні, тобто забезпечимо їх введення з клавіатури або присвоїмо їм початкові значення.

Створи в Python програму, що реалізовуватиме модель польоту м’яча. Ініціалізуй у моделі змінні за шаблоном, записавши на місці пропусків команди або значення.

Проаналізуємо дані, одержані в табличному процесорі. З таблиці видно, що, починаючи з деякого кроку, значення висоти у набуває від’ємних значень. Це означає, що м’яч опустився «нижче землі». Звичайно, цього не може бути.

Щоб не обчислювати від’ємні значення висоти, слід зупинитися, щойно буде у<0. Для цього можна скористатися циклом while, який виконується, поки справджується певна умова.

Склади за шаблоном основний цикл програми, що обчислює траєкторію руху кинутого вперед м’яча. Після слова while вкажи умову, яка убезпечить від ситуації, коли м’яч опиниться «нижче землі». Обчислення мають виконуватися, поки справджується ця умова.

Також, користуючись формулами з електронної таблиці, запиши формули для обчислення значень t, х та у в Python.

Перевір роботу програми. Порівняй одержані дані з отриманими в табличному процесорі.

Дані, які відображає програма, можуть бути незручними для сприйняття:

Сприймати такі числа буде значно легше, якщоїхокругл ити. Як це зробити, див. у рубриці «Запитання - відповіді» в кінці розділу 12. Округли всі дані, що виводяться, до одного десяткового знака після коми.

Тепер за результатами обчислень побудуємо графік польоту м’яча.

Подумай, якої однієї команди з числа перелічених нижче буде достатньо для побудови графіка в Python, без осей координат і підписів.

Додай цю команду до основного циклу програми. Не забудь підключити на початку програми модуль turtle. Перевір її роботу.

Додай до програми команди малювання осей координат та відображення значень початкової висоти h і відстані х від місця кидка, наякій приземлиться м’яч. Щоб вивести в графічному вікні значення, скористайся командою turtle.write(3Ha4eH-ня). Перевір роботу програми.

Змінюючи значення початкової висоти та швидкості, переглянь, як змінюватиметься графік польоту м’яча.

Зроби висновки

1. Як впливає на траєкторію і дальність польоту м’яча зміна висоти, з якої його кинуто?

2. Як впливає на траєкторію і дальність польоту м’яча зміна початкової швидкості польоту?

3. Між якими величинами в моделі польоту м’яча існують функціональні залежності? (Визначення цього поняття згадай з курсу алгебри.)

Нехай v — це відсоток, який банк нараховує на суму вкладу, х — поточна сума вкладу, у — сума вкладу через рік. Яка з наведених формульних моделей пов’язує зазначені величини?

Перш ніж реалізовувати обрану модель у табличному процесорі, треба розібратися, як опрацьовує табличний процесор значення з відсотками.

Введи у будь-яку клітинку значення 20 %, а потім задай для цієї клітинки числовий формат за допомогою кнопки

Яке значення отримано? Що буде, якщо ввести 100 % чи 1 %, а потім задати числовий формат клітинок?

Спробуй пояснити, чому так виходить, і порівняй своє пояснення з тим, що наведено в рубриці «Запитання - відповіді».

Створи за зразком в електронній таблиці модель, що демонструє, як змінюватиметься протягом 10 років сума вкладу для введеної користувачем відсоткової ставки та початкової суми.

Створи «шапку» таблиці. Значення років введи за допомогою автозаповнення. Для клітинки В1 задай відсотковий формат, а для діапазону В2:В12 — грошовий.

Надай ім’я v клітинці В1, що містить банківський відсоток.

Введи в клітинку ВЗ формулу, що відповідає обраній моделі. У формулі має використовуватися ім’я іл

Скопіюй формулу в діапазон ВЗ:В12.

Створи програму, що реалізує економічну модель «Вклад з капіталізацією відсотків». Користувач має вводити банківський відсоток, початкову суму вкладу та кількість років, а програма виводитиме суму вкладу наприкінці кожного року.

ЗАПИТАННЯ - ВІДПОВІДІ

Що таке формульна модель?

Формульна модель — це набір формул, які виражають залежність одних величин від інших. Величини, що обчислюються за формулами, називаються залежними, решта — незалежними. Незалежним величинам присвоюються певні фіксовані значення (константи) або їх може вводити користувач (у такому разі їх називають також параметрами моделі).

Як дати ім'я клітинці чи діапазону клітинок електронної таблиці?

Потрібно виділити цю клітинку або діапазон, ввести ім’я в полі імені, що розташоване зліва від рядка формул, і натиснути Enter. Наприклад, на ілюстрації найменовано діапазон А2:ВЗ.

Якщо під час введення формули клацнути клітинку, якій надано ім’я, то у формулу буде автоматично додано не адресу клітинки, а саме це ім’я.

Яка Існує відповідність між відсотковими та числовими значеннями в табличному процесорі?

Відсоткове значення відповідає у 100 разів меншому числовому значенню, наприклад 50 % — це 0,5,5 % — це 0,05. Таке співвідношення випливає з означення відсотка: відсоток — це частка від цілого, збільшена в 100 разів.

Що таке ініціалізація змінних?

Надання змінним початкових значень називається їх ініціалізацією. Змінні можна ініціалізувати, присвоївши їм певні значення або забезпечивши їх введення користувачем. Якщо використовувати змінні в обчисленнях, не ініціалізувавши їх, то під час виконання програми виникне помилка, оскільки програма намагатиметься використати невідомі значення змінних.

Що таке невизначений цикл? Як запрограмувати його в Python?

Цикл називається невизначеним, якщо він виконується не визначену кількість разів, а поки справджується певна умова. Ось запис цього циклу в Python та його блок-схема.

Як вивести написи у графічному вікні?

Для додавання написів у графічному вікні в поточному положенні курсора використовують команду write:

 

 

Це матеріал з підручника Інформатика за 7 клас Коршунова

 




Попередня сторінка:  15. Вкладені цикли в Phyton
Наступна сторінка:   17. Алгоритми і програми у моїй професі...



^