Skip to content

Commit f0fdd21

Browse files
author
pablo
committed
Скорректированы длины строк в файлах ДЗ.
1 parent 2479f85 commit f0fdd21

16 files changed

Lines changed: 139 additions & 73 deletions

File tree

lesson01/home_work/hw01_easy.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11

2+
__author__ = 'Ваши Ф.И.О.'
3+
24
# Задача-1: Дано произвольное целое число, вывести поочередно цифры исходного числа
35

46
# код пишем тут...
57

68
# Задача-2: Исходные значения двух переменных запросить у пользователя.
79
# Поменять значения переменных местами. Вывести новые значения на экран.
8-
# Не нужно решать задачу так: print("a = ", b, "b = ", a) - это неправильное решение!
10+
# Не нужно решать задачу так:
11+
# print("a = ", b, "b = ", a) - это неправильное решение!
912

10-
# Задача-3: Запросите у пользователя его возраст. Если ему есть 18 лет, выведите: "Доступ разрешен",
13+
# Задача-3: Запросите у пользователя его возраст.
14+
# Если ему есть 18 лет, выведите: "Доступ разрешен",
1115
# иначе "Извините, пользование данным ресурсом только с 18 лет"

lesson01/home_work/hw01_hard.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2+
__author__ = 'Ваши Ф.И.О.'
3+
14
# Задание-1:
25
# Ваня набрал несколько операций в интерпретаторе и получал результаты:
36
# Код: a == a**2
@@ -6,4 +9,6 @@
69
# Результат: True
710
# Код: a > 999999
811
# Результат: True
9-
# Вопрос: Чему была равна переменная a, если точно известно, что её значение не изменялось?
12+
13+
# Вопрос: Чему была равна переменная a,
14+
# если точно известно, что её значение не изменялось?

lesson01/home_work/hw01_normal.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
1-
__author__ = ''
1+
2+
__author__ = 'Ваши Ф.И.О.'
23

34
# Задача-1: Дано произвольное целое число, вывести самую большую цифру этого числа.
4-
# Например, дается x = 58375. Нужно вывести максимальную цифру в данном числе, т.е. 8.
5-
# Подразумевается, что мы не знаем это число заранее. Число приходит в виде целого беззнакового.
5+
# Например, дается x = 58375.
6+
# Нужно вывести максимальную цифру в данном числе, т.е. 8.
7+
# Подразумевается, что мы не знаем это число заранее.
8+
# Число приходит в виде целого беззнакового.
69

710

811
# Задача-2: Исходные значения двух переменных запросить у пользователя.
912
# Поменять значения переменных местами. Вывести новые значения на экран.
1013
# Решите задачу, используя только две переменные.
1114

1215

13-
# Задача-3: Напишите программу, вычисляющую корни квадратного уравнения вида ax2 + bx + c = 0.
16+
# Задача-3: Напишите программу, вычисляющую корни квадратного уравнения вида
17+
# ax2 + bx + c = 0.
1418
# Для вычисления квадратного корня воспользуйтесь функцией sqrt() модуля math
1519
# import math
1620
# math.sqrt(4) - вычисляет корень числа 4

lesson02/home_work/hw02_easy.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Задача-1:
2-
# Дан список фруктов. Напишите программу, выводящую фрукты в виде нумерованного списка, выровненного по правой стороне
2+
# Дан список фруктов.
3+
# Напишите программу, выводящую фрукты в виде нумерованного списка,
4+
# выровненного по правой стороне.
5+
36
# Пример:
47
# Дано: ["яблоко", "банан", "киви", "арбуз"]
58
# Вывод:
@@ -8,11 +11,15 @@
811
# 3. киви
912
# 4. арбуз
1013

11-
# Подсказка: использует метод .format()
14+
# Подсказка: воспользоваться методом .format()
15+
1216

1317
# Задача-2:
14-
# Даны два произвольные списка. Удалите из первого списка элементы, присутствующие во втором списке.
18+
# Даны два произвольные списка.
19+
# Удалите из первого списка элементы, присутствующие во втором списке.
20+
1521

1622
# Задача-3:
17-
# Дан произвольный список из целых чисел. Получите НОВЫЙ список из элементов исходного, выполнив следующие условия:
23+
# Дан произвольный список из целых чисел.
24+
# Получите НОВЫЙ список из элементов исходного, выполнив следующие условия:
1825
# если элемент кратен двум, то разделить его на 4, если не кратен, то умножить на два.

