УРОК 5

Функція def мовою Python

Продовжуємо розглядати функцію def. Розгляньте задачу і її розв'язок. У кінці представлений розв'язок мовою Python, який містить помилки. Знайди їх, виправи та надішли отриманий результат на електронну скриньку yulyav87@gmail.com або на номер телефону 0988307760. Дане завдання оцінюється у 2 бали.

Також нижче представлений тест. Максимальна оцінка (при умові, що всі відповіді правильні 10 балів.

Тест +задача =12 балів


Задача “Min.py”

Дано цілі числа a, b, c і d. Знайти найменше серед них.

Контрольні приклади

1) a= 12, b=35, c= 0, d= -2 => min= -2

2) a= -12, b=140, c= -700, d= 41 => min= -700

Розв’язання

Порівнювати відразу 4 числа складно. Якщо всі числа - різні, то потрібно буде прописати 4 складені умови:

якщо (a<b) і (a<c) і (a<d)

то min=a

все

якщо (b<a) і (b<c) і (b<d)

то min=b

все

якщо (c<a) і (c<b) і (c<d)

то min=c

все

якщо (d<a) і (d<b) і (d<c)

то min=d

все

Якщо ж серед даних чотирьох чисел є однакові, то умови значно ускладняються.

Спробуємо іншу ідею: по черзі розглядатимемо пари чисел та шукатимемо серед них найменше.

Розглянемо перший контрольний приклад: a= 12, b=35, c= 0, d= -2.

1 крок. Розглядаємо пару a= 12, b=35. Оскільки 12<35, то min=12.

2 крок. Порівнюємо знайдене значення min=12 із наступним числом c=0. 0<12, тому min=0.

3 крок. Нове значення min=0 порівнюємо з 4-им числом d= -2. Оскільки -2<0, то min= -2.

Для розв’язання задачі таким способом потрібно просто вміти знаходити менше серед 2-ох чисел і послідовно застосовувати його до пар заданих значень.

Розглянемо допоміжний алгоритм знаходження меншого серед 2-ох значень та відповідну функцію мовою Python.

Нехай маємо два числа x і y. Щоб знайти менше серед них, їх слід порівняти. Якщо x<y, то меншим є x, інакше меншим вважаємо y.

якщо x<y

то m=x

інакше m=y

все

Слід зазначити, що випадок інакше передбачає 2 варіанти (x>y і x=y). Якщо x>y, то очевидно, що m=y. Якщо x= y, то нам байдуже, яке число вважати меншим. Тому спокійно можемо записувати, що m=y.

Напишемо функцію Menshe2(x, y) для знаходження меншого серед 2-ох чисел x і y.

def Menshe2(x, y):

if x<y:

m=x

else:

m=y

return m

Знайдемо менше серед 4-ох чисел a, b, c і d.

За допомогою функції Menshe2 порівняємо числа a і b, знайдену відповідь запишемо у змінну min.

min= Menshe2(a, b)

Порівняємо знайдене значення min та третє число c, оновимо значення змінної min.

min= Menshe2(min, c)

Порівняємо знайдене значення min та четверте число d, оновимо значення змінної min.

min= Menshe2(min, d)

ПРОГРАМА

Знайди помилки і виправи їх.

def Menshe2(x,y):

if x<y

m=x

else

m=y

return m

a=input('a=')

b=input('b=')

c=input('c=')

d=input('d=)

Min= Menshe2(a,b)

min= Menshe2(min,c)

min= Menshe2(min,d)

print min

ТЕСТ

Зверніть увагу! Максимальний бал 10 . Тести необхідно виконати до 01. 05 до 17.00. Результат тесту надсилати НЕ потрібно. ТЕСТ виконуємо ЛИШЕ 1 раз. Вказуємо своє прізвище та ім'я.