From 599c6160814647727b399601838bd3d323f19350 Mon Sep 17 00:00:00 2001 From: leget Date: Mon, 8 Jun 2020 23:22:55 +0300 Subject: [PATCH 01/25] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D0=BE=D0=B5=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=B4=D0=BE=D0=BC?= =?UTF-8?q?=D0=B0=D1=88=D0=BA=D0=B8=201?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 7 +++++++ 1 file changed, 7 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index e3232d56..08517ff7 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -13,3 +13,10 @@ Подсказка: для получения отдельных цифр числа используйте арифм. операции и НЕ ИСПОЛЬЗУЙТЕ операции с массивами """ + +user_number = int(input('Введите трехзначное число: ')) +user_number_1 = user_number % 10 +user_number_2 = user_number // 10 % 10 +user_number_3 = user_number // 10 // 10 % 10 +print(f'Сумма введенных чисел {user_number_1 + user_number_2 + user_number_3}') +print(f'Произведение введенных чисел {user_number_1 * user_number_2 * user_number_3}') From 655b985a229d20ee5bde5e82e68befbb5e1434ec Mon Sep 17 00:00:00 2001 From: leget Date: Mon, 8 Jun 2020 23:48:49 +0300 Subject: [PATCH 02/25] =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BB=202-5=20=D0=B7=D0=B0=D0=B4=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_2.py" | 19 +++++++++++++++++++ .../task_3.py" | 9 +++++++++ .../task_4.py" | 17 +++++++++++++++++ .../task_5.py" | 8 ++++++++ 4 files changed, 53 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" index b14becdd..bcae807b 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" @@ -6,3 +6,22 @@ Подсказка: это стандартные операции, которые осуществляются с помощью стандартных операторов. Попробуйте найти каких именно. """ +bit_and = 5 & 6 +bit_or = 5 | 6 +bit_xor = 5 ^ 6 +print(bit_and) # в двоичной системе 5 будет 101, а 6 - 110. Логическое И сравнит по +# разрядно числа - 1 и 0 дает 0, 0 и 1, дает 0, 1 и 1 дает 1, получаем двоично число 100 +# которое соответствует десятичному числу 4 + +print(bit_or) # логическое ИЛИ - 1 или 0 дает 1, 0 или 1 дает 1, 1 или 1 дает 1. +# Двоичное число 111 - десятичное 7 + +print(bit_xor) # исключающее или 1 или 0 дает 1, 0 или 1 дает 1, 1 или 1 дает 0, +# получаем двоичное число 011 - десятичное 3 + +a = 5 << 2 +b = 5 >> 2 +print(a) # при сдвиге влево на 2 единицы получается число эквивалентное 2 ** 2, +# на 3 единицы 2 ** 3 и т.д. + +print(b) #при сдвиге вправо отбрасываются последние 2 знака diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" index ab7f1346..7eb697c5 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" @@ -13,3 +13,12 @@ X1_VAL = 2, Y1_VAL = 3, X2_VAL = 4, Y2_VAL = 5 Уравнение прямой, проходящей через эти точки: y = 1.0x + 1.0 """ + +x_1 = float(input('Введите координату Х первой точки: ')) +y_1 = float(input('Введите координату Y первой точки: ')) +x_2 = float(input('Введите координату Х второй точки: ')) +y_2 = float(input('Введите координату Y второй точки: ')) +k = (y_1 - y_2) / (x_1 - x_2) +b = y_2 - k * x_2 +print(f"Уравнение прямой y=kx+b, проходящей через эти точки: y = {round(k, 2)} * x + {round(b, 2)}") + diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" index 05c98422..a19de6bb 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" @@ -14,3 +14,20 @@ Функцию random() использовать можно Опирайтесь на пример к уроку """ + +from random import random + +user_number_1 = int(input('Введите нижнее число диапазона случайных чисел: ')) +user_number_2 = int(input('Введите верхнее число диапазона случайных чисел: ')) +random_number = int(random() * (user_number_2 - user_number_1)) + user_number_1 +print(random_number) + +user_float_number_1 = float(input('Введите нижнее число диапазона случайных чисел: ')) +user_float_number_2 = float(input('Введите верхнее число диапазона случайных чисел: ')) +random_float_number = random() * (user_float_number_2 - user_float_number_1) + user_float_number_1 +print(random_float_number) + +user_symbol_1 = ord(input('Введите нижнюю границу диапазона символов: ')) +user_symbol_2 = ord(input('Введите верхнюю границу диапазона символов: ')) +random_user_symbol = int(random() * (user_symbol_2 - user_symbol_1)) + user_symbol_1 +print(chr(random_user_symbol)) \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" index d4db92c5..9746206f 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" @@ -10,3 +10,11 @@ В обоих случаях программа должна вывести корректный результат. В обоих случаях он 24, но никак не -24 """ + +print('Введите 2 буквы, а я сообщу на каком месте они стоят и сколько между ними букв') +user_symbol_1 = ord(input('Введите 1 букву: ')) +user_symbol_2 = ord(input('Введите 2 букву: ')) +user_symbol_1 = user_symbol_1 - ord('a') + 1 +user_symbol_2 = user_symbol_2 - ord('a') + 1 +print(f'Позиция введнных букв {user_symbol_1} и {user_symbol_2}') +print(f'Между ними {abs(user_symbol_2 - user_symbol_1 - 1)} букв') From 3736465a271412c73578302dc1998d01c3d3806e Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 17:34:06 +0300 Subject: [PATCH 03/25] =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=B8=D0=BB=205=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.idea/.gitignore" | 0 .../inspectionProfiles/profiles_settings.xml" | 6 + .../.idea/misc.xml" | 4 + .../.idea/modules.xml" | 8 ++ .../.idea/vcs.xml" | 6 + .../.idea/workspace.xml" | 107 ++++++++++++++++++ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 ++ .../task_5.py" | 4 +- 8 files changed, 141 insertions(+), 2 deletions(-) create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" new file mode 100644 index 00000000..e69de29b diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" new file mode 100644 index 00000000..105ce2da --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" new file mode 100644 index 00000000..65531ca9 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" new file mode 100644 index 00000000..4458ceb4 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" new file mode 100644 index 00000000..6656f96c --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1591647262059 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" new file mode 100644 index 00000000..d0876a78 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" index 9746206f..021bd0ca 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" @@ -16,5 +16,5 @@ user_symbol_2 = ord(input('Введите 2 букву: ')) user_symbol_1 = user_symbol_1 - ord('a') + 1 user_symbol_2 = user_symbol_2 - ord('a') + 1 -print(f'Позиция введнных букв {user_symbol_1} и {user_symbol_2}') -print(f'Между ними {abs(user_symbol_2 - user_symbol_1 - 1)} букв') +print(f'Позиция введенных букв {user_symbol_1} и {user_symbol_2}') +print(f'Между ними {abs(user_symbol_2 - user_symbol_1) - 1} букв') From 4280aae95c53aaffae1489f45b8003ed272b5ea0 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 18:14:57 +0300 Subject: [PATCH 04/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B3=D0=B8=D1=82=D0=B8=D0=B3=D0=BD=D0=BE=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..a0c18a1a --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.xml +*.iml + From a79498e4daf619b10a21757aa513b81ae9d04f7b Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 18:22:24 +0300 Subject: [PATCH 05/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B3=D0=B8=D1=82=D0=B8=D0=B3=D0=BD=D0=BE=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a0c18a1a..75517caf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ sdist/ +.idea/ var/ wheels/ pip-wheel-metadata/ From 4072cb76d16e008fcd6d805ea9d470d41c8b12f5 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 18:31:09 +0300 Subject: [PATCH 06/25] =?UTF-8?q?=D1=83=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B5=20=D0=BD=D1=83=D0=B6=D0=BD=D1=8B=D0=B5=20=D1=84?= =?UTF-8?q?=D0=B0=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.idea/.gitignore" | 0 .../inspectionProfiles/profiles_settings.xml" | 6 - .../.idea/misc.xml" | 4 - .../.idea/modules.xml" | 8 -- .../.idea/vcs.xml" | 6 - .../.idea/workspace.xml" | 107 ------------------ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 -- 7 files changed, 139 deletions(-) delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/.gitignore" deleted file mode 100644 index e69de29b..00000000 diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" deleted file mode 100644 index 105ce2da..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" deleted file mode 100644 index 65531ca9..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" deleted file mode 100644 index 4458ceb4..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" deleted file mode 100644 index 6c0b8635..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" deleted file mode 100644 index 6656f96c..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1591647262059 - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" deleted file mode 100644 index d0876a78..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file From 54f6158e26898c28f1848c02256eb6e9ac430079 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 18:34:17 +0300 Subject: [PATCH 07/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=206?= =?UTF-8?q?=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_6.py" | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" index e5380773..1bcb6ac6 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" @@ -8,3 +8,12 @@ Подсказка: используйте ф-ции chr() и ord() """ + +user_symbol = int(input('Введите номер буквы в диапазоне 1 - 26, а я скажу, что это за буква: ')) +result = chr(user_symbol + 96) +print(result) + +# Еще вариант, возможно более верный + +result_new = chr(ord('a') + user_symbol - 1) +print(result_new) \ No newline at end of file From bc95917c9673969cdc7189d22a551db802a72776 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 22:12:15 +0300 Subject: [PATCH 08/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=207?= =?UTF-8?q?=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_4.py" | 2 +- .../task_6.py" | 2 +- .../task_7.py" | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" index a19de6bb..8927ed2b 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" @@ -30,4 +30,4 @@ user_symbol_1 = ord(input('Введите нижнюю границу диапазона символов: ')) user_symbol_2 = ord(input('Введите верхнюю границу диапазона символов: ')) random_user_symbol = int(random() * (user_symbol_2 - user_symbol_1)) + user_symbol_1 -print(chr(random_user_symbol)) \ No newline at end of file +print(chr(random_user_symbol)) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" index 1bcb6ac6..3eb8622d 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" @@ -16,4 +16,4 @@ # Еще вариант, возможно более верный result_new = chr(ord('a') + user_symbol - 1) -print(result_new) \ No newline at end of file +print(result_new) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" index ab1fcee8..4f957abc 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" @@ -4,3 +4,22 @@ составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он разносторонним, равнобедренным или равносторонним. """ + +print('Введите длинну 3х отрезков по очереди') +side_of_triangle_a = float(input('Введите сторону а ')) +side_of_triangle_b = float(input('Введите сторону b ')) +side_of_triangle_c = float(input('Введите сторону c ')) +if side_of_triangle_a + side_of_triangle_b <= side_of_triangle_c \ + or side_of_triangle_a + side_of_triangle_c <= side_of_triangle_b \ + or side_of_triangle_c + side_of_triangle_b <= side_of_triangle_a: + print("С такими сторонами треугольник невозможен") +elif side_of_triangle_a == side_of_triangle_b == side_of_triangle_c: + print('Это равносторонний треугольник') +elif side_of_triangle_a != side_of_triangle_b != side_of_triangle_c: + print('Это разносторонний треугольник') +elif side_of_triangle_a == side_of_triangle_b and side_of_triangle_a != side_of_triangle_c \ + or side_of_triangle_a == side_of_triangle_c and side_of_triangle_c != side_of_triangle_b \ + or side_of_triangle_b == side_of_triangle_c and side_of_triangle_c != side_of_triangle_a: + print('Это равнобедренный треугольник') + + From e784d27e714b6edd845eef5b58c64ce4e9ec2e99 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 22:53:41 +0300 Subject: [PATCH 09/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=208?= =?UTF-8?q?=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_8.py" | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" index 75a42e17..36c1b331 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" @@ -16,3 +16,22 @@ Он просто позволяет протестировать условие в одной строке, заменяя многострочное if-else, делая код компактным. """ + +user_year = int(input('Введите год, а скажу, високосный ли он: ')) +if user_year % 4 == 0 and user_year % 100 != 0 or user_year % 400 == 0: + print('Это високосный год') + + +if user_year % 4 != 0: + print('Это бычный год') +elif user_year % 100 == 0: + if user_year % 400 == 0: + print('Это високосный год') + else: + print('Это обычный год') +else: + print('Это високосный год') + + + + From 9665b3c552b9e1694bbc442c8b3a401e4cc68203 Mon Sep 17 00:00:00 2001 From: leget Date: Tue, 9 Jun 2020 23:02:32 +0300 Subject: [PATCH 10/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=209?= =?UTF-8?q?=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_9.py" | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" index 59898c6f..fb448836 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" @@ -4,3 +4,16 @@ Подсказка: можно добавить проверку, что введены равные числа """ +a = int(input('Введите первое число: ')) +b = int(input('Введите второе число: ')) +c = int(input('ведите третье число: ')) +if a > c and a < b: + print(f'Среднее число a - {a}') +elif a < c and a > b: + print(f'Среднее число a - {a}') +elif c > a and c < b: + print(f'Среднее число c - {c}') +elif c < a and c > b: + print(f'Среднее число c - {c}') +else: + print(f'Среднее число b - {b}') From 614b6e9fc357a378e7cb0c0b19526740d1d48062 Mon Sep 17 00:00:00 2001 From: leget Date: Wed, 17 Jun 2020 19:40:07 +0300 Subject: [PATCH 11/25] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8?= =?UTF-8?q?=D0=B7=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BB=20=D0=BA=D0=BE=D0=B4?= =?UTF-8?q?=20=D0=B2=207,=208=20=D0=B8=209=20=D0=B7=D0=B0=D0=B4=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_7.py" | 6 +----- .../task_8.py" | 20 ++++++------------- .../task_9.py" | 10 +++------- 3 files changed, 10 insertions(+), 26 deletions(-) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" index 4f957abc..1368c0f1 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" @@ -17,9 +17,5 @@ print('Это равносторонний треугольник') elif side_of_triangle_a != side_of_triangle_b != side_of_triangle_c: print('Это разносторонний треугольник') -elif side_of_triangle_a == side_of_triangle_b and side_of_triangle_a != side_of_triangle_c \ - or side_of_triangle_a == side_of_triangle_c and side_of_triangle_c != side_of_triangle_b \ - or side_of_triangle_b == side_of_triangle_c and side_of_triangle_c != side_of_triangle_a: +else: print('Это равнобедренный треугольник') - - diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" index 36c1b331..ec222950 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" @@ -18,20 +18,12 @@ """ user_year = int(input('Введите год, а скажу, високосный ли он: ')) -if user_year % 4 == 0 and user_year % 100 != 0 or user_year % 400 == 0: - print('Это високосный год') +result = 'Это високосный год' if (user_year % 4 == 0 and user_year % 100 != 0) \ + or user_year % 400 == 0 else 'обычный' +print(f'Год - {result}') -if user_year % 4 != 0: - print('Это бычный год') -elif user_year % 100 == 0: - if user_year % 400 == 0: - print('Это високосный год') - else: - print('Это обычный год') -else: +if (user_year % 400 == 0 or user_year % 4 == 0) and user_year % 100 != 0: print('Это високосный год') - - - - +else: + print('Это обычный год') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" index fb448836..0974234a 100644 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" @@ -7,13 +7,9 @@ a = int(input('Введите первое число: ')) b = int(input('Введите второе число: ')) c = int(input('ведите третье число: ')) -if a > c and a < b: +if c < a < b or b < a < c: print(f'Среднее число a - {a}') -elif a < c and a > b: - print(f'Среднее число a - {a}') -elif c > a and c < b: - print(f'Среднее число c - {c}') -elif c < a and c > b: - print(f'Среднее число c - {c}') +elif a < c < b or b < c < a: + print(f'Среднее число a - {c}') else: print(f'Среднее число b - {b}') From 3df1ad630af9351fb071bf15afd42415b2552cd1 Mon Sep 17 00:00:00 2001 From: leget Date: Sat, 20 Jun 2020 11:31:14 +0300 Subject: [PATCH 12/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index ad375e7b..905863c3 100644 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -12,3 +12,128 @@ ВНИМАНИЕ: ЗАДАНИЯ, В КОТОРЫХ БУДУТ ГОЛЫЕ ЦИФРЫ ЗАМЕРОВ (БЕЗ АНАЛИТИКИ) БУДУТ ПРИНИМАТЬСЯ С ОЦЕНКОЙ УДОВЛЕТВОРИТЕЛЬНО """ +import timeit +from random import randint + + +# user_input = int(input('Введите число: ')) + + +def test_func(user_input): + new_number = 0 + while user_input > 0: + new_number = new_number * 10 + user_input % 10 + user_input //= 10 + # print(new_number) + + +# test_func(user_input) + +# user_input_lst = input('Введите число: ') + + +def test_func_2(user_input_lst): + user_input_lst = ''.join(reversed(user_input_lst)) + # print(user_input_lst) + + +# test_func_2(user_input_lst) + + +def mirror_number(user_input, new_number=0): + if user_input == 0: + return # print(f'Число наооборот {new_number}') + new_number = new_number * 10 + user_input % 10 + user_input //= 10 + return mirror_number(user_input, new_number) + + +# mirror_number(int(input('Введите натуральное число: '))) + +print( + timeit.timeit("test_func(123456123456123456123456123456123456123456123456)", setup="from __main__ import test_func", + number=10000)) +print(timeit.timeit("test_func_2('123456123456123456123456123456123456123456123456')", + setup="from __main__ import test_func_2", number=10000)) +print(timeit.timeit("mirror_number(123456123456123456123456123456123456123456123456)", + setup="from __main__ import mirror_number", number=10000)) +''' +Результаты при выполнение функций, которые делают обратное число, +заметно лучше показывает себя функция, которая работает со строкой +с помощью встроенной функции reversed. Замеры времени числа 123456: +0.03188213399698725 - цикл +0.015842726003029384 - встроенная функция +0.07451771100022597 - рекурсия +Особенно это заметно на большом числе. +Замеры времени числа 123456123456123456123456123456123456123456123456: +0.38418162999732886 - цикл +0.05222697299905121 - встроенная функция +0.4566892939983518 - рекурсия +''' + +a = [randint(10, 20) for x in range(1, 110)] +print(a) + + +def test_1(): + max_number = max(a, key=lambda i: a.count(i)) + # print(f'Число {max_number} встречается в массиве чаще всего') + + +def test_2(): + max_cnt = 0 + number = a[0] + for i in range(0, len(a)): + cnt = 1 + for j in range(i + 1, len(a)): + if a[i] == a[j]: + cnt += 1 + if cnt > max_cnt: + max_cnt = cnt + number = a[i] + # print(f'Число {number} встречается в массиве чаще всего, а именно {max_cnt} раз(а)') + + +print(timeit.timeit("test_1()", setup="from __main__ import test_1", number=100)) +print(timeit.timeit("test_2()", setup="from __main__ import test_2", number=100)) + +""" +Результаты работы функций: +7.929421408000053 +20.140352697999333 +Применение встроенной функции позволило сократить время работы примерно в 3 раза +""" + + +# Функция декоратор подсчета времени +def time_decor(func, n=100): + start_time = timeit.default_timer() + i = 0 + while i < n: + func() + i += 1 + print(timeit.default_timer() - start_time) + + +@time_decor +def test_decor(): + max_number = max(a, key=lambda i: a.count(i)) + + +@time_decor +def test_decor_1(): + max_cnt = 0 + number = a[0] + for i in range(0, len(a)): + cnt = 1 + for j in range(i + 1, len(a)): + if a[i] == a[j]: + cnt += 1 + if cnt > max_cnt: + max_cnt = cnt + number = a[i] + + +""" +Фунцкция декоратор на мой взгляд самый удобный вариант подсчета +""" From 4ecc8ab935495e7545238e867b9164f7f8e8ce6b Mon Sep 17 00:00:00 2001 From: leget Date: Sat, 20 Jun 2020 11:34:11 +0300 Subject: [PATCH 13/25] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D1=83=D0=B6=D0=BD=D1=8B=D0=B5=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 22 ------------- .../task_2.py" | 27 --------------- .../task_3.py" | 24 -------------- .../task_4.py" | 33 ------------------- .../task_5.py" | 20 ----------- .../task_6.py" | 19 ----------- .../task_7.py" | 21 ------------ .../task_8.py" | 29 ---------------- .../task_9.py" | 15 --------- ...1\207\320\260\320\275\320\270\320\265.txt" | 4 --- 10 files changed, 214 deletions(-) delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" delete mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" deleted file mode 100644 index 08517ff7..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ /dev/null @@ -1,22 +0,0 @@ -""" -Задание 1. -Найти сумму и произведение цифр трехзначного числа, -которое вводит пользователь. -#print(124 // 100) = 1 - отбросить остаток -#print((124 // 10) % 10) = 2 - остаток от деления числа 12 на 10 -#print(124 % 10) = 4 - остаток от деления числа 124 на 10 - -Пример: Целое трехзначное число 123 -Сумма = 6 -Произведение = 6 - -Подсказка: для получения отдельных цифр числа используйте арифм. операции -и НЕ ИСПОЛЬЗУЙТЕ операции с массивами -""" - -user_number = int(input('Введите трехзначное число: ')) -user_number_1 = user_number % 10 -user_number_2 = user_number // 10 % 10 -user_number_3 = user_number // 10 // 10 % 10 -print(f'Сумма введенных чисел {user_number_1 + user_number_2 + user_number_3}') -print(f'Произведение введенных чисел {user_number_1 * user_number_2 * user_number_3}') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" deleted file mode 100644 index bcae807b..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ /dev/null @@ -1,27 +0,0 @@ -""" -Задание 2. Выполнить логические побитовые операции "И", "ИЛИ" -и др. над числами 5 и 6. Выполнить -над числом 5 побитовый сдвиг вправо и влево на два знака. - -Подсказка: это стандартные операции, которые осуществляются с помощью -стандартных операторов. Попробуйте найти каких именно. -""" -bit_and = 5 & 6 -bit_or = 5 | 6 -bit_xor = 5 ^ 6 -print(bit_and) # в двоичной системе 5 будет 101, а 6 - 110. Логическое И сравнит по -# разрядно числа - 1 и 0 дает 0, 0 и 1, дает 0, 1 и 1 дает 1, получаем двоично число 100 -# которое соответствует десятичному числу 4 - -print(bit_or) # логическое ИЛИ - 1 или 0 дает 1, 0 или 1 дает 1, 1 или 1 дает 1. -# Двоичное число 111 - десятичное 7 - -print(bit_xor) # исключающее или 1 или 0 дает 1, 0 или 1 дает 1, 1 или 1 дает 0, -# получаем двоичное число 011 - десятичное 3 - -a = 5 << 2 -b = 5 >> 2 -print(a) # при сдвиге влево на 2 единицы получается число эквивалентное 2 ** 2, -# на 3 единицы 2 ** 3 и т.д. - -print(b) #при сдвиге вправо отбрасываются последние 2 знака diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" deleted file mode 100644 index 7eb697c5..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" +++ /dev/null @@ -1,24 +0,0 @@ -""" -Задание 3. По введенным пользователем координатам двух -точек вывести уравнение прямой, -проходящей через эти точки. - -Подсказка: -Запросите у пользователя значения координат X и Y для первой и второй точки -Найдите в учебнике по высшей математике формулы расчета: -k – угловой коэффициент (действительное число), b – свободный член (действительное число) -Сформируйте уравнение прямой по формуле: y = kx + b – функция общего вида - -Пример: -X1_VAL = 2, Y1_VAL = 3, X2_VAL = 4, Y2_VAL = 5 -Уравнение прямой, проходящей через эти точки: y = 1.0x + 1.0 -""" - -x_1 = float(input('Введите координату Х первой точки: ')) -y_1 = float(input('Введите координату Y первой точки: ')) -x_2 = float(input('Введите координату Х второй точки: ')) -y_2 = float(input('Введите координату Y второй точки: ')) -k = (y_1 - y_2) / (x_1 - x_2) -b = y_2 - k * x_2 -print(f"Уравнение прямой y=kx+b, проходящей через эти точки: y = {round(k, 2)} * x + {round(b, 2)}") - diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" deleted file mode 100644 index 8927ed2b..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" +++ /dev/null @@ -1,33 +0,0 @@ -""" -Задание 4. Написать программу, которая генерирует в указанных пользователем границах: - случайное целое число; - случайное вещественное число; - случайный символ. -Для каждого из трех случаев пользователь задает свои границы диапазона. -Например, если надо получить случайный символ от 'a' до 'f', то вводятся эти символы. -Программа должна вывести на экран любой символ алфавита от 'a' до 'f' включительно. - -Подсказка: -Нужно обойтись без ф-ций randint() и uniform() -Использование этих ф-ций = задание не засчитывается - -Функцию random() использовать можно -Опирайтесь на пример к уроку -""" - -from random import random - -user_number_1 = int(input('Введите нижнее число диапазона случайных чисел: ')) -user_number_2 = int(input('Введите верхнее число диапазона случайных чисел: ')) -random_number = int(random() * (user_number_2 - user_number_1)) + user_number_1 -print(random_number) - -user_float_number_1 = float(input('Введите нижнее число диапазона случайных чисел: ')) -user_float_number_2 = float(input('Введите верхнее число диапазона случайных чисел: ')) -random_float_number = random() * (user_float_number_2 - user_float_number_1) + user_float_number_1 -print(random_float_number) - -user_symbol_1 = ord(input('Введите нижнюю границу диапазона символов: ')) -user_symbol_2 = ord(input('Введите верхнюю границу диапазона символов: ')) -random_user_symbol = int(random() * (user_symbol_2 - user_symbol_1)) + user_symbol_1 -print(chr(random_user_symbol)) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" deleted file mode 100644 index 021bd0ca..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" +++ /dev/null @@ -1,20 +0,0 @@ -""" -Задание 5. -Пользователь вводит две буквы. Определить, -на каких местах алфавита они стоят, и сколько между ними находится букв. - -Подсказка: -Вводим маленькие латинские буквы. -Обратите внимание, что ввести можно по алфавиту, например, a,z -а можно наоборот - z,a -В обоих случаях программа должна вывести корректный результат. -В обоих случаях он 24, но никак не -24 -""" - -print('Введите 2 буквы, а я сообщу на каком месте они стоят и сколько между ними букв') -user_symbol_1 = ord(input('Введите 1 букву: ')) -user_symbol_2 = ord(input('Введите 2 букву: ')) -user_symbol_1 = user_symbol_1 - ord('a') + 1 -user_symbol_2 = user_symbol_2 - ord('a') + 1 -print(f'Позиция введенных букв {user_symbol_1} и {user_symbol_2}') -print(f'Между ними {abs(user_symbol_2 - user_symbol_1) - 1} букв') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" deleted file mode 100644 index 3eb8622d..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" +++ /dev/null @@ -1,19 +0,0 @@ -""" -Задание 6. Пользователь вводит номер буквы в алфавите. -Определить, какая это буква. - -Пример: -Введите номер буквы: 4 -Введёному номеру соответствует буква: d - -Подсказка: используйте ф-ции chr() и ord() -""" - -user_symbol = int(input('Введите номер буквы в диапазоне 1 - 26, а я скажу, что это за буква: ')) -result = chr(user_symbol + 96) -print(result) - -# Еще вариант, возможно более верный - -result_new = chr(ord('a') + user_symbol - 1) -print(result_new) diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" deleted file mode 100644 index 1368c0f1..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" +++ /dev/null @@ -1,21 +0,0 @@ -""" -7. По длинам трех отрезков, введенных пользователем, -определить возможность существования треугольника, -составленного из этих отрезков. Если такой треугольник существует, -то определить, является ли он разносторонним, равнобедренным или равносторонним. -""" - -print('Введите длинну 3х отрезков по очереди') -side_of_triangle_a = float(input('Введите сторону а ')) -side_of_triangle_b = float(input('Введите сторону b ')) -side_of_triangle_c = float(input('Введите сторону c ')) -if side_of_triangle_a + side_of_triangle_b <= side_of_triangle_c \ - or side_of_triangle_a + side_of_triangle_c <= side_of_triangle_b \ - or side_of_triangle_c + side_of_triangle_b <= side_of_triangle_a: - print("С такими сторонами треугольник невозможен") -elif side_of_triangle_a == side_of_triangle_b == side_of_triangle_c: - print('Это равносторонний треугольник') -elif side_of_triangle_a != side_of_triangle_b != side_of_triangle_c: - print('Это разносторонний треугольник') -else: - print('Это равнобедренный треугольник') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" deleted file mode 100644 index ec222950..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" +++ /dev/null @@ -1,29 +0,0 @@ -""" -Задание 8. Определить, является ли год, который ввел пользователем, -високосным или не високосным. - -Подсказка: -Год является високосным в двух случаях: либо он кратен 4, -но при этом не кратен 100, либо кратен 400. - -Попробуйте решить задачу двумя способами: -1. Обычное ветвление -2. Тернарный оператор - -П.С. - Тернарные операторы, также известные как условные выражения, -представляют собой операторы, которые оценивают что-либо на основе условия, -являющегося истинным или ложным. Он был добавлен в Python в версии 2.5 . -Он просто позволяет протестировать условие в одной строке, -заменяя многострочное if-else, делая код компактным. -""" - -user_year = int(input('Введите год, а скажу, високосный ли он: ')) -result = 'Это високосный год' if (user_year % 4 == 0 and user_year % 100 != 0) \ - or user_year % 400 == 0 else 'обычный' -print(f'Год - {result}') - - -if (user_year % 400 == 0 or user_year % 4 == 0) and user_year % 100 != 0: - print('Это високосный год') -else: - print('Это обычный год') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" deleted file mode 100644 index 0974234a..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" +++ /dev/null @@ -1,15 +0,0 @@ -""" -Задание 9. Вводятся три разных числа. Найти, какое из них является средним -(больше одного, но меньше другого). - -Подсказка: можно добавить проверку, что введены равные числа -""" -a = int(input('Введите первое число: ')) -b = int(input('Введите второе число: ')) -c = int(input('ведите третье число: ')) -if c < a < b or b < a < c: - print(f'Среднее число a - {a}') -elif a < c < b or b < c < a: - print(f'Среднее число a - {c}') -else: - print(f'Среднее число b - {b}') diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" deleted file mode 100644 index b0738925..00000000 --- "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" +++ /dev/null @@ -1,4 +0,0 @@ -���������� �� ���� ������� �����: -1. ������ ������ ��� ������ ��������� ��������� ��� ��������� � ���������� (���� � �������� ����� �� ����� 2 � ��� �� �� ���������� ��� �������). -2. ���������� �. 1. ������� ������ �� ����� 3, ������� ������������ ������ ������ ��� ���. -3. ���� ���� ��� � ��������, ����������� ������ �������� ����� ����������� ��������. From a627bf700d6f587823d14f3827bd669ecb271f75 Mon Sep 17 00:00:00 2001 From: leget Date: Sat, 20 Jun 2020 12:38:17 +0300 Subject: [PATCH 14/25] =?UTF-8?q?New=20Revert=20"=D0=A1=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B0=D0=BB=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 3df1ad630af9351fb071bf15afd42415b2552cd1. --- .../task_1.py" | 125 ------------------ 1 file changed, 125 deletions(-) diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index 905863c3..ad375e7b 100644 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -12,128 +12,3 @@ ВНИМАНИЕ: ЗАДАНИЯ, В КОТОРЫХ БУДУТ ГОЛЫЕ ЦИФРЫ ЗАМЕРОВ (БЕЗ АНАЛИТИКИ) БУДУТ ПРИНИМАТЬСЯ С ОЦЕНКОЙ УДОВЛЕТВОРИТЕЛЬНО """ -import timeit -from random import randint - - -# user_input = int(input('Введите число: ')) - - -def test_func(user_input): - new_number = 0 - while user_input > 0: - new_number = new_number * 10 + user_input % 10 - user_input //= 10 - # print(new_number) - - -# test_func(user_input) - -# user_input_lst = input('Введите число: ') - - -def test_func_2(user_input_lst): - user_input_lst = ''.join(reversed(user_input_lst)) - # print(user_input_lst) - - -# test_func_2(user_input_lst) - - -def mirror_number(user_input, new_number=0): - if user_input == 0: - return # print(f'Число наооборот {new_number}') - new_number = new_number * 10 + user_input % 10 - user_input //= 10 - return mirror_number(user_input, new_number) - - -# mirror_number(int(input('Введите натуральное число: '))) - -print( - timeit.timeit("test_func(123456123456123456123456123456123456123456123456)", setup="from __main__ import test_func", - number=10000)) -print(timeit.timeit("test_func_2('123456123456123456123456123456123456123456123456')", - setup="from __main__ import test_func_2", number=10000)) -print(timeit.timeit("mirror_number(123456123456123456123456123456123456123456123456)", - setup="from __main__ import mirror_number", number=10000)) -''' -Результаты при выполнение функций, которые делают обратное число, -заметно лучше показывает себя функция, которая работает со строкой -с помощью встроенной функции reversed. Замеры времени числа 123456: -0.03188213399698725 - цикл -0.015842726003029384 - встроенная функция -0.07451771100022597 - рекурсия -Особенно это заметно на большом числе. -Замеры времени числа 123456123456123456123456123456123456123456123456: -0.38418162999732886 - цикл -0.05222697299905121 - встроенная функция -0.4566892939983518 - рекурсия -''' - -a = [randint(10, 20) for x in range(1, 110)] -print(a) - - -def test_1(): - max_number = max(a, key=lambda i: a.count(i)) - # print(f'Число {max_number} встречается в массиве чаще всего') - - -def test_2(): - max_cnt = 0 - number = a[0] - for i in range(0, len(a)): - cnt = 1 - for j in range(i + 1, len(a)): - if a[i] == a[j]: - cnt += 1 - if cnt > max_cnt: - max_cnt = cnt - number = a[i] - # print(f'Число {number} встречается в массиве чаще всего, а именно {max_cnt} раз(а)') - - -print(timeit.timeit("test_1()", setup="from __main__ import test_1", number=100)) -print(timeit.timeit("test_2()", setup="from __main__ import test_2", number=100)) - -""" -Результаты работы функций: -7.929421408000053 -20.140352697999333 -Применение встроенной функции позволило сократить время работы примерно в 3 раза -""" - - -# Функция декоратор подсчета времени -def time_decor(func, n=100): - start_time = timeit.default_timer() - i = 0 - while i < n: - func() - i += 1 - print(timeit.default_timer() - start_time) - - -@time_decor -def test_decor(): - max_number = max(a, key=lambda i: a.count(i)) - - -@time_decor -def test_decor_1(): - max_cnt = 0 - number = a[0] - for i in range(0, len(a)): - cnt = 1 - for j in range(i + 1, len(a)): - if a[i] == a[j]: - cnt += 1 - if cnt > max_cnt: - max_cnt = cnt - number = a[i] - - -""" -Фунцкция декоратор на мой взгляд самый удобный вариант подсчета -""" From 7ddf6de5150f324aff8dc5685ac411d42516be3f Mon Sep 17 00:00:00 2001 From: leget Date: Sat, 20 Jun 2020 12:56:36 +0300 Subject: [PATCH 15/25] =?UTF-8?q?=D0=9E=D0=BA=D0=BE=D0=BD=D1=87=D0=B0?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=20=D0=B2=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B0=D0=BD=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index ad375e7b..e498bad4 100644 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -12,3 +12,129 @@ ВНИМАНИЕ: ЗАДАНИЯ, В КОТОРЫХ БУДУТ ГОЛЫЕ ЦИФРЫ ЗАМЕРОВ (БЕЗ АНАЛИТИКИ) БУДУТ ПРИНИМАТЬСЯ С ОЦЕНКОЙ УДОВЛЕТВОРИТЕЛЬНО """ +import timeit +from random import randint + + +# user_input = int(input('Введите число: ')) + + +def test_func(user_input): + new_number = 0 + while user_input > 0: + new_number = new_number * 10 + user_input % 10 + user_input //= 10 + # print(new_number) + + +# test_func(user_input) + +# user_input_lst = input('Введите число: ') + + +def test_func_2(user_input_lst): + user_input_lst = ''.join(reversed(user_input_lst)) + # print(user_input_lst) + + +# test_func_2(user_input_lst) + + +def mirror_number(user_input, new_number=0): + if user_input == 0: + return # print(f'Число наооборот {new_number}') + new_number = new_number * 10 + user_input % 10 + user_input //= 10 + return mirror_number(user_input, new_number) + + +# mirror_number(int(input('Введите натуральное число: '))) + +print( + timeit.timeit("test_func(123456123456123456123456123456123456123456123456)", setup="from __main__ import test_func", + number=10000)) +print(timeit.timeit("test_func_2('123456123456123456123456123456123456123456123456')", + setup="from __main__ import test_func_2", number=10000)) +print(timeit.timeit("mirror_number(123456123456123456123456123456123456123456123456)", + setup="from __main__ import mirror_number", number=10000)) +''' +Результаты при выполнение функций, которые делают обратное число, +заметно лучше показывает себя функция, которая работает со строкой +с помощью встроенной функции reversed. Замеры времени числа 123456: +0.03188213399698725 - цикл +0.015842726003029384 - встроенная функция +0.07451771100022597 - рекурсия +Особенно это заметно на большом числе. +Замеры времени числа 123456123456123456123456123456123456123456123456: +0.38418162999732886 - цикл +0.05222697299905121 - встроенная функция +0.4566892939983518 - рекурсия +''' + +a = [randint(10, 20) for x in range(1, 110)] +print(a) + + +def test_1(): + max_number = max(a, key=lambda i: a.count(i)) + # print(f'Число {max_number} встречается в массиве чаще всего') + + +def test_2(): + max_cnt = 0 + number = a[0] + for i in range(0, len(a)): + cnt = 1 + for j in range(i + 1, len(a)): + if a[i] == a[j]: + cnt += 1 + if cnt > max_cnt: + max_cnt = cnt + number = a[i] + # print(f'Число {number} встречается в массиве чаще всего, а именно {max_cnt} раз(а)') + + +print(timeit.timeit("test_1()", setup="from __main__ import test_1", number=100)) +print(timeit.timeit("test_2()", setup="from __main__ import test_2", number=100)) + +""" +Результаты работы функций: +7.929421408000053 +20.140352697999333 +Применение встроенной функции позволило сократить время работы примерно в 3 раза +""" + + +# Функция декоратор подсчета времени +def time_decor(func, n=100): + start_time = timeit.default_timer() + i = 0 + while i < n: + func() + i += 1 + print(timeit.default_timer() - start_time) + + +@time_decor +def test_decor(): + max_number = max(a, key=lambda i: a.count(i)) + + +@time_decor +def test_decor_1(): + max_cnt = 0 + number = a[0] + for i in range(0, len(a)): + cnt = 1 + for j in range(i + 1, len(a)): + if a[i] == a[j]: + cnt += 1 + if cnt > max_cnt: + max_cnt = cnt + number = a[i] + + +""" +Фунцкция декоратор на мой взгляд самый удобный вариант подсчета +""" + From d16e788ee5b6cc1f9770f35e00bc26366eadfef2 Mon Sep 17 00:00:00 2001 From: leget Date: Sun, 21 Jun 2020 10:16:57 +0300 Subject: [PATCH 16/25] test --- .gitignore | 11 -- .../task_1.py" | 126 ------------------ 2 files changed, 137 deletions(-) delete mode 100644 .gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 75517caf..00000000 --- a/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -sdist/ -.idea/ -var/ -wheels/ -pip-wheel-metadata/ -share/python-wheels/ -*.egg-info/ -.installed.cfg -*.xml -*.iml - diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index e498bad4..ad375e7b 100644 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -12,129 +12,3 @@ ВНИМАНИЕ: ЗАДАНИЯ, В КОТОРЫХ БУДУТ ГОЛЫЕ ЦИФРЫ ЗАМЕРОВ (БЕЗ АНАЛИТИКИ) БУДУТ ПРИНИМАТЬСЯ С ОЦЕНКОЙ УДОВЛЕТВОРИТЕЛЬНО """ -import timeit -from random import randint - - -# user_input = int(input('Введите число: ')) - - -def test_func(user_input): - new_number = 0 - while user_input > 0: - new_number = new_number * 10 + user_input % 10 - user_input //= 10 - # print(new_number) - - -# test_func(user_input) - -# user_input_lst = input('Введите число: ') - - -def test_func_2(user_input_lst): - user_input_lst = ''.join(reversed(user_input_lst)) - # print(user_input_lst) - - -# test_func_2(user_input_lst) - - -def mirror_number(user_input, new_number=0): - if user_input == 0: - return # print(f'Число наооборот {new_number}') - new_number = new_number * 10 + user_input % 10 - user_input //= 10 - return mirror_number(user_input, new_number) - - -# mirror_number(int(input('Введите натуральное число: '))) - -print( - timeit.timeit("test_func(123456123456123456123456123456123456123456123456)", setup="from __main__ import test_func", - number=10000)) -print(timeit.timeit("test_func_2('123456123456123456123456123456123456123456123456')", - setup="from __main__ import test_func_2", number=10000)) -print(timeit.timeit("mirror_number(123456123456123456123456123456123456123456123456)", - setup="from __main__ import mirror_number", number=10000)) -''' -Результаты при выполнение функций, которые делают обратное число, -заметно лучше показывает себя функция, которая работает со строкой -с помощью встроенной функции reversed. Замеры времени числа 123456: -0.03188213399698725 - цикл -0.015842726003029384 - встроенная функция -0.07451771100022597 - рекурсия -Особенно это заметно на большом числе. -Замеры времени числа 123456123456123456123456123456123456123456123456: -0.38418162999732886 - цикл -0.05222697299905121 - встроенная функция -0.4566892939983518 - рекурсия -''' - -a = [randint(10, 20) for x in range(1, 110)] -print(a) - - -def test_1(): - max_number = max(a, key=lambda i: a.count(i)) - # print(f'Число {max_number} встречается в массиве чаще всего') - - -def test_2(): - max_cnt = 0 - number = a[0] - for i in range(0, len(a)): - cnt = 1 - for j in range(i + 1, len(a)): - if a[i] == a[j]: - cnt += 1 - if cnt > max_cnt: - max_cnt = cnt - number = a[i] - # print(f'Число {number} встречается в массиве чаще всего, а именно {max_cnt} раз(а)') - - -print(timeit.timeit("test_1()", setup="from __main__ import test_1", number=100)) -print(timeit.timeit("test_2()", setup="from __main__ import test_2", number=100)) - -""" -Результаты работы функций: -7.929421408000053 -20.140352697999333 -Применение встроенной функции позволило сократить время работы примерно в 3 раза -""" - - -# Функция декоратор подсчета времени -def time_decor(func, n=100): - start_time = timeit.default_timer() - i = 0 - while i < n: - func() - i += 1 - print(timeit.default_timer() - start_time) - - -@time_decor -def test_decor(): - max_number = max(a, key=lambda i: a.count(i)) - - -@time_decor -def test_decor_1(): - max_cnt = 0 - number = a[0] - for i in range(0, len(a)): - cnt = 1 - for j in range(i + 1, len(a)): - if a[i] == a[j]: - cnt += 1 - if cnt > max_cnt: - max_cnt = cnt - number = a[i] - - -""" -Фунцкция декоратор на мой взгляд самый удобный вариант подсчета -""" - From 86051e6c0d734b152275e0afc2288f4c3d97334d Mon Sep 17 00:00:00 2001 From: leget Date: Sun, 21 Jun 2020 10:26:17 +0300 Subject: [PATCH 17/25] test2 --- .../inspectionProfiles/profiles_settings.xml" | 6 + .../.idea/misc.xml" | 4 + .../.idea/modules.xml" | 8 + .../.idea/vcs.xml" | 6 + .../.idea/workspace.xml" | 131 ++++++++++ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 + .../task_1.py" | 15 ++ .../task_2.py" | 8 + .../task_3.py" | 15 ++ .../task_4.py" | 16 ++ .../task_5.py" | 12 + .../task_6.py" | 10 + .../task_7.py" | 6 + .../task_8.py" | 18 ++ .../task_9.py" | 6 + ...1\207\320\260\320\275\320\270\320\265.txt" | 4 + .../inspectionProfiles/profiles_settings.xml" | 6 + .../.idea/misc.xml" | 4 + .../.idea/modules.xml" | 8 + .../.idea/vcs.xml" | 6 + .../.idea/workspace.xml" | 238 ++++++++++++++++++ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 + .../inspectionProfiles/profiles_settings.xml" | 6 + .../.idea/misc.xml" | 4 + .../.idea/modules.xml" | 8 + .../.idea/vcs.xml" | 6 + .../.idea/workspace.xml" | 191 ++++++++++++++ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 + .../inspectionProfiles/profiles_settings.xml" | 6 + .../.idea/misc.xml" | 4 + .../.idea/modules.xml" | 8 + .../.idea/vcs.xml" | 6 + .../.idea/workspace.xml" | 85 +++++++ ...0\264\320\260\320\275\320\270\320\265.iml" | 8 + 34 files changed, 883 insertions(+) create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" create mode 100644 "\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" create mode 100644 "\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" create mode 100644 "\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" create mode 100644 "\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" new file mode 100644 index 00000000..105ce2da --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" new file mode 100644 index 00000000..65531ca9 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" new file mode 100644 index 00000000..4458ceb4 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" new file mode 100644 index 00000000..2ac57524 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1592410417223 + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" new file mode 100644 index 00000000..d0876a78 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" new file mode 100644 index 00000000..e3232d56 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -0,0 +1,15 @@ +""" +Задание 1. +Найти сумму и произведение цифр трехзначного числа, +которое вводит пользователь. +#print(124 // 100) = 1 - отбросить остаток +#print((124 // 10) % 10) = 2 - остаток от деления числа 12 на 10 +#print(124 % 10) = 4 - остаток от деления числа 124 на 10 + +Пример: Целое трехзначное число 123 +Сумма = 6 +Произведение = 6 + +Подсказка: для получения отдельных цифр числа используйте арифм. операции +и НЕ ИСПОЛЬЗУЙТЕ операции с массивами +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" new file mode 100644 index 00000000..b14becdd --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" @@ -0,0 +1,8 @@ +""" +Задание 2. Выполнить логические побитовые операции "И", "ИЛИ" +и др. над числами 5 и 6. Выполнить +над числом 5 побитовый сдвиг вправо и влево на два знака. + +Подсказка: это стандартные операции, которые осуществляются с помощью +стандартных операторов. Попробуйте найти каких именно. +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" new file mode 100644 index 00000000..ab7f1346 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" @@ -0,0 +1,15 @@ +""" +Задание 3. По введенным пользователем координатам двух +точек вывести уравнение прямой, +проходящей через эти точки. + +Подсказка: +Запросите у пользователя значения координат X и Y для первой и второй точки +Найдите в учебнике по высшей математике формулы расчета: +k – угловой коэффициент (действительное число), b – свободный член (действительное число) +Сформируйте уравнение прямой по формуле: y = kx + b – функция общего вида + +Пример: +X1_VAL = 2, Y1_VAL = 3, X2_VAL = 4, Y2_VAL = 5 +Уравнение прямой, проходящей через эти точки: y = 1.0x + 1.0 +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" new file mode 100644 index 00000000..05c98422 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_4.py" @@ -0,0 +1,16 @@ +""" +Задание 4. Написать программу, которая генерирует в указанных пользователем границах: + случайное целое число; + случайное вещественное число; + случайный символ. +Для каждого из трех случаев пользователь задает свои границы диапазона. +Например, если надо получить случайный символ от 'a' до 'f', то вводятся эти символы. +Программа должна вывести на экран любой символ алфавита от 'a' до 'f' включительно. + +Подсказка: +Нужно обойтись без ф-ций randint() и uniform() +Использование этих ф-ций = задание не засчитывается + +Функцию random() использовать можно +Опирайтесь на пример к уроку +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" new file mode 100644 index 00000000..d4db92c5 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_5.py" @@ -0,0 +1,12 @@ +""" +Задание 5. +Пользователь вводит две буквы. Определить, +на каких местах алфавита они стоят, и сколько между ними находится букв. + +Подсказка: +Вводим маленькие латинские буквы. +Обратите внимание, что ввести можно по алфавиту, например, a,z +а можно наоборот - z,a +В обоих случаях программа должна вывести корректный результат. +В обоих случаях он 24, но никак не -24 +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" new file mode 100644 index 00000000..e5380773 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_6.py" @@ -0,0 +1,10 @@ +""" +Задание 6. Пользователь вводит номер буквы в алфавите. +Определить, какая это буква. + +Пример: +Введите номер буквы: 4 +Введёному номеру соответствует буква: d + +Подсказка: используйте ф-ции chr() и ord() +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" new file mode 100644 index 00000000..ab1fcee8 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_7.py" @@ -0,0 +1,6 @@ +""" +7. По длинам трех отрезков, введенных пользователем, +определить возможность существования треугольника, +составленного из этих отрезков. Если такой треугольник существует, +то определить, является ли он разносторонним, равнобедренным или равносторонним. +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" new file mode 100644 index 00000000..75a42e17 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_8.py" @@ -0,0 +1,18 @@ +""" +Задание 8. Определить, является ли год, который ввел пользователем, +високосным или не високосным. + +Подсказка: +Год является високосным в двух случаях: либо он кратен 4, +но при этом не кратен 100, либо кратен 400. + +Попробуйте решить задачу двумя способами: +1. Обычное ветвление +2. Тернарный оператор + +П.С. - Тернарные операторы, также известные как условные выражения, +представляют собой операторы, которые оценивают что-либо на основе условия, +являющегося истинным или ложным. Он был добавлен в Python в версии 2.5 . +Он просто позволяет протестировать условие в одной строке, +заменяя многострочное if-else, делая код компактным. +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" new file mode 100644 index 00000000..59898c6f --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_9.py" @@ -0,0 +1,6 @@ +""" +Задание 9. Вводятся три разных числа. Найти, какое из них является средним +(больше одного, но меньше другого). + +Подсказка: можно добавить проверку, что введены равные числа +""" diff --git "a/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" new file mode 100644 index 00000000..b0738925 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 1. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/\320\237\321\200\320\270\320\274\320\265\321\207\320\260\320\275\320\270\320\265.txt" @@ -0,0 +1,4 @@ +���������� �� ���� ������� �����: +1. ������ ������ ��� ������ ��������� ��������� ��� ��������� � ���������� (���� � �������� ����� �� ����� 2 � ��� �� �� ���������� ��� �������). +2. ���������� �. 1. ������� ������ �� ����� 3, ������� ������������ ������ ������ ��� ���. +3. ���� ���� ��� � ��������, ����������� ������ �������� ����� ����������� ��������. diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" new file mode 100644 index 00000000..105ce2da --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" new file mode 100644 index 00000000..65531ca9 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" new file mode 100644 index 00000000..b25bea73 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" new file mode 100644 index 00000000..a2922a1b --- /dev/null +++ "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" @@ -0,0 +1,238 @@ + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1591814112282 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" deleted file mode 100644 index d0876a78..00000000 --- "a/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 2. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" deleted file mode 100644 index 105ce2da..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" deleted file mode 100644 index 65531ca9..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" deleted file mode 100644 index 81413de9..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" deleted file mode 100644 index 6c0b8635..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" deleted file mode 100644 index 0a5e89f5..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1592245973526 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" deleted file mode 100644 index d0876a78..00000000 --- "a/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 3.\320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" deleted file mode 100644 index 105ce2da..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/inspectionProfiles/profiles_settings.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" deleted file mode 100644 index 65531ca9..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/misc.xml" +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" deleted file mode 100644 index b99b360f..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/modules.xml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" deleted file mode 100644 index 6c0b8635..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/vcs.xml" +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" deleted file mode 100644 index 5c57496a..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/workspace.xml" +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1592501461643 - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" "b/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" deleted file mode 100644 index d0876a78..00000000 --- "a/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/.idea/\320\243\321\200\320\276\320\272 4. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265.iml" +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file From 5d2eb3014ff5a1c8cba9f50d32ad19aa28f93841 Mon Sep 17 00:00:00 2001 From: leget Date: Wed, 1 Jul 2020 10:29:46 +0300 Subject: [PATCH 20/25] =?UTF-8?q?=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20?= =?UTF-8?q?=D0=94=D0=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 43 ++++++++++ .../task_2.py" | 85 +++++++++++++++++++ .../task_3.py" | 25 ++++++ 3 files changed, 153 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index 07560cfa..e5263468 100644 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -9,3 +9,46 @@ Подсказка: обратите внимание, сортируем не по возрастанию, как в примере, а по убыванию """ + +from random import randint +from timeit import timeit + + +def bubble_sort(orig_list): + n = 1 + while n < len(orig_list): + for i in range(len(orig_list) - n): + if orig_list[i] < orig_list[i + 1]: + orig_list[i], orig_list[i + 1] = orig_list[i + 1], orig_list[i] + n += 1 + return orig_list + + +def bubble_sort2(orig_list): + for i in range(len(orig_list) - 1, 0, -1): + flag = True + for n in range(i): + if orig_list[n] < orig_list[n + 1]: + orig_list[n], orig_list[n + 1] = orig_list[n + 1], orig_list[n] + flag = False + if flag: + break + return orig_list + + +orig_list = [randint(-100, 100) for _ in range(1000)] +test_list = orig_list.copy() +test_list_2 = orig_list.copy() + +bubble_sort(test_list) +bubble_sort2(test_list_2) + +print(orig_list) +print(test_list) +print(test_list_2) + +print(timeit("bubble_sort(test_list)", setup="from __main__ import bubble_sort, test_list", number=1)) +print(timeit("bubble_sort(test_list_2)", setup="from __main__ import bubble_sort, test_list_2", number=1)) + +# Проведя замеры времени, сделал вывод, что функция с "флагом" работает немного быстрее, +# но не всегда. зависит от исходного списка diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" index 73d3dfb6..925c9471 100644 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" @@ -8,3 +8,88 @@ Исходный - [46.11436617832828, 41.62921998361278, 18.45859540989644, 12.128870723745806, 8.025098788570562] Отсортированный - [8.025098788570562, 12.128870723745806, 18.45859540989644, 41.62921998361278, 46.11436617832828] """ + +from random import uniform +from timeit import timeit + +user_input = int(input('Введите количество чисел в массиве: ')) +orig_list = [uniform(0, 50) for _ in range(user_input)] +print(orig_list) +test_list = orig_list.copy() +test_list_2 = orig_list.copy() + + +# вариант функции из урока +def merge_sort(orig_list): + if len(orig_list) > 1: + center = len(orig_list) // 2 + left = orig_list[:center] + right = orig_list[center:] + + merge_sort(left) + merge_sort(right) + + i, j, k = 0, 0, 0 + + while i < len(left) and j < len(right): + if left[i] < right[j]: + orig_list[k] = left[i] + i += 1 + else: + orig_list[k] = right[j] + j += 1 + k += 1 + + while i < len(left): + orig_list[k] = left[i] + i += 1 + k += 1 + + while j < len(right): + orig_list[k] = right[j] + j += 1 + k += 1 + return orig_list + + +# немного другой вариант сортировки слиянием +def merge_sort_2(oridgin_list): + if len(oridgin_list) < 2: + return oridgin_list + + mid = len(oridgin_list) // 2 + + left = merge_sort(oridgin_list[:mid]) + right = merge_sort(oridgin_list[mid:]) + + return merge(left, right) + + +def merge(left, right): + result = [] + i = 0 + j = 0 + while i < len(left) and j < len(right): + if left[i] <= right[j]: + result.append(left[i]) + i += 1 + else: + result.append(right[j]) + j += 1 + + result += left[i:] + result += right[j:] + return result + + +merge_sort(test_list) +merge_sort_2(test_list_2) +print(test_list) + +print(timeit("merge_sort(test_list)", setup="from __main__ import merge_sort, test_list", number=1000)) +print(timeit("merge_sort_2(test_list_2)", setup="from __main__ import merge_sort_2, test_list_2", number=1000)) + +''' +Провел замеры скорости работы двух функций, вариант данный на уроке работает +примерно на 20% быстрее. +''' diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" index 33530404..d6a114c8 100644 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" +++ "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" @@ -6,3 +6,28 @@ массива. Но если это слишком сложно, то используйте метод сортировки, который не рассматривался на уроках """ +from random import randint + +m = int(input('Введите число m, что бы сфрормировать массив по формуле 2m + 1: ')) +orig_list = [randint(-100, 100) for _ in range(2 * m + 1)] +print(f'не отсортированный массив: \n {orig_list}') + + +def cocktail_sort(orig_list): + left = 0 + right = len(orig_list) - 1 + while left <= right: + for i in range(left, right): + if orig_list[i] > orig_list[i + 1]: + orig_list[i], orig_list[i + 1] = orig_list[i + 1], orig_list[i] + right -= 1 + for i in range(right, left, -1): + if orig_list[i - 1] > orig_list[i]: + orig_list[i], orig_list[i - 1] = orig_list[i - 1], orig_list[i] + left += 1 + return orig_list + + +cocktail_sort(orig_list) +print(f'отсортированный массив: \n {orig_list}') +print(f'Медиана заданного массива число {orig_list[m]}') From 6f7986cb34e910187e35f4eb19a1ef452d142f99 Mon Sep 17 00:00:00 2001 From: leget Date: Wed, 1 Jul 2020 10:34:06 +0300 Subject: [PATCH 21/25] =?UTF-8?q?=D1=83=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B5=20=D0=BD=D1=83=D0=B6=D0=BD=D0=BE=D0=B5=20=D0=B4?= =?UTF-8?q?=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 111 ------------------ 1 file changed, 111 deletions(-) delete mode 100644 "\320\243\321\200\320\276\320\272 6. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" diff --git "a/\320\243\321\200\320\276\320\272 6. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 6. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" deleted file mode 100644 index 5f9f67a2..00000000 --- "a/\320\243\321\200\320\276\320\272 6. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ /dev/null @@ -1,111 +0,0 @@ -""" -1. Подсчитать, сколько было выделено памяти под переменные в ранее -разработанных программах в рамках первых трех уроков. -Проанализировать результат и определить программы с -наиболее эффективным использованием памяти. -Примечание: Для анализа возьмите любые 1-3 ваших программы или несколько -вариантов кода для одной и той же задачи. -Результаты анализа вставьте в виде комментариев к коду. -Также укажите в комментариях версию Python и разрядность вашей ОС. - - -ВНИМАНИЕ: ЗАДАНИЯ, В КОТОРЫХ БУДУТ ГОЛЫЕ ЦИФРЫ ЗАМЕРОВ (БЕЗ АНАЛИТИКИ) -БУДУТ ПРИНИМАТЬСЯ С ОЦЕНКОЙ УДОВЛЕТВОРИТЕЛЬНО -""" -# Ubuntu 18.04.4 LTS x86_64 -# Python 3.6.9 - - -from memory_profiler import profile -from random import randint - - -# В одномерном массиве найти сумму элементов, -# находящихся между минимальным и максимальным элементами. -# Сами минимальный и максимальный элементы в сумму не включать. -@profile -def test(): - a = [randint(-100, 100) for x in range(1, 100000)] - # print(a) это не принципиальный вывод, можно убрать - - result = 0 - min_idx = 0 - max_idx = 0 - for i in range(1, len(a)): - if a[i] < a[min_idx]: - min_idx = i - elif a[i] > a[max_idx]: - max_idx = i - if min_idx > max_idx: - min_idx, max_idx = max_idx, min_idx - for i in range(min_idx + 1, max_idx): - result += a[i] - print(result) - print(a[min_idx], a[max_idx]) - del a - - -test() - - -# в условии задачи стоит поиск суммы чисел между максимальным и минимальным -# соответственно после выполнения функции сам массив можно удалить и высвободить 2.7 MiB памяти -# а так же можно убрать принт массива после генерации и освободить еще 0.1 Mib - -@profile -def test_2(): - a = [] - b = [] - for i in range(1, 100000): - a.append(randint(0, 100)) - for j in range(0, len(a)): - if a[j] % 2 == 0: - b.append(j) - print(b) - - -test_2() - - -@profile -def test_2_2(): - a = [] - b = [] - for i in range(1, 100000): - a.append(randint(0, 100)) - for j in range(0, len(a)): - if a[j] % 2 == 0: - b.append(j) - print(b) - del b - del a - - -test_2_2() - - -# удалив уже не нужные списки, удалось сэкономить 2.7 MiB -@profile -def test_3(): - a = [randint(0, 100) for x in range(1, 100000)] - b = [x for x in range(0, len(a)) if a[x] % 2 == 0] - print(b) -# Если написать сразу print([x for x in range(0, len(a)) if a[x] % 2 == 0]) -# так же можно выйграть немного памяти - -test_3() - - -# Заменив цикл генератором прибавку в памяти не заметил - -@profile -def test_4(): - a = [randint(0, 100) for x in range(1, 100000)] - b = tuple([x for x in range(0, len(a)) if a[x] % 2 == 0]) - print(b) - - -test_4() - -# Заменив список на кортеж удалось освободить 0.1 MiB, но если список был бы длиннее, -# можно было бы высвободить больше памяти From 1949781a9bd2878fac62b6aa793a99c644b5ea6d Mon Sep 17 00:00:00 2001 From: leget Date: Thu, 2 Jul 2020 19:59:53 +0300 Subject: [PATCH 22/25] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20?= =?UTF-8?q?=D0=94=D0=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 9 +++ .../task_2.py" | 57 +++++++++++++++++++ 2 files changed, 66 insertions(+) diff --git "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" index 045a8cc9..1cc334a4 100644 --- "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" @@ -16,3 +16,12 @@ Итог: 6 подстрок """ +from hashlib import sha1 + +user_input = input('Введите строку: ') +result = set() +for i in range(0, len(user_input) + 1): + for j in range(i + 1, len(user_input) + 1): + result.add(sha1(user_input[i:j].encode('utf-8')).hexdigest()) +result.remove(sha1(user_input.encode('utf-8')).hexdigest()) # удалим из множества введенную строку +print(f'Колличество различных подстрок в строке "{user_input}" равно {len(result)}') diff --git "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" index 96b7bdec..15475dc8 100644 --- "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" @@ -8,3 +8,60 @@ Результат: 00 11 11 101 010 00 011 011 101 010 00 11 11 1000 1001 """ +import heapq # модуль для работы с мин. кучей из стандартной библиотеки Python +from collections import Counter # словарь в котором для каждого объекта поддерживается счетчик +from collections import namedtuple + +# добавим классы для хранения информации о структуре дерева +# воспользуемся функцией namedtuple из стандартной библиотеки +class Node(namedtuple("Node", ["left", "right"])): # класс для ветвей дерева - внутренних узлов; у них есть потомки + def walk(self, code, acc): + # чтобы обойти дерево нам нужно: + self.left.walk(code, acc + "0") # пойти в левого потомка, добавив к префиксу "0" + self.right.walk(code, acc + "1") # затем пойти в правого потомка, добавив к префиксу "1" + + +class Leaf(namedtuple("Leaf", ["char"])): # класс для листьев дерева, у него нет потомков, но есть значение символа + def walk(self, code, acc): + # потомков у листа нет, по этому для значения мы запишем построенный код для данного символа + code[self.char] = acc or "0" # если строка длиной 1 то acc = "", для этого случая установим значение acc = "0" + + +def huffman_encode(s): # функция кодирования строки в коды Хаффмана + h = [] # инициализируем очередь с приоритетами + for ch, freq in Counter(s).items(): # постоим очередь с помощью цикла, добавив счетчик, уникальный для всех листьев + h.append((freq, len(h), Leaf(ch))) # очередь будет представлена частотой символа, счетчиком и самим символом + heapq.heapify(h) # построим очередь с приоритетами + count = len(h) # инициализируем значение счетчика длиной очереди + while len(h) > 1: # пока в очереди есть хотя бы 2 элемента + freq1, _count1, left = heapq.heappop(h) # вытащим элемент с минимальной частотой - левый узел + freq2, _count2, right = heapq.heappop(h) # вытащим следующий элемент с минимальной частотой - правый узел + # поместим в очередь новый элемент, у которого частота равна суме частот вытащенных элементов + heapq.heappush(h, (freq1 + freq2, count, Node(left, right))) # добавим новый внутренний узел у которого + # потомки left и right соответственно + count += 1 # инкрементируем значение счетчика при добавлении нового элемента дерева + code = {} # инициализируем словарь кодов символов + if h: # если строка пустая, то очередь будет пустая и обходить нечего + [(_freq, _count, root)] = h # в очереди 1 элемент, приоритет которого не важен, а сам элемент - корень дерева + root.walk(code, "") # обойдем дерева от корня и заполним словарь для получения кодирования Хаффмана + return code # возвращаем словарь символов и соответствующих им кодов + + +def main(): + s = input("Введите строку: ") # читаем строку длиной до 10**4 + code = huffman_encode(s) # кодируем строку + encoded = "".join(code[ch] for ch in s) # отобразим закодированную версию, отобразив каждый символ + # в соответствующий код и конкатенируем результат + print(len(code), len(encoded)) # выведем число символов и длину закодированной строки + for ch in sorted(code): # обойдем символы в словаре в алфавитном порядке с помощью функции sorted() + print("{}: {}".format(ch, code[ch])) # выведем символ и соответствующий ему код + print(encoded) # выведем закодированную строку + + +main() + +''' +Почитал статью в интерненте, от туда же и взял код решения. Так жы пытался разобраться в кодах +из урока, если быть откровенным, очень тяжело осмыслить. Понял не все. В начале вроде все понятно, +но чем дальше погружаешься в код, тем меньше ясности. Буду дальше учиться. Спасибо за курс. +''' \ No newline at end of file From e2526efc0ab37663f2739bde6776317582228f11 Mon Sep 17 00:00:00 2001 From: leget Date: Thu, 2 Jul 2020 20:06:36 +0300 Subject: [PATCH 23/25] =?UTF-8?q?=D1=83=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B5=20=D0=BD=D1=83=D0=B6=D0=BD=D1=8B=D0=B5=20=D1=84?= =?UTF-8?q?=D0=B0=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_1.py" | 54 ------------------- 1 file changed, 54 deletions(-) delete mode 100644 "\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" deleted file mode 100644 index e5263468..00000000 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_1.py" +++ /dev/null @@ -1,54 +0,0 @@ -""" -1. Отсортируйте по убыванию методом "пузырька" одномерный целочисленный массив, -заданный случайными числами на промежутке [-100; 100). Выведите на экран -исходный и отсортированный массивы. Сортировка должна быть реализована в -виде функции. Обязательно доработайте алгоритм (сделайте его умнее). -Идея доработки: если за проход по списку не совершается ни одной сортировки, то завершение -Обязательно сделайте замеры времени обеих реализаций - -Подсказка: обратите внимание, сортируем не по возрастанию, как в примере, -а по убыванию -""" - -from random import randint -from timeit import timeit - - -def bubble_sort(orig_list): - n = 1 - while n < len(orig_list): - for i in range(len(orig_list) - n): - if orig_list[i] < orig_list[i + 1]: - orig_list[i], orig_list[i + 1] = orig_list[i + 1], orig_list[i] - n += 1 - return orig_list - - -def bubble_sort2(orig_list): - for i in range(len(orig_list) - 1, 0, -1): - flag = True - for n in range(i): - if orig_list[n] < orig_list[n + 1]: - orig_list[n], orig_list[n + 1] = orig_list[n + 1], orig_list[n] - flag = False - if flag: - break - return orig_list - - -orig_list = [randint(-100, 100) for _ in range(1000)] -test_list = orig_list.copy() -test_list_2 = orig_list.copy() - -bubble_sort(test_list) -bubble_sort2(test_list_2) - -print(orig_list) -print(test_list) -print(test_list_2) - -print(timeit("bubble_sort(test_list)", setup="from __main__ import bubble_sort, test_list", number=1)) -print(timeit("bubble_sort(test_list_2)", setup="from __main__ import bubble_sort, test_list_2", number=1)) - -# Проведя замеры времени, сделал вывод, что функция с "флагом" работает немного быстрее, -# но не всегда. зависит от исходного списка From 46eb825f4f2616146db149dce7f8cbc80194135f Mon Sep 17 00:00:00 2001 From: leget Date: Thu, 2 Jul 2020 20:09:06 +0300 Subject: [PATCH 24/25] =?UTF-8?q?=D0=94=D0=97=208?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_2.py" | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" index 15475dc8..dd71505b 100644 --- "a/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ "b/\320\243\321\200\320\276\320\272 8. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" @@ -12,6 +12,7 @@ from collections import Counter # словарь в котором для каждого объекта поддерживается счетчик from collections import namedtuple + # добавим классы для хранения информации о структуре дерева # воспользуемся функцией namedtuple из стандартной библиотеки class Node(namedtuple("Node", ["left", "right"])): # класс для ветвей дерева - внутренних узлов; у них есть потомки @@ -48,9 +49,9 @@ def huffman_encode(s): # функция кодирования строки в def main(): - s = input("Введите строку: ") # читаем строку длиной до 10**4 - code = huffman_encode(s) # кодируем строку - encoded = "".join(code[ch] for ch in s) # отобразим закодированную версию, отобразив каждый символ + user_input = input("Введите строку: ") # читаем строку длиной до 10**4 + code = huffman_encode(user_input) # кодируем строку + encoded = "".join(code[ch] for ch in user_input) # отобразим закодированную версию, отобразив каждый символ # в соответствующий код и конкатенируем результат print(len(code), len(encoded)) # выведем число символов и длину закодированной строки for ch in sorted(code): # обойдем символы в словаре в алфавитном порядке с помощью функции sorted() @@ -64,4 +65,4 @@ def main(): Почитал статью в интерненте, от туда же и взял код решения. Так жы пытался разобраться в кодах из урока, если быть откровенным, очень тяжело осмыслить. Понял не все. В начале вроде все понятно, но чем дальше погружаешься в код, тем меньше ясности. Буду дальше учиться. Спасибо за курс. -''' \ No newline at end of file +''' From 3b87147c8b4193ec180225fd51de9f3a169e3f9e Mon Sep 17 00:00:00 2001 From: leget Date: Thu, 2 Jul 2020 20:11:22 +0300 Subject: [PATCH 25/25] =?UTF-8?q?=D1=83=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D1=83=D0=B6=D0=BD=D1=8B=D0=B5=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task_2.py" | 95 ------------------- .../task_3.py" | 33 ------- 2 files changed, 128 deletions(-) delete mode 100644 "\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" delete mode 100644 "\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" deleted file mode 100644 index 925c9471..00000000 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_2.py" +++ /dev/null @@ -1,95 +0,0 @@ -""" -2. Отсортируйте по возрастанию методом слияния одномерный вещественный массив, -заданный случайными числами на промежутке [0; 50). Выведите на экран исходный -и отсортированный массивы. - -Пример: -Введите число элементов: 5 -Исходный - [46.11436617832828, 41.62921998361278, 18.45859540989644, 12.128870723745806, 8.025098788570562] -Отсортированный - [8.025098788570562, 12.128870723745806, 18.45859540989644, 41.62921998361278, 46.11436617832828] -""" - -from random import uniform -from timeit import timeit - -user_input = int(input('Введите количество чисел в массиве: ')) -orig_list = [uniform(0, 50) for _ in range(user_input)] -print(orig_list) -test_list = orig_list.copy() -test_list_2 = orig_list.copy() - - -# вариант функции из урока -def merge_sort(orig_list): - if len(orig_list) > 1: - center = len(orig_list) // 2 - left = orig_list[:center] - right = orig_list[center:] - - merge_sort(left) - merge_sort(right) - - i, j, k = 0, 0, 0 - - while i < len(left) and j < len(right): - if left[i] < right[j]: - orig_list[k] = left[i] - i += 1 - else: - orig_list[k] = right[j] - j += 1 - k += 1 - - while i < len(left): - orig_list[k] = left[i] - i += 1 - k += 1 - - while j < len(right): - orig_list[k] = right[j] - j += 1 - k += 1 - return orig_list - - -# немного другой вариант сортировки слиянием -def merge_sort_2(oridgin_list): - if len(oridgin_list) < 2: - return oridgin_list - - mid = len(oridgin_list) // 2 - - left = merge_sort(oridgin_list[:mid]) - right = merge_sort(oridgin_list[mid:]) - - return merge(left, right) - - -def merge(left, right): - result = [] - i = 0 - j = 0 - while i < len(left) and j < len(right): - if left[i] <= right[j]: - result.append(left[i]) - i += 1 - else: - result.append(right[j]) - j += 1 - - result += left[i:] - result += right[j:] - return result - - -merge_sort(test_list) -merge_sort_2(test_list_2) -print(test_list) - -print(timeit("merge_sort(test_list)", setup="from __main__ import merge_sort, test_list", number=1000)) -print(timeit("merge_sort_2(test_list_2)", setup="from __main__ import merge_sort_2, test_list_2", number=1000)) - -''' -Провел замеры скорости работы двух функций, вариант данный на уроке работает -примерно на 20% быстрее. -''' diff --git "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" "b/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" deleted file mode 100644 index d6a114c8..00000000 --- "a/\320\243\321\200\320\276\320\272 7. \320\237\321\200\320\260\320\272\321\202\320\270\321\207\320\265\321\201\320\272\320\276\320\265 \320\267\320\260\320\264\320\260\320\275\320\270\320\265/task_3.py" +++ /dev/null @@ -1,33 +0,0 @@ -""" -3. Массив размером 2m + 1, где m – натуральное число, заполнен случайным образом. -Найдите в массиве медиану. Медианой называется элемент ряда, делящий его на -две равные части: в одной находятся элементы, которые не меньше медианы, -в другой – не больше медианы. Задачу можно решить без сортировки исходного -массива. Но если это слишком сложно, то используйте метод сортировки, -который не рассматривался на уроках -""" -from random import randint - -m = int(input('Введите число m, что бы сфрормировать массив по формуле 2m + 1: ')) -orig_list = [randint(-100, 100) for _ in range(2 * m + 1)] -print(f'не отсортированный массив: \n {orig_list}') - - -def cocktail_sort(orig_list): - left = 0 - right = len(orig_list) - 1 - while left <= right: - for i in range(left, right): - if orig_list[i] > orig_list[i + 1]: - orig_list[i], orig_list[i + 1] = orig_list[i + 1], orig_list[i] - right -= 1 - for i in range(right, left, -1): - if orig_list[i - 1] > orig_list[i]: - orig_list[i], orig_list[i - 1] = orig_list[i - 1], orig_list[i] - left += 1 - return orig_list - - -cocktail_sort(orig_list) -print(f'отсортированный массив: \n {orig_list}') -print(f'Медиана заданного массива число {orig_list[m]}')