lesson02/home_work/hw02_hard.py

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
1-
# Задание-1: уравнение прямой вида y = kx + b задано ввиде строки.
2-
# Определить координату y точки с заданной координатой x
1+
# Задание-1: уравнение прямой вида y = kx + b задано в виде строки.
2+
# Определить координату y точки с заданной координатой x.
33

44
equation = 'y = -12x + 11111140.2121'
55
x = 2.5
66
# вычислите и выведите y
77

8-
# Задание-2: Дата задана в виде строки формата 'dd.mm.yyyy'. Проверить, корректно ли введена дата.
8+
9+
# Задание-2: Дата задана в виде строки формата 'dd.mm.yyyy'.
10+
# Проверить, корректно ли введена дата.
911
# Условия корректности:
10-
# 1. День должен приводиться к целому числу в диапазоне от 1 до 30(31) (в зависимости от месяца, февраль не учитываем)
12+
# 1. День должен приводиться к целому числу в диапазоне от 1 до 30(31)
13+
# (в зависимости от месяца, февраль не учитываем)
1114
# 2. Месяц должен приводиться к целому числу в диапазоне от 1 до 12
1215
# 3. Год должен приводиться к целому положительному числу в диапазоне от 1 до 9999
13-
# 4. Длина исходной строки для частей должна быть в соответствии с форматом (т.е. 2 - для дня, 2- месяц, 4 -год)
16+
# 4. Длина исходной строки для частей должна быть в соответствии с форматом
17+
# (т.е. 2 символа для дня, 2 - для месяца, 4 - для года)
1418

1519
# Пример корректной даты
1620
date = '01.11.1985'
@@ -20,11 +24,14 @@
2024
date = '1.12.1001'
2125
date = '-2.10.3001'
2226

23-
# Задание-3: "Перевернутая башня" (Задача олимпиадного уровня)
27+
28+
# Задание-3: "Перевёрнутая башня" (Задача олимпиадного уровня)
2429
#
25-
# Вавилонцы решили построить удивительную башню — расширяющуюся к верху и содержащую бесконечное число этажей и комнат.
26-
# Она устроена следующим образом — на первом этаже одна комната, затем идет два этажа,
27-
# на каждом из которых по две комнаты, затем идёт три этажа, на каждом из которых по три комнаты и так далее:
30+
# Вавилонцы решили построить удивительную башню —
31+
# расширяющуюся к верху и содержащую бесконечное число этажей и комнат.
32+
# Она устроена следующим образом — на первом этаже одна комната,
33+
# затем идет два этажа, на каждом из которых по две комнаты,
34+
# затем идёт три этажа, на каждом из которых по три комнаты и так далее:
2835
# ...
2936
# 12 13 14
3037
# 9 10 11
@@ -33,7 +40,8 @@
3340
# 2 3
3441
# 1
3542
#
36-
# Эту башню решили оборудовать лифтом --- и вот задача: нужно научиться по номеру комнаты определять,
43+
# Эту башню решили оборудовать лифтом --- и вот задача:
44+
# нужно научиться по номеру комнаты определять,
3745
# на каком этаже она находится и какая она по счету слева на этом этаже.
3846
#
3947
# Входные данные: В первой строчке задан номер комнаты N, 1 ≤ N ≤ 2 000 000 000.

lesson02/home_work/hw02_normal.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,25 @@
11
# Задача-1:
2-
# Дан список, заполненный произвольными целыми числами, получите новый список, элементами которого будут
3-
# квадратные корни элементов исходного списка, но только если результаты извлечения корня не имеют десятичной части и
2+
# Дан список, заполненный произвольными целыми числами, получите новый список,
3+
# элементами которого будут квадратные корни элементов исходного списка,
4+
# но только если результаты извлечения корня не имеют десятичной части и
45
# если такой корень вообще можно извлечь
56
# Пример: Дано: [2, -5, 8, 9, -25, 25, 4] Результат: [3, 5, 2]
67

8+
79
# Задача-2: Дана дата в формате dd.mm.yyyy, например: 02.11.2013.
810
# Ваша задача вывести дату в текстовом виде, например: второе ноября 2013 года.
911
# Склонением пренебречь (2000 года, 2010 года)
1012

11-
# Задача-3: Напишите алгоритм, заполняющий список произвольными целыми числами в диапазоне от -100 до 100
12-
# В списке должно быть n - элементов
13-
# Подсказка: для получения случайного числа используйте функцию randint() модуля random
1413

