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
15 changes: 15 additions & 0 deletions Homework_3/1 func division.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#1. Реализовать функцию, принимающую два числа (позиционные аргументы) и выполняющую их деление.
# Числа запрашивать у пользователя, предусмотреть обработку ситуации деления на ноль.

def division(a,b):
if b == 0: #Заглушка для деления на 0
return 'На ноль делить нельзя'
return a / b


first_number = float(input('Введите первое число: '))
second_number = float(input('Введите второе число: '))

devision_result = division(first_number,second_number)

print(devision_result)
17 changes: 17 additions & 0 deletions Homework_3/2 parametres.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#2. Реализовать функцию, принимающую несколько параметров, описывающих данные пользователя: имя, фамилия, год рождения, город проживания, email, телефон.
# Функция должна принимать параметры как именованные аргументы.
# Реализовать вывод данных о пользователе одной строкой.

def parametres(a , b , c , d , e ,f):
return f'Имя: {a}, фамилия: {b}, год рождения: {c}, город проживания: {d}, e-mail: {e}, Телефон: {f}'

name = input('Введите ваше имя: ')
surname = input('Введите вашу фамилию: ')
year = int(input('Введите год вашего рождения. Месяц и день не нужно: '))
town = input('Введите город вашего проживания: ')
mail = input('Введите ваш e-mail: ')
phone = input('Введите ваш номер телефона: ')

parameter_str = parametres(name , surname , year , town , mail , phone)

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

def sum_of_bigest_numbers(a , b , c):
base_of_numbers = []
base_of_numbers.append(a) #Заполняем пустой список введенными числами
base_of_numbers.append(b)
base_of_numbers.append(c)
first_of_sum = 0
second_of_sum = 0 #Задаем 2 переменные, которые в дальнейшем будут складываться
for i in base_of_numbers: #Сравниваем первую переменную с каждым элементом списка
if first_of_sum <= i:
second_of_sum = first_of_sum #Если переменная меньше элемента списка, присваиваем ей значение этого элемента
first_of_sum = i #Второй переменной - предыдущее значение первой.
return first_of_sum + second_of_sum



first_number = int(input('Введите первое число: '))
second_number = int(input('Введите второе число: '))
third_number = int(input('Введите третье число: '))

result = sum_of_bigest_numbers(first_number , second_number , third_number)
print(result)
23 changes: 23 additions & 0 deletions Homework_3/4 exponentiation.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#4. Программа принимает действительное положительное число x и целое отрицательное число y.
# Необходимо выполнить возведение числа x в степень y.
# Задание необходимо реализовать в виде функции my_func(x, y).
# При решении задания необходимо обойтись без встроенной функции возведения числа в степень.
#Подсказка: попробуйте решить задачу двумя способами.
# Первый — возведение в степень с помощью оператора **.
# Второй — более сложная реализация без оператора **, предусматривающая использование цикла.

def numbers_exponentiation(a , b):
module_b = abs(b) #Берем отрицательное число по модулю
i = 1
while i != module_b:
a = a * a #Умножаем a на саму себя, пока i не будет равен второй переменной по модулю.
i = i + 1
return a
# return a ** abs(b) (Второе решение, более простое)

first_number = float(input('Введите действительное положительное число: '))
second_number = int(input('Введите отрицательное число: '))

result = numbers_exponentiation(first_number , second_number)
print(result)

37 changes: 37 additions & 0 deletions Homework_3/5 summ_of_numbers.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#5. Программа запрашивает у пользователя строку чисел, разделенных пробелом.
# При нажатии Enter должна выводиться сумма чисел. Пользователь может продолжить ввод чисел, разделенных пробелом и снова нажать Enter.
# Сумма вновь введенных чисел будет добавляться к уже подсчитанной сумме.
# Но если вместо числа вводится специальный символ, выполнение программы завершается.
# Если специальный символ введен после нескольких чисел, то вначале нужно добавить сумму этих чисел к полученной ранее сумме и после этого завершить программу.
def sum_of_numbers(a):
pure_sum = 0
q_count = 0 #Счетчик. Если при проходе по списку встречается q, счетчик будет равен 1, иначе - 0.
num_list = a.split( ) # Превращаем набор символов в список.
for i in num_list:
if i == 'q':
q_count = 1
break
else:
i = int(i)
pure_sum = pure_sum + i
return {q_count : pure_sum} #На выходе - словарь из значения, которое мы будем выводить, и ключа, отвечающего за q.


result = 0
sum_of_results = 0 #Переменная, к которой мы будем прибавлять результаты функции.
numbers_str = None
print('Программа позволяет делать из строки сумму чисел. Если введете одним из элементов q, программа остановится')
while True:
numbers_str = (input('Введите строку чисел через пробел: ')) #Запрашиваем у пользователя строку через While True
result = sum_of_numbers(numbers_str) #Вызываем функцию, результатом которой будет словарь
if 1 in result.keys() and result.get(1) != 0: #Если ключ словаря 1 и значение != 0, печатаем значение и выходим из программы
sum_of_results = sum_of_results + result.get(1)
print(sum_of_results)
break
elif result.get(1) == 0: #Если значение = 0 (если просто ввести q), просто выходим из программы, без вывода символа 0.
break
else:
sum_of_results = sum_of_results + result.get(0) #Если не 0, продолжаем складывать и выводить результат.
print(sum_of_results)


13 changes: 13 additions & 0 deletions Homework_3/6 Upper_word.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#6. 6. Реализовать функцию int_func(), принимающую слово из маленьких латинских букв и возвращающую его же, но с прописной первой буквой.
# Например, print(int_func(‘text’)) -> Text.
#Продолжить работу над заданием.
# В программу должна попадать строка из слов, разделенных пробелом. Каждое слово состоит из латинских букв в нижнем регистре.
# Сделать вывод исходной строки, но каждое слово должно начинаться с заглавной буквы.
# Необходимо использовать написанную ранее функцию int_func().

def int_func(a):
spliter = a.split( )
return a.title()


print(int_func('asf asf a')) #Кажется, я не совсем понял задание, но сюда можно воткнуть и строку и одно слово.