6. У програмах описаних завдань автори припустились деяких по- милок. Відшукайте помилки. Обговоріть їх у парі. Запропонуйте одне одному шляхи вирішення. 1) Дано два цілих числа a i b (a s b). Виведіть усі числа від а до b включно. a=int(input('Введіть перше число')) b=int(input('Введіть друге число')) for i in range (a, b) : print (i) 2) Дано натуральне число п. Знайдіть п! (добуток всіх натураль- них чисел, що не перевищує п, тобто 1*2*3*...*n). n=int(input()) p=1 for i in range (1, n+1): p*=i print (p) 3) У перший день спортсмен пробіг х кілометрів, а потім він кож- ного дня збільшував пробіг на 10 % від попереднього значення. За даним числом у визначте номер дня, за який пробіг спортсме- на становитиме не менше у кілометрів. x = int(input()) y = int(input () ) 2 = 1 while x < y: x = x * 1,1 z = 2 + 1 print(z) Працюємо самостійно
![](https://st.uroker.com/files/8b4/8b47dd3ed32784ca52db3eb6d723bf97.jpg)
Ответы
Ответ:
1.Помилка полягає в тому, що діапазон range не включає останнє значення, тому останнє число b не виведеться. Треба змінити діапазон на range(a, b+1) або використати цикл while:
a = int(input('Введіть перше число: '))
b = int(input('Введіть друге число: '))
for i in range(a, b+1):
print(i)
2.У програмі описаному в завданні 2, помилок немає. Програма коректно виконує обчислення факторіалу натурального числа n.
Для того, щоб обчислити факторіал числа n, необхідно ввести n за допомогою функції input(). Далі створюємо змінну p, присвоюємо їй значення 1 і за допомогою циклу for обчислюємо добуток всіх чисел від 1 до n. Результат виводимо за допомогою функції print().
3.Помилка полягає в тому, що знак коми не може бути використаний в якості десяткового роздільника в Python. Треба замінити кому на крапку. Крім того, змінна "z" не обчислює номер дня, потрібно замінити 2 на змінну, яка містить номер дня.
x = int(input())
y = int(input())
day = 1
while x < y:
x *= 1.1
day += 1
print(day)