Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions task_1_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Задание №1
# Реализовать функцию, принимающую два числа (позиционные аргументы) и выполняющую их
# деление. Числа запрашивать у пользователя, предусмотреть обработку ситуации деления на
# ноль.

def div_numbers():
''' Запрашивает два числа и выдает результат деления одного на другое'''
try:
num_1 = float(input('Введите число которое будет делиться: '))
num_2 = float(input('Введите число для делителя: '))
result = num_1 / num_2
except ZeroDivisionError:
print('Деление на ноль!')
return
return result


print(div_numbers())


18 changes: 18 additions & 0 deletions task_2_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Задание №2
# Выполнить функцию, которая принимает несколько параметров, описывающих данные
# пользователя: имя, фамилия, год рождения, город проживания, email, телефон. Функция
# должна принимать параметры как именованные аргументы. Осуществить вывод данных о
# пользователе одной строкой.

def data_entry():
name = input('Введите имя: ')
surname = input('Введите фамилию: ')
year_birth = input('Введите год рождения: ')
city_residence = input('Введите город проживания: ')
email = input('Введите email: ')
telephone = input('Введите телефон: ')
data = ' '.join([name, surname, year_birth, city_residence, email, telephone])
return data


print(data_entry())
17 changes: 17 additions & 0 deletions task_3_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Задание №3
# Реализовать функцию my_func(), которая принимает три позиционных аргумента и
# возвращает сумму наибольших двух аргументов.

def my_func(arg_1, arg_2, arg_3):
if arg_1 > arg_3 and arg_2 > arg_3:
return arg_1 + arg_2
elif arg_1 > arg_2 and arg_3 > arg_2:
return arg_1 + arg_3
else:
return arg_2 + arg_3


arg_1 = float(input('Введите первый аргумент:'))
arg_2 = float(input('Введите второй аргумент:'))
arg_3 = float(input('Введите третий аргумент:'))
print(my_func(arg_1, arg_2, arg_3))
29 changes: 29 additions & 0 deletions task_4_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Задание №4
# Программа принимает действительное положительное число x и целое отрицательное число
# y. Выполните возведение числа x в степень y. Задание реализуйте в виде функции
# my_func(x, y). При решении задания нужно обойтись без встроенной функции возведения
# числа в степень.
# Подсказка: попробуйте решить задачу двумя способами. Первый — возведение в степень с
# помощью оператора **. Второй — более сложная реализация без оператора **,
# предусматривающая использование цикла.

def my_func(x, y):
result = 1 / (x ** abs(y))
return result


def my_func_1(x, y):
result = x * x
i = 2
while i < abs(y):
result = result * x
i += 1
result = 1 / result
return result


x = float(input('Введите число: '))
y = int(input('В какую отрицательную степень нужно возвести число:'))

print(my_func(x, y))
print(my_func_1(x, y))
25 changes: 25 additions & 0 deletions task_5_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Задание №5
# Программа запрашивает у пользователя строку чисел, разделённых пробелом. При нажатии
# Enter должна выводиться сумма чисел. Пользователь может продолжить ввод чисел,
# разделённых пробелом и снова нажать Enter. Сумма вновь введённых чисел будет
# добавляться к уже подсчитанной сумме.
# Но если вместо числа вводится специальный символ, выполнение программы завершается.
# Если специальный символ введён после нескольких чисел, то вначале нужно добавить сумму
# этих чисел к полученной ранее сумме и после этого завершить программу.

def sum_str():
sum_numbers = 0
while True:
str_numbers = input('Введите строку чисел, разделенных пробелом или "exit" для выхода: ')
list_numbers = str_numbers.split(' ')
for el in list_numbers:
if el != 'exit':
sum_numbers = round((sum_numbers + float(el)), 2)
else:
print(f'Общая сумма: {sum_numbers}')
return sum_numbers
print(f'Общая сумма: {sum_numbers}')
return sum_numbers


sum_str()
15 changes: 15 additions & 0 deletions task_6_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Задание №6
# Реализовать функцию int_func(), принимающую слова из маленьких латинских букв и
# возвращающую их же, но с прописной первой буквой. Например, print(int_func(‘text’)) -> Text.

def int_func(word):
word = word.lower()
symbols = list(word)
symbols[0] = symbols[0].upper()
word = ''.join(symbols)
return word


print(int_func(input('Введите слово: ')))


21 changes: 21 additions & 0 deletions task_7_lesson3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Задание №7
# Продолжить работу над заданием. В программу должна попадать строка из слов, разделённых
# пробелом. Каждое слово состоит из латинских букв в нижнем регистре. Нужно сделать вывод
# исходной строки, но каждое слово должно начинаться с заглавной буквы. Используйте
# написанную ранее функцию int_func().

def int_func(word):
word = word.lower()
symbols = list(word)
symbols[0] = symbols[0].upper()
word = ''.join(symbols)
return word


str_words = input('Введите строку слов разделенных пробелом: ')
list_words = str_words.split(' ')
list_words_1 = []
for el in list_words:
list_words_1.append(int_func(el))
str_words = ' '.join(list_words_1)
print(str_words)