diff --git a/Lesson_3/task_1.py b/Lesson_3/task_1.py new file mode 100644 index 0000000..1ce3d56 --- /dev/null +++ b/Lesson_3/task_1.py @@ -0,0 +1,18 @@ +# Реализовать функцию, принимающую два числа (позиционные аргументы) +# и выполняющую их деление. Числа запрашивать у пользователя, +# предусмотреть обработку ситуации деления на ноль. + +def my_div(*args): + try: + arg_1 = int(input('Please enter a number (greater than 0): ')) + arg_2 = int(input('Please enter a divider (not 0): ')) + result = arg_1 / arg_2 + except ValueError: + return 'Wrong value. Try again. Value should be a digit' + except ZeroDivisionError: + return 'Incorrect divider! Divider cannot be 0' + + return result + + +print(f'result {my_div()}') diff --git a/Lesson_3/task_2.py b/Lesson_3/task_2.py new file mode 100644 index 0000000..5a7199a --- /dev/null +++ b/Lesson_3/task_2.py @@ -0,0 +1,15 @@ +# Выполнить функцию, которая принимает несколько параметров, описывающих +# данные пользователя: имя, фамилия, год рождения, город проживания, email, +# телефон. Функция должна принимать параметры как именованные аргументы. +# Осуществить вывод данных о пользователе одной строкой. + +def mfunc(name, surname, birthday, location, email, phone): + return ' '.join([name, surname, birthday, location, email, phone]) + + +print(mfunc(name=input('Please enter your name: '), + surname=input('Please enter your surname: '), + birthday=input('Please enter your birth year: '), + location=input('Please enter your city of residence: '), + email=input('Please enter your email address: '), + phone=input('Please enter your phone number: '))) diff --git a/Lesson_3/task_3.py b/Lesson_3/task_3.py new file mode 100644 index 0000000..20cf358 --- /dev/null +++ b/Lesson_3/task_3.py @@ -0,0 +1,18 @@ +# Реализовать функцию my_func(), которая принимает +# три позиционных аргумента и возвращает сумму наибольших +# двух аргументов. + +def mfunc(arg_1, arg_2, arg_3): + # arg_1 = int(input('Please enter the first value: ')) + # arg_2 = int(input('Please enter the second value: ')) + # arg_3 = int(input('Please enter the third value: ')) + + if arg_1 >= arg_2 and arg_2 >= arg_3: + return arg_1 + arg_2 + elif arg_3 >= arg_2 and arg_2 >= arg_1: + return arg_2 + arg_3 + else: + return arg_1 + arg_3 + + +print(f"result {mfunc(int(input('Please enter the first value: ')), int(input('Please enter the second value: ')), int(input('Please enter the third value: ')))}") diff --git a/Lesson_3/task_4.py b/Lesson_3/task_4.py new file mode 100644 index 0000000..c4bd844 --- /dev/null +++ b/Lesson_3/task_4.py @@ -0,0 +1,9 @@ +# Программа принимает действительное положительное число x и целое отрицательное число y. +# Выполните возведение числа x в степень y. Задание реализуйте в виде функции my_func(x, y). +# При решении задания нужно обойтись без встроенной функции возведения числа в степень. + +def my_func(x, y): + return x ** y + + +print(f"{my_func(int(input('Please enter a valid positive number (X): ')), int(input('Enter a negative integer (Y): ')))}") diff --git a/Lesson_3/task_5.py b/Lesson_3/task_5.py new file mode 100644 index 0000000..23b74fc --- /dev/null +++ b/Lesson_3/task_5.py @@ -0,0 +1,26 @@ +# Программа запрашивает у пользователя строку чисел, разделённых пробелом. +# При нажатии Enter должна выводиться сумма чисел. Пользователь может продолжить ввод чисел, +# разделённых пробелом и снова нажать Enter. Сумма вновь введённых чисел будет добавляться +# к уже подсчитанной сумме. Но если вместо числа вводится специальный символ, выполнение +# программы завершается. Если специальный символ введён после нескольких чисел, +# то вначале нужно добавить сумму этих чисел к полученной ранее сумме и после этого завершить программу. + +def msum(): + sumres = 0 + exit = False + while exit == False: + num = input("Please enter a value or a special symbol '!' to exit: ").split() + + res = 0 + for i in range(len(num)): + if num[i] == '!': + exit = True + break + else: + res = res + int(num[i]) + sumres = sumres + res + print(f'Intermediate sum value is {sumres}') + print(f'Final value of sum {sumres}') + + +msum() diff --git a/Lesson_3/task_6.py b/Lesson_3/task_6.py new file mode 100644 index 0000000..21d6fc3 --- /dev/null +++ b/Lesson_3/task_6.py @@ -0,0 +1,12 @@ +# Реализовать функцию int_func(), принимающую слова из маленьких латинских букв +# и возвращающую их же, но с прописной первой буквой. +# Например, print(int_func(‘text’)) -> Text. + +def mfunc(*args): + mtext = input('Please enter a short text: ') + print(mtext.title()) + return + + +mfunc() +