15-
# Задача-4: Дан список, заполненный произвольными целыми числами
16-
# Получите новый список, элементами которого будут только уникальные элементы исходного
17-
# Например, lst = [1,2,4,5,6,2,5,2], нужно получить lst2 = [1,4,6]
14+
# Задача-3: Напишите алгоритм, заполняющий список произвольными целыми числами
15+
# в диапазоне от -100 до 100. В списке должно быть n - элементов.
16+
# Подсказка:
17+
# для получения случайного числа используйте функцию randint() модуля random
18+
19+
20+
# Задача-4: Дан список, заполненный произвольными целыми числами.
21+
# Получите новый список, элементами которого будут:
22+
# а) неповторяющиеся элементы исходного списка:
23+
# например, lst = [1, 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 2, 4, 5, 6]
24+
# б) элементы исходного списка, которые не имеют повторений:
25+
# например, lst = [1 , 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 4, 6]

lesson03/home_work/hw03_easy.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
11
# Задание-1:
22
# Напишите функцию, округляющую полученное произвольное десятичное число
3-
# до кол-ва знаков (кол-во знаков передается вторым аргументом)
3+
# до кол-ва знаков (кол-во знаков передается вторым аргументом).
44
# Округление должно происходить по математическим правилам (0.6 --> 1, 0.4 --> 0).
5-
# Для решения задачи не используйте встроенные функции и функции из модуля math
6-
5+
# Для решения задачи не используйте встроенные функции и функции из модуля math.
76

87
def my_round(number, ndigits):
98
pass
109

1110
my_round(2.1234567, 5)
1211

12+
1313
# Задание-2:
1414
# Дан шестизначный номер билета. Определить, является ли билет счастливым.
1515
# Решение реализовать в виде функции.
1616
# Билет считается счастливым, если сумма его первых и последних цифр равны.
1717
# !!!P.S.: функция не должна НИЧЕГО print'ить
1818

19-
2019
def lucky_ticket(ticket_number):
2120
pass
2221

lesson03/home_work/hw03_hard.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
# Задание-1:
22
# Написать программу, выполняющую операции (сложение и вычитание) с простыми дробями.
3-
# Дроби вводятся и выводятся в формате: n x/y ,где n - целая часть, x - числитель, у - знаменатель.
3+
# Дроби вводятся и выводятся в формате:
4+
# n x/y ,где n - целая часть, x - числитель, у - знаменатель.
45
# Дроби могут быть отрицательные и не иметь целой части, или иметь только целую часть.
56
# Примеры:
6-
# Ввод: 5/6 + 4/7 (все выражение вводится целиком в виде строки)
7-
# Вывод: 1 17/42 (результат обязательно упростить и выделить целую часть)
7+
# Ввод: 5/6 + 4/7 (всё выражение вводится целиком в виде строки)
8+
# Вывод: 1 17/42 (результат обязательно упростить и выделить целую часть)
89
# Ввод: -2/3 - -2
910
# Вывод: 1 1/3
1011

12+
1113
# Задание-2:
1214
# Дана ведомость расчета заработной платы (файл "data/workers").
1315
# Рассчитайте зарплату всех работников, зная что они получат полный оклад,
@@ -16,6 +18,7 @@
1618
# они получают удвоенную ЗП, пропорциональную норме.
1719
# Кол-во часов, которые были отработаны, указаны в файле "data/hours_of"
1820

21+
1922
# Задание-3:
2023
# Дан файл ("data/fruits") со списком фруктов.
2124
# Записать в новые файлы все фрукты, начинающиеся с определенной буквы.

lesson05/home_work/hw05_easy.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Задача-1:
2-
# Напишите скрипт, создающий директории dir_1 - dir_9 в папке, из которой запущен данный скрипт.
2+
# Напишите скрипт, создающий директории dir_1 - dir_9 в папке,
3+
# из которой запущен данный скрипт.
34
# И второй скрипт, удаляющий эти папки.
45

56
# Задача-2:

lesson05/home_work/hw05_hard.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,11 @@
55
# rm <file_name> - удаляет указанный файл (запросить подтверждение операции)
66
# cd <full_path or relative_path> - меняет текущую директорию на указанную
77
# ls - отображение полного пути текущей директории
8-
# путь считать абсолютным (full_path) - в Linux начинается с /, в Windows с имени диска
8+
# путь считать абсолютным (full_path) -
9+
# в Linux начинается с /, в Windows с имени диска,
910
# все остальные пути считать относительными.
1011

11-
# Важно! Все операции должны выполняться в той директории, в который вы находитесь. Исходной директорией считать ту,
12-
# в которой был запущен скрипт.
12+
# Важно! Все операции должны выполняться в той директории, в который вы находитесь.
13+
# Исходной директорией считать ту, в которой был запущен скрипт.
1314

1415
# P.S. По возможности, сделайте кросс-платформенную реализацию.

0 commit comments

Comments
 (0)