6.11. Цикл з передумовою (Lazarus) | 8 клас | Ривкінд
Вставка
- Опубліковано 16 кві 2022
- 8 клас. Практичні завдання з інформатики за підручником Й.Я.Ривкінда 2021 року.
6.11. Цикл з передумовою.
Виконано в Lazarus.
Задача Побудуйте математичну модель і створіть проект для визначення, на скільки років вкладник має покласти х грн до банку, щоб отримати від банку не менше ніж а грн, якщо банк щорічно збільшує вклад на р %.
Побудуємо математичну модель для цієї задачі:
• вхідні дані: сума вкладених грошей (х), щорічне збільшення вкладу (р %), сума грошей, не менше якої потрібно отримати від банку (а);
• кінцеві результати: кількість років (л);
• формули: сума грошей через кожний рік: х = х + х*р/100 Відповідний проект мовою програмування наведено на малюнку.
Перед циклом змінній п для кількості років присвоюється значення 0, тому що вкладник тільки поклав суму х грн у банк. Вклад буде лежати в банку доти, доки він буде менше потрібної суми а грн. Вкладник забере гроші з банку тільки тоді, коли сума грошей стане рівною або перевищить а грн. Тому логічним виразом циклу з передумовою буде нерівність х менше а
У тілі циклу дві команди: перша для обчислення суми вкладу через рік (х := х + х *р /100), а друга для збільшення кількості років на 1 (n := n * 1).
Змінна л - кількість років набуває в проекті тільки цілих значень, а всі інші змінні можуть набувати як цілі, так і дробові значення.
1. Відкрийте вікно середовища розробки.
2. Розмістіть на формі поля, написи і кнопку, як це наведено на малюнку.
3. Створіть заготовку процедури - обробник події Click для кнопки.
4. Уведіть фрагмент проекту, наведений на малюнку.
5. Збережіть проект у папці з іменем Вправа 6.11, створеній у вашій папці.
6. Запустіть проект на виконання.
7. Уведіть для тестування проекту набір вхідних даних, для якого команди тіла циклу не виконуватимуться жодного разу, наприклад, х = 1000. р = 20. а = 500.
8. Проаналізуйте результат виконання проекту та порівняйте його з очікуваним.
9. Уведіть для тестування проекту набір вхідних даних, щоб команди тіла циклу виконувалися 1 раз. Запишіть його в зошит.
10. Проаналізуйте результат виконання проекту та порівняйте його з очікуваним.
11. Виконайте проект ще для 2-3 наборів вхідних даних. Запишіть у зошит ці набори та відповідні результати виконання проекту.
12. Закрийте всі відкриті вікна.
Переглянути та завантажити текст практичного завдання (сайт авторів підручника): drive.google.com/file/d/1BZ9c...
Підтримати мою роботу: donatello.to/TaskInformatics
Підтримати мою роботу на Patreon: / taskinformatics
дуже Вам дякую, дійсно допомогли)
Топ
Клас
Дуже гарно. Можна завдання 6.11.6?
Відео до завдань в кінці параграфа не створюю. Алгоритм виконання може бути такий:
1. Присвоюєте змінним x та y потрібні значення
2. Оголошуєте змінну в якій буде зберігатися загальна кількість виготовлених деталей (result) і присвоюєте їй значення y
result = y
3. Далі буде цикл з передумовою
ПОКИ x
@@TaskInformatics дуже вдячна )
Підкажіть, будь ласка, як побудувати математичну модель для задачі:" за скільки годин турист подолає відстань 20км, якщо за першу г. він пройшов 6 км, а за кожну наступну годину проходить на 1км менше, ніж за попередню".
Вхідні дані - це змінні які вводите. Тобто відстань, яку має подолати турист s та відстань, яку подолав турист за 1 год - s1.
А також змінна t в якій буде зберігатися кількість годин і надаєте їй початкового значення 1
Кінцеві результати - це змінна в якій зберігається результат. Наприклад result.
Виконується команда циклу з передумовою:
1. Обчислюється значення логічного виразу s
@@TaskInformatics Дуже вдячний вам!!
можете будь ласка залишати скопійований програмний код у коментарях або описі під відео,буває треба бистро все зробити,а код вожу довго,бувають помилки і потрібно їх шукати....
Вибачте, але канал створений для допомоги при розв’язуванні завдань з шкільної інформатики. Тобто є відео, і залишається завдання зробити. Поки сам не зробиш, не навчишся :)
Вы делали задание на ст.208, раздел 6, пункт 6.6, проект 6.6.1?
Вам не вдасться його виконати. Потрібно відкрити проєкт з іменем Проєкт 6.6.1, який мають підготувати автори підручника. Але на даний момент цього проєкту на сайті авторів підручника немає.
@@TaskInformatics хорошо спасибо
Якщо можете, то будь ласка допоможіть з кодом. В середовищі Lazarus. Є дві корови, які дають молоко. Потрібно підрахувати загальну кількість молока. І загальну вартість. Наприклад за 1 літр 7 грн. Будь ласка !
Подивіться відео з 7:00 даної задачі ua-cam.com/video/JiuPG7TVNQ8/v-deo.html
Алгоритм виконання схожий. Потрібно переробити під свою задачу
а що мені робити якщо поле замістиь едіт123 не хоче робитися пустим
Що маєте на увазі, що не хоче робитися пустим?
@@TaskInformatics я кажу, у мене поле name, там де вписано edit1(2,3), не робиться пустим як у вас на відео, у мене замість цього пише помилку що такий формат імені неправильний. що робити?(
Потрібно очищати не Name, а Text
@@TaskInformatics дякую, вибачте
Можеш провірили умову задачі будь ласка.У мене у першому рядку висвічує помилку.Не можу зрозуміти яка.
Vl, Vt, Vv= map((int,input("Відстали леви, тигри,вчительки")).split())
Sh=int(input("Швидкість хлопця"))
Vl=int(input("Швидкість лева"))
Vt=int(input("Швидкість тигра"))
Vv=int(input("Швидкість чительки"))
Sh= Sh*8
St = St*8-St
Sl = Sl*8-Sl
Sv = Sv*8-Sv
if Sh > St:
print ("Не наздогнали хлопця тигри")
else:
print ("Наздогнали хлопця тигри")
if Sh > Sl:
print("Не наздогнали хлопця леви")
else:
print("Наздогнали хлопця леви")
if Sh > Sv:
print("Не наздогнали хлопця вчителі")
else:
print("Наздогнали хлопця Вчителі")
Одні дужки зайві
Vl, Vt, Vv= map(int,input("Відстали леви, тигри,вчительки").split())
Вводите числа через пробіл
1 2 3
@@TaskInformatics Вибачте.Я не понимаю куда уводить числа
В консоль. Раз у вас з'явилася помилка, значит кудись вводили. От туди і потрібно
@@TaskInformatics Дякую
А можете сделать практическая номер 12?
Lazarus чи Python?
@@TaskInformatics Python
@@TaskInformatics практична номер 12 сторінка 248
Відео ще не опублікував, але можете переглянути за посиланням ua-cam.com/video/3DyADRSDqnk/v-deo.html
@@TaskInformatics а можете також за лазарус?
Допоможете виконати завдання 7 на ст. 247? Lazarus
Алгоритм виконання може бути такий:
1. Додаєте на форму текстові написи Label, тестові поля Edit та кнопку Button.
2. Створюєте подію для кнопки OnClick
3. Оголошуєте змінні після var в яких буде зберігатися відстань, яку має подолати турист s, відстань яку подолав турист за 1 год s1,
змінну t в якій буде зберігатися кількість годин, і в якій буде зберігатися загальна відстань (result)
4. Присвоюєте початкове значення змінним
s := 20;
s1 := 6;
result := s1;
t :=1;
5. Далі буде цикл з передумовою while, де умова входження в цикл s
@@TaskInformatics дуже дякую!! Все максимально зрозуміло.
можете допомогти з завданням 7 на сторінці 247?
пайтон)
Відео до завдань в кінці параграфа не створюю. Алгоритм виконання може бути такий:
1. Присвоюєте змінним відстань, яку має подолати турист і відстань яку подолав турист за 1 год
s = 20
s1 = 6
2. Оголошуєте змінну в якій буде зберігатися загальна відстань (result) і присвоюєте їй значення за першу годину
result = s1
3. Оголошуєте змінну t в якій буде зберігатися кількість годин і надаєте їй початкового значення 1
4. Далі буде цикл з передумовою
while s
@@TaskInformaticsне працюе😢 або ми щось не так ввели , ну тоб то надпись синя є а коли вводити результат нічого не поисходить
@@mimi.birfljsay3767 Скопіюйте свій код в коментар. Подивлюся
Допоможіть будь ласка з завданням 6.11.8 на ст. 247 🙏🏻🙏🏻🙏🏻
Відео до завдань в кінці параграфа не створюю.
Вводите код, що в таблиці і дивитися результат
Практична номер 12. Лазарус, будь ласка
Завтра буде
Я писав по дпрошдим відео.нащод задачі
Можете допомогти з завданням 8 на ст. 247🙏🏻🙏🏻😭😭
Відео до завдань в кінці параграфа не створюю.
На скільки менше число вводите в тестове поле Edit. Як додавати компоненти на форму (текстове поле та кнопку) можете подивитися у відео ua-cam.com/video/1DbHEhBjSh4/v-deo.html
Тут потрібно цикл використовувати. Скільки чисел потрібно не вказано, тому використати цикл з передумовою while.
З циклу виходимо коли число стане не додатне
while number_next > 0 do // додатні числа
Begin
number_next := number_next-number; // кожне наступне число менше від попереднього на number_next
sum := sum+number_next; // сумуємо всі числа
counter :=counter+1; // збільшуємо лічильник на 1
end;
Виводите результат також в текстовому полі Edit або текстовому написі Label. Середнє арифметичне це sum/counter
Не забудьте оголосити всі потрібні змінні і присвоїти їм початкових значень.
Сігмо