Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Agafonova Anna HomeWork.lesson01 #885

Open
wants to merge 13 commits into
base: master
Choose a base branch
from
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
11 changes: 11 additions & 0 deletions lesson01/home_work/hw01-1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

__author__ = 'Agafonova Anna'

# Задача-1: Поработайте с переменными, создайте несколько, выведите на экран,
# запросите у пользователя несколько чисел и строк и сохраните в переменные, выведите на экран.

a = input("Enter your name: ")
b = int(input("Enter your age: "))
c = float(input("Enter any number: "))

print(a, b, c)
12 changes: 12 additions & 0 deletions lesson01/home_work/hw01-2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
__author__ = 'Agafonova Anna'

# Задача-2: Пользователь вводит время в секундах.
# Переведите время в часы, минуты и секунды и выведите в формате чч:мм:сс.
# Используйте форматирование строк.

time_in_sec = int(input("Enter your local time in sec: "))
hours = time_in_sec // 3600
residue = time_in_sec % 3600
minutes = residue // 60
sec = residue % 60
print(f"Now is {hours}:{minutes}:{sec} ")
11 changes: 11 additions & 0 deletions lesson01/home_work/hw01-3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
__author__ = 'Agafonova Anna'

# Задача-3: Узнайте у пользователя число n. Найдите сумму чисел n + nn + nnn.
# Например, пользователь ввёл число 3. Считаем 3 + 33 + 333 = 369.

number = input("Enter number: ")
a = int(number + number)
b = int(number+number+number)
summa = int(number) + a + b

print(summa)
13 changes: 13 additions & 0 deletions lesson01/home_work/hw01-4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
__author__ = 'Agafonova Anna'

# Задача-4: Пользователь вводит целое положительное число.
# Найдите самую большую цифру в числе.
# Для решения используйте цикл while и арифметические операции.

number = input("Enter number: ")
x = 0
for i in number:
while int(i) > x:
x = int(i)
print(x)

22 changes: 22 additions & 0 deletions lesson01/home_work/hw01-5.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@

__author__ = 'Agafonova Anna'

# Задание-5:
# Запросите у пользователя значения выручки и издержек фирмы.
# Определите, с каким финансовым результатом работает фирма (прибыль — выручка больше издержек, или убыток — издержки больше выручки).
# Выведите соответствующее сообщение.
# Если фирма отработала с прибылью, вычислите рентабельность выручки (соотношение прибыли к выручке).
# Далее запросите численность сотрудников фирмы и определите прибыль фирмы в расчете на одного сотрудника.

proceed = int(input("Enter proceed: "))
outlay = int(input("Enter outlay: "))
if proceed > outlay:
profitability = proceed-outlay
rent = profitability/proceed
print(f"Great work. You have {profitability} profitability")
worker = int(input("How many people work: "))
print(f"{profitability/worker} for one worker")
elif proceed == outlay:
print("No bad")
else:
print("Good luck")
17 changes: 17 additions & 0 deletions lesson01/home_work/hw01-6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

__author__ = 'Agafonova Anna'

# Задача-6: Спортсмен занимается ежедневными пробежками. В первый день его результат составил a километров.
# Каждый день спортсмен увеличивал результат на 10 % относительно предыдущего.
# Требуется определить номер дня, на который общий результат спортсмена составить не менее b километров.
# Программа должна принимать значения параметров a и b и выводить одно натуральное число — номер дня.

a = float(input("Enter start: "))
b = float(input("Enter finish: "))
day = 1
if a > b:
print(day)
while a < b:
a = a + a/10
day += 1
print(day)
11 changes: 0 additions & 11 deletions lesson01/home_work/hw01_easy.py

This file was deleted.

9 changes: 0 additions & 9 deletions lesson01/home_work/hw01_hard.py

This file was deleted.

16 changes: 0 additions & 16 deletions lesson01/home_work/hw01_normal.py

This file was deleted.

14 changes: 14 additions & 0 deletions lesson02/home_work/hw02-1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Задача-1: Создать список и заполнить его элементами различных типов данных.
# Реализовать скрипт проверки типа данных каждого элемента. Использовать функцию type() для проверки типа.
# Элементы списка можно не запрашивать у пользователя, а указать явно, в программе.

my_int = 5
my_float = 1.2
my_str = "Hello world"
my_list = ['a', '2']
my_tuple = ('b', '3')
my_dict = {'city': 'Moscow', 'country': 'Russia'}

super_list = [my_int, my_float, my_str, my_list, my_tuple, my_dict]
for i in super_list:
print(f'{i} is {type(i)}')
22 changes: 22 additions & 0 deletions lesson02/home_work/hw02-2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Задание-2: Для списка реализовать обмен значений соседних элементов, т.е.
# Значениями обмениваются элементы с индексами 0 и 1, 2 и 3 и т.д.
# При нечетном количестве элементов последний сохранить на своем месте.
# Для заполнения списка элементов необходимо использовать функцию input().

my_list = ['a', 'b', 'c', 'd', 'e']
if len(my_list) % 2 == 0:
i = 0
while i < len(my_list):
el = my_list[i]
my_list[i] = my_list[i+1]
my_list[i+1] = el
i += 2
else:
i = 0
while i < len(my_list) - 1:
el = my_list[i]
my_list[i] = my_list[i + 1]
my_list[i + 1] = el
i += 2
print(my_list)

25 changes: 25 additions & 0 deletions lesson02/home_work/hw02-3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Задача-3: Пользователь вводит месяц в виде целого числа от 1 до 12.
# Сообщить к какому времени года относится месяц (зима, весна, лето, осень).
# Напишите решения через list и через dict.
number = int(input("Enter month number: "))
if number <= 12 and number >= 1:
month_dict = {1: 'January',
2: 'February',
3: 'March',
4: 'April',
5: 'May',
6: 'June',
7: 'Jule',
8: 'August',
9: 'September',
10: 'October',
11: 'November',
12: 'December'}
month_list = list(month_dict.values())
for i, el in enumerate(month_list):
if i == number-1:
print(f"Month from list is {month_list[i]}")
break
print(f"Month from dict is {month_dict[number]}")
else:
print("You made a mistake")
10 changes: 10 additions & 0 deletions lesson02/home_work/hw02-4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Задача-4: Пользователь вводит строку из нескольких слов, разделённых пробелами.
# Вывести каждое слово с новой строки. Строки необходимо пронумеровать.
# Если в слово длинное, выводить только первые 10 букв в слове
my_str = input("Enter string: ")
a = my_str.split(' ')
for i, el in enumerate(a, 1):
if len(el) > 10:
el = el[0:10]
print(f"{i}. - {el}")

20 changes: 20 additions & 0 deletions lesson02/home_work/hw02-5.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Задача-5: Реализовать структуру «Рейтинг», представляющую собой не возрастающий набор натуральных чисел.
# У пользователя необходимо запрашивать новый элемент рейтинга.
# Если в рейтинге существуют элементы с одинаковыми значениями, то новый элемент с тем же значением должен разместиться после них.

number = int(input("Enter number: "))
my_list = [7, 4, 3, 2]
c = my_list.count(number)
for element in my_list:
if c > 0:
i = my_list.index(number)
my_list.insert(i+c, number)
break
else:
if number > element:
j = my_list.index(element)
my_list.insert(j, number)
break
elif number < my_list[len(my_list) - 1]:
my_list.append(number)
print(my_list)
40 changes: 40 additions & 0 deletions lesson02/home_work/hw02-6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
'''*Реализовать структуру данных «Товары». Она должна представлять собой список кортежей.
Каждый кортеж хранит информацию об отдельном товаре. В кортеже должно быть два элемента — номер товара и словарь с параметрами
(характеристиками товара: название, цена, количество, единица измерения).
Структуру нужно сформировать программно, т.е. запрашивать все данные у пользователя.
Пример готовой структуры:
[
(1, {“название”: “компьютер”, “цена”: 20000, “количество”: 5, “eд”: “шт.”}),
(2, {“название”: “принтер”, “цена”: 6000, “количество”: 2, “eд”: “шт.”}),
(3, {“название”: “сканер”, “цена”: 2000, “количество”: 7, “eд”: “шт.”})
]
Необходимо собрать аналитику о товарах. Реализовать словарь, в котором каждый ключ — характеристика товара,
например название, а значение — список значений-характеристик, например список названий товаров.
Пример:
{
“название”: [“компьютер”, “принтер”, “сканер”],
“цена”: [20000, 6000, 2000],
“количество”: [5, 2, 7],
“ед”: [“шт.”]
}'''
goods = []
while input("Would you like add product? Enter yes/no: ") == 'yes':
number = int(input("Enter product number: "))
features = {}
while input("Would you like add product parameters? Enter yes/no: ") == 'yes':
feature_key = input("Enter feature product: ")
feature_value = input("Enter feature value product: ")
features[feature_key] = feature_value
goods.append(tuple([number, features]))
print(goods)
#goods = [(1, {'name': 'comp', 'price': '11'}), (2, {'name': 'pri', 'price': '22'})]
analitics = {}
for good in goods:
for feature_key, feature_value in good[1].items():
if feature_key in analitics:
analitics[feature_key].append(feature_value)
else:
analitics[feature_key] = [feature_value]
print(analitics)


18 changes: 0 additions & 18 deletions lesson02/home_work/hw02_easy.py

This file was deleted.

48 changes: 0 additions & 48 deletions lesson02/home_work/hw02_hard.py

This file was deleted.

17 changes: 0 additions & 17 deletions lesson02/home_work/hw02_normal.py

This file was deleted.

Loading