From f5c738c53967ffea274eebe9b1375e20e74a5e87 Mon Sep 17 00:00:00 2001 From: dartemor Date: Thu, 11 Nov 2021 18:18:45 +0300 Subject: [PATCH] My Mkr1 --- mkr1/DK-91_Koval'chuk_Danylo_Olehovych.rst | 96 ++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/mkr1/DK-91_Koval'chuk_Danylo_Olehovych.rst b/mkr1/DK-91_Koval'chuk_Danylo_Olehovych.rst index 9cd4dc2..d40ee7c 100644 --- a/mkr1/DK-91_Koval'chuk_Danylo_Olehovych.rst +++ b/mkr1/DK-91_Koval'chuk_Danylo_Olehovych.rst @@ -5,25 +5,121 @@ #. Наведіть команди git для додавання файлів та директорій ./dev ./dev/file.c ./.gitignore до локального репозиторію одним комітом (уважно). + #. Яким чином можна додати зміни до вже створеного (останнього) коміту? Наведіть приклад. Чи варто так робити в основних публічних гілках віддаленого репозиторію? Якщо так, коли? Якщо ні, чому? #. Числові типи Python. **Коротко** опишіть з прикладами використання. Створіть функцію, що розраховує реактивний опір конденсатора з ємністю *C* [Ф] на частоті *f* [Гц]. Якщо значення *f* не задано користувачем, за замовчуванням використати 1 кГц. +- Відповідь: + У мові Python існують числові типи: int, long, float, complex + + int - звичайне ціле число (1, 2, 42375, -4357234) + long - велике ціле число яке більше від [-2^32 .. 2^32 - 1], може бути представлене у шістнадцятковому вигляді (5353245543523629843, 0xFFFFFFFFFBBBFFFFAA) + float - число з плаваючою крапкою (2.431, 0.5, -324.888777) + complex - комплексне число (3j, 3e+1j, 1e-8j) + + Функція: + PI = 3.14 + + def react_res(cap, freq = 1000): + rezult = 1/(2*PI*freq*cap) + return rezult + #. Яким чином можна виконати замір швидкості виконання блоку коду Python? Що є швидшим для розрахунку квадратного кореня: оператор піднесення до степеню, функція піднесення для степеню з бібліотеки ``math`` чи спеціалізована функція взяття квадратного кореню з ``math``? Наведіть приклад коду, що визначає швидкість виконання для кожного з випадків. + -Відповідь + import datetime + import math + + start = datetime.datetime.now() + + num = 25 + sqrt = num ** (0.5) + print("Квадратный корень из числа "+str(num)+" это "+str(sqrt)) + + finish = datetime.datetime.now() + print finish-start + + start = datetime.datetime.now() + + num = 25 + sqrt = math.sqrt(num) + print("Квадратный корень из числа " + str(num) + " это " + str(sqrt)) + + finish = datetime.datetime.now() + print finish-start + #. Docstring у функціях. Для чого використовуються? Наведіть приклад функції, що виконує розрахунок за певною формулою з області електроніки або фінансів (на власний розсуд) та містить Docsting (Coding Style – Google) +- Відповідь: + Docsting у функціях використовується для коментування та написання документації для + функції зовнішніх скриптів, бібліотек, модулів, тощо. + Потрібен задля розуміння функцій які виконує ця чи інша функція. + + Приклад: + + def OmFunc(amperage, resistance): + """Example Google codig style: + + This module shows how to calculate voltage by elementary Ohm's law. + U = I * R + + Args: + amperage (float): current amperage in gain. + resistance (float): resistance of chain section + + Example: + >> OmFunc(2, 220) + 440.00 + + Return: + Voltage of cahin section + """ + + return amperage * resistance + #. Аргументи функцій. Яким чином задати значення аргументу за замовчуванням? Коли це не спрацює? Наведіть приклади (пов'язані з галуззю електроніки, наприклад, розрахунок за формулою). #. Конструкція умовного виконання Python. Яким чином можна реалізувати приорітетну логіку перевірок з її допомогою? Наведіть приклад коду, де спочатку перевіряється виконання логічного виразу *A та B*, далі виразу *лише A*. + Якщо виконується перша умова *A та B*, вивести "ONE"; якщо наступна *лише А*, вивести "TWO"; якщо жодна з умов, вивести "FAIL". +- Відповідь + Умовне виконання + + if (state): + ...task... + else: + ...task... + + Пріорітетну логіку можливо реалізувати завдяки конструкціїї elif послідовно перевіряти умову, де за пріорітетністю + спочатку перевіряється перша умова, потім друга, третя і тп. + + if (state1): + ...task1... + elif (state2): + ...task... + elif (state3): + ...task... + else: + ...task... + + Приклад логічного виразу *A та B* + if (a == b == 1) + print("ONE") + elif (a == 1 and b == 0) + print("TWO") + else + print("FAIL") + Якщо виконується перша умова *A та B*, вивести "ONE"; якщо наступна *лише А*, вивести "TWO"; якщо жодна з умов, вивести "FAIL". #. Тернарний оператор Python. Навести код, що **за допомогою тернарного оператора** присвоїть змінній ``var`` значення ``69`` якщо змінна ``arg`` задана в ``None``, в іншому випадку – присвоїть значення ``arg``. Як зробити це без тернарного оператора? Наведіть приклад коду. + - Відповідь + return var = 69 if arg == None else arg = 69