From e8ef051b00853de78b06d9ede099b5560891adb1 Mon Sep 17 00:00:00 2001 From: katushkinsk Date: Fri, 27 Sep 2024 20:51:21 +0300 Subject: [PATCH 01/32] new file --- rectangle.py | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 rectangle.py diff --git a/rectangle.py b/rectangle.py new file mode 100644 index 0000000000..a9634f27c9 --- /dev/null +++ b/rectangle.py @@ -0,0 +1,5 @@ +def area(a, b): + return a * b + +def perimeter(a, b): + return a + b From adeadfdab4cc1246e2bc0d8b85e83692a73accc8 Mon Sep 17 00:00:00 2001 From: katushkinsk Date: Fri, 27 Sep 2024 20:54:35 +0300 Subject: [PATCH 02/32] error fixed --- rectangle.py | 2 +- triangle.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 triangle.py diff --git a/rectangle.py b/rectangle.py index a9634f27c9..5eabcdc838 100644 --- a/rectangle.py +++ b/rectangle.py @@ -2,4 +2,4 @@ def area(a, b): return a * b def perimeter(a, b): - return a + b + return (a + b)*2 diff --git a/triangle.py b/triangle.py new file mode 100644 index 0000000000..5997dcc7f0 --- /dev/null +++ b/triangle.py @@ -0,0 +1,7 @@ + +def area(a, h): + return a * h / 2 + +def perimeter(a, b, c): + return a + b + c + From c9b53b4ea32de55ce3171e372bfd969ec4600c0b Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:25:54 +0300 Subject: [PATCH 03/32] Update README.md --- docs/README.md | 136 +++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 126 insertions(+), 10 deletions(-) diff --git a/docs/README.md b/docs/README.md index 63f8727939..e86fadd0fa 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,10 +1,126 @@ -# Math formulas -## Area -- Circle: S = πR² -- Rectangle: S = ab -- Square: S = a² - -## Perimeter -- Circle: P = 2πR -- Rectangle: P = 2a + 2b -- Square: P = 4a \ No newline at end of file +# **Geometric Lib Documentation** +## **Общее описание решения** +### Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. + +##**Описание функций с примерами вызова** + +##**Функции для работы с окружностью** +**circle.py** +##Функция `#ffffff`perimeter(r)`#ffffff` + +**Вычисляет длину окружности (периметр круга) по заданному радиусу `#ffffff`r`#ffffff`.** +**Параметры:** +`#ffffff`r (float)`#ffffff`: Радиус круга. +**Возвращает:** +`#ffffff`float`#ffffff`: Длина окружности. + +#### Пример вызова функции `perimeter(r)` +- **Вызов функции:** `perimeter(5)` +- **Результат:** `31.41592653589793` + +##Функция `#ffffff`area(r)`#ffffff` + +**Вычисляет площадь круга по заданному радиусу#ffffff`r`#ffffff`.** +**Параметры:** +`#ffffff`r (float)`#ffffff`: Радиус круга. +**Возвращает:** +`#ffffff`float`#ffffff`: Площадь круга.. + +#### Пример вызова функции `perimeter(r)` +- **Вызов функции:** `area(5)` +- **Результат:** `78.53981633974483` + +##**Функции для работы с прямоугольником** +**rectangle.py** + +##Функция `#ffffff`area(a, b)`#ffffff` + +**Вычисляет площадь прямоугольника по его ширине и высоте.** +**Параметры:** +`#ffffff`a (float)`#ffffff`: Ширина прямоугольника. +`#ffffff`b (float)`#ffffff`: Высота прямоугольника. +**Возвращает:** +`#ffffff`float`#ffffff`: Площадь прямоугольника. + +###Пример вызова функции `area(a, b)` +- **Вызов функции:** `area(4, 5)` +- **Результат:** `20` + + +##Функция `#ffffff`perimeter(a, b)`#ffffff` + +**Вычисляет периметр прямоугольника по его ширине и высоте.** +**Параметры:** +`#ffffff`a (float)`#ffffff`: Ширина прямоугольника. +`#ffffff`b (float)`#ffffff`: Высота прямоугольника. +**Возвращает:** +`#ffffff`float`#ffffff`: Периметр прямоугольника. + +###Пример вызова функции `perimeter(a, b)` +- **Вызов функции:** `perimeter(4, 5)` +- **Результат:** `18` + +##**Функции для работы с квадратом** + +##Функция `#ffffff`area(a)`#ffffff` + +**Вычисляет площадь квадрата по длине его стороны.** +**Параметры:** +`#ffffff`a (float)`#ffffff`: Длина стороны квадрата. +**Возвращает:** +`#ffffff`float`#ffffff`: Площадь квадрата. + +###Пример вызова функции `perimeter(a, b)` +- **Вызов функции:** `area(4)` +- **Результат:** `16` + +##Функция `#ffffff`perimeter(a)`#ffffff` + +**Вычисляет периметр квадрата по длине его стороны.** + +**Параметры:** +`#ffffff`a (float)`#ffffff`: Длина стороны квадрата. +**Возвращает:** +`#ffffff`float`#ffffff`: Периметр квадрата. +###Пример вызова функции `perimeter(a)` +- **Вызов функции:** `perimeter(4)` +- **Результат:** `16` + +##**Функции для работы с треугольником** +##Функция `#ffffff`area(a, h)`#ffffff` + +**Вычисляет площадь треугольника по основанию и высоте.** + +**Параметры:** +`#ffffff`a (float)`#ffffff`: Основание треугольника. +`#ffffff`h (float)`#ffffff`: Высота треугольника. +**Возвращает:** +`#ffffff`float`#ffffff`: Площадь треугольника. +###Пример вызова функции `perimeter(a)` +- **Вызов функции:** `area(5, 10)` +- **Результат:** `25.0` + + +##Функция perimeter(a, b, c) + +**Вычисляет периметр треугольника по его сторонам.** + +**Параметры:** +`#ffffff`a (float)`#ffffff`: Длина первой стороны. +`#ffffff`b (float)`#ffffff`: Длина второй стороны. +`#ffffff`c (float)`#ffffff`: Длина третьей стороны. +**Возвращает:** +`#ffffff`float`#ffffff`: Периметр треугольника. +###Пример вызова функции `perimeter(a, b, c)` +- **Вызов функции:** `perimeter(3, 4, 5)` +- **Результат:** `12` + +##История изменения проекта +**Коммит:** `#ffffff`8ba9aeb3cea847b63a91ac378a2a6db758682460`#ffffff` +Описание: Добавлены модули c`#ffffff`ircle.py`#ffffff` и `#ffffff`square.py`#ffffff` с функциями для круга и квадрата. +**Коммит:** `#ffffff`d078c8d9ee6155f3cb0e577d28d337b791de28e2`#ffffff` +Описание: Добавлен новый модуль rectangle.py, содержащий функции `#ffffff`area(a, b)`#ffffff` и `#ffffff`perimeter(a,b)`#ffffff` для вычисления площади и периметра прямоугольника. +**Коммит:** `#ffffff`e8ef051b00853de78b06d9ede099b5560891adb1`#ffffff` +**Описание:** Добавлен новый модуль `#ffffff`triangle.py`#ffffff`, включающий функции `#ffffff`area(a, h)`#ffffff` для вычисления площади треугольника и `#ffffff`perimeter(a, b, c)`#ffffff` для расчета его периметра. +**Коммит:** `#ffffff`adeadfdab4c12462bc0d8b8583692a73acc8`#ffffff` +**Описание:** В модуле `#ffffff`rectangle.py`#ffffff` исправлена формула вычисления периметра в функции `#ffffff`perimeter(a, b)`#ffffff`. Ранее периметр рассчитывался как `#ffffff`a + b`#ffffff`, теперь исправлено на `#ffffff`2 * (a + b)`#ffffff`. From ef52d57248fe04e35f210bbbb2b35c79173e57e5 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:28:36 +0300 Subject: [PATCH 04/32] Update circle.py --- circle.py | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/circle.py b/circle.py index c3eb8647c9..5b09b95c9f 100644 --- a/circle.py +++ b/circle.py @@ -1,10 +1,34 @@ import math - def area(r): + """ + Вычисляет площадь круга по заданному радиусу. + + Параметры: + r (float): Радиус круга. + + Возвращает: + float: Площадь круга. + + Пример вызова: + >>> area(5) + 78.53981633974483 + """ return math.pi * r * r def perimeter(r): - return 2 * math.pi * r + """ + Вычисляет длину окружности (периметр круга) по заданному радиусу. + + Параметры: + r (float): Радиус круга. + Возвращает: + float: Длина окружности. + + Пример вызова: + >>> perimeter(5) + 31.41592653589793 + """ + return 2 * math.pi * r From 0766f59b3ea85db664c6673421c5122d75b3323b Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:29:27 +0300 Subject: [PATCH 05/32] Update rectangle.py --- rectangle.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/rectangle.py b/rectangle.py index 5eabcdc838..b26546af64 100644 --- a/rectangle.py +++ b/rectangle.py @@ -1,5 +1,33 @@ def area(a, b): + """ + Вычисляет площадь прямоугольника по его ширине и высоте. + + Параметры: + a (float): Ширина прямоугольника. + b (float): Высота прямоугольника. + + Возвращает: + float: Площадь прямоугольника. + + Пример вызова: + >>> area(4, 5) + 20 + """ return a * b def perimeter(a, b): +""" + Вычисляет периметр прямоугольника по его ширине и высоте. + + Параметры: + a (float): Ширина прямоугольника. + b (float): Высота прямоугольника. + + Возвращает: + float: Периметр прямоугольника. + + Пример вызова: + >>> perimeter(4, 5) + 18 + """ return (a + b)*2 From 993d58dc2fb1268c85a7fa21cf058bff38c20268 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:29:55 +0300 Subject: [PATCH 06/32] Update square.py --- square.py | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/square.py b/square.py index 0f98724205..dba3ddb1fd 100644 --- a/square.py +++ b/square.py @@ -1,7 +1,32 @@ - def area(a): + """ + Вычисляет площадь квадрата по заданной длине его стороны. + + Параметры: + a (float): Длина стороны квадрата. + + Возвращает: + float: Площадь квадрата. + + Пример вызова: + >>> area(4) + 16 + """ return a * a def perimeter(a): + """ + Вычисляет периметр квадрата по заданной длине его стороны. + + Параметры: + a (float): Длина стороны квадрата. + + Возвращает: + float: Периметр квадрата. + + Пример вызова: + >>> perimeter(4) + 16 + """ return 4 * a From 4be26fff814f09748e99e0b3bd4e8d8d22c6bf8b Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:30:54 +0300 Subject: [PATCH 07/32] Update triangle.py --- triangle.py | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/triangle.py b/triangle.py index 5997dcc7f0..6a68209317 100644 --- a/triangle.py +++ b/triangle.py @@ -1,7 +1,35 @@ - def area(a, h): + """ + Вычисляет площадь треугольника по основанию и высоте. + + Параметры: + a (float): Длина основания треугольника. + h (float): Высота треугольника. + + Возвращает: + float: Площадь треугольника. + + Пример вызова: + >>> area(5, 10) + 25.0 + """ return a * h / 2 + def perimeter(a, b, c): - return a + b + c + """ + Вычисляет периметр треугольника по длине его сторон. + + Параметры: + a (float): Длина первой стороны треугольника. + b (float): Длина второй стороны треугольника. + c (float): Длина третьей стороны треугольника. + Возвращает: + float: Периметр треугольника. + + Пример вызова: + >>> perimeter(3, 4, 5) + 12 + """ + return a + b + c From 3b1187a20edd23be952e1cbbf1762057ca45b633 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:31:44 +0300 Subject: [PATCH 08/32] Update README.md --- docs/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/README.md b/docs/README.md index e86fadd0fa..3358949cc5 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,10 +1,10 @@ # **Geometric Lib Documentation** -## **Общее описание решения** +### **Общее описание решения** ### Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. -##**Описание функций с примерами вызова** +**Описание функций с примерами вызова** -##**Функции для работы с окружностью** +###**Функции для работы с окружностью** **circle.py** ##Функция `#ffffff`perimeter(r)`#ffffff` From 8be00cbc216c186248d5b0501e250e29da993104 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:35:15 +0300 Subject: [PATCH 09/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 3358949cc5..dfa1489a6e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -37,7 +37,7 @@ **Вычисляет площадь прямоугольника по его ширине и высоте.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Ширина прямоугольника. +#ffffffa (float)#ffffff: Ширина прямоугольника. `#ffffff`b (float)`#ffffff`: Высота прямоугольника. **Возвращает:** `#ffffff`float`#ffffff`: Площадь прямоугольника. From de6b1f7e637d152f1679d397441fd1c8ac66cc18 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 15 Oct 2024 23:46:33 +0300 Subject: [PATCH 10/32] Update README.md --- docs/README.md | 51 ++++++++++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/docs/README.md b/docs/README.md index dfa1489a6e..f5f92893b1 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,51 +1,58 @@ # **Geometric Lib Documentation** -### **Общее описание решения** -### Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. +## **Общее описание решения** +**Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. -**Описание функций с примерами вызова** +##Описание функций с примерами вызова -###**Функции для работы с окружностью** +##Функции для работы с окружностью** **circle.py** -##Функция `#ffffff`perimeter(r)`#ffffff` -**Вычисляет длину окружности (периметр круга) по заданному радиусу `#ffffff`r`#ffffff`.** +###Функция `perimeter(r)` + +**Вычисляет длину окружности (периметр круга) по заданному радиусу `r`.** **Параметры:** -`#ffffff`r (float)`#ffffff`: Радиус круга. +`r (float)`: Радиус круга. **Возвращает:** -`#ffffff`float`#ffffff`: Длина окружности. +`float`: Длина окружности. #### Пример вызова функции `perimeter(r)` -- **Вызов функции:** `perimeter(5)` -- **Результат:** `31.41592653589793` +```python +- Вызов функции: `perimeter(5)` +- Результат: `31.41592653589793` +``` + -##Функция `#ffffff`area(r)`#ffffff` +###Функция `area(r)` -**Вычисляет площадь круга по заданному радиусу#ffffff`r`#ffffff`.** +**Вычисляет площадь круга по заданному радиусу`r`.** **Параметры:** -`#ffffff`r (float)`#ffffff`: Радиус круга. +`r (float)`: Радиус круга. **Возвращает:** -`#ffffff`float`#ffffff`: Площадь круга.. +`float`: Площадь круга. #### Пример вызова функции `perimeter(r)` -- **Вызов функции:** `area(5)` -- **Результат:** `78.53981633974483` +```python +- Вызов функции:** `area(5)` +- Результат:** `78.53981633974483` +``` -##**Функции для работы с прямоугольником** +##Функции для работы с прямоугольником **rectangle.py** -##Функция `#ffffff`area(a, b)`#ffffff` +##Функция `area(a, b)` **Вычисляет площадь прямоугольника по его ширине и высоте.** **Параметры:** -#ffffffa (float)#ffffff: Ширина прямоугольника. -`#ffffff`b (float)`#ffffff`: Высота прямоугольника. +`a (float)`: Ширина прямоугольника. +`b (float)`: Высота прямоугольника. **Возвращает:** -`#ffffff`float`#ffffff`: Площадь прямоугольника. +`float`: Площадь прямоугольника. ###Пример вызова функции `area(a, b)` +```python - **Вызов функции:** `area(4, 5)` - **Результат:** `20` - +``` ##Функция `#ffffff`perimeter(a, b)`#ffffff` From 0d0fe55b6b5a0d70e14d792318b72f1605663bce Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:06:13 +0300 Subject: [PATCH 11/32] Update README.md --- docs/README.md | 103 +++++++++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 47 deletions(-) diff --git a/docs/README.md b/docs/README.md index f5f92893b1..8c6ceec62c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,9 +2,9 @@ ## **Общее описание решения** **Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. -##Описание функций с примерами вызова +## Описание функций с примерами вызова -##Функции для работы с окружностью** +## Функции для работы с окружностью** **circle.py** ###Функция `perimeter(r)` @@ -17,12 +17,12 @@ #### Пример вызова функции `perimeter(r)` ```python -- Вызов функции: `perimeter(5)` -- Результат: `31.41592653589793` +- **Вызов функции**: `perimeter(5)` +- **Результат**: `31.41592653589793` ``` -###Функция `area(r)` +### Функция `area(r)` **Вычисляет площадь круга по заданному радиусу`r`.** **Параметры:** @@ -32,8 +32,8 @@ #### Пример вызова функции `perimeter(r)` ```python -- Вызов функции:** `area(5)` -- Результат:** `78.53981633974483` +- **Вызов функции**: `area(5)` +- **Результат**: `78.53981633974483` ``` ##Функции для работы с прямоугольником @@ -50,84 +50,93 @@ ###Пример вызова функции `area(a, b)` ```python -- **Вызов функции:** `area(4, 5)` -- **Результат:** `20` +- **Вызов функции**: `area(4, 5)` +- **Результат**: `20` ``` -##Функция `#ffffff`perimeter(a, b)`#ffffff` +## Функция `perimeter(a, b)` **Вычисляет периметр прямоугольника по его ширине и высоте.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Ширина прямоугольника. -`#ffffff`b (float)`#ffffff`: Высота прямоугольника. +`a (float)`: Ширина прямоугольника. +`b (float)`: Высота прямоугольника. **Возвращает:** -`#ffffff`float`#ffffff`: Периметр прямоугольника. +`float`: Периметр прямоугольника. -###Пример вызова функции `perimeter(a, b)` -- **Вызов функции:** `perimeter(4, 5)` -- **Результат:** `18` +### Пример вызова функции `perimeter(a, b)` +```python +- **Вызов функции**: `perimeter(4, 5)` +- **Результат**: `18` +``` -##**Функции для работы с квадратом** +## **Функции для работы с квадратом** -##Функция `#ffffff`area(a)`#ffffff` +## Функция `area(a)` **Вычисляет площадь квадрата по длине его стороны.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Длина стороны квадрата. +`a (float)`: Длина стороны квадрата. **Возвращает:** -`#ffffff`float`#ffffff`: Площадь квадрата. +`float`: Площадь квадрата. -###Пример вызова функции `perimeter(a, b)` +### Пример вызова функции `perimeter(a, b)` +```python - **Вызов функции:** `area(4)` - **Результат:** `16` +``` -##Функция `#ffffff`perimeter(a)`#ffffff` +## Функция `perimeter(a)` **Вычисляет периметр квадрата по длине его стороны.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Длина стороны квадрата. +`a (float)`: Длина стороны квадрата. **Возвращает:** -`#ffffff`float`#ffffff`: Периметр квадрата. -###Пример вызова функции `perimeter(a)` +`float`: Периметр квадрата. +### Пример вызова функции `perimeter(a)` +```python - **Вызов функции:** `perimeter(4)` - **Результат:** `16` +``` -##**Функции для работы с треугольником** -##Функция `#ffffff`area(a, h)`#ffffff` +## **Функции для работы с треугольником** +## Функция `area(a, h)` **Вычисляет площадь треугольника по основанию и высоте.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Основание треугольника. -`#ffffff`h (float)`#ffffff`: Высота треугольника. +`a (float)`: Основание треугольника. +`h (float)`: Высота треугольника. **Возвращает:** -`#ffffff`float`#ffffff`: Площадь треугольника. -###Пример вызова функции `perimeter(a)` +`float`: Площадь треугольника. +### Пример вызова функции `perimeter(a)` +```python - **Вызов функции:** `area(5, 10)` - **Результат:** `25.0` +``` - -##Функция perimeter(a, b, c) +## Функция perimeter(a, b, c) **Вычисляет периметр треугольника по его сторонам.** **Параметры:** -`#ffffff`a (float)`#ffffff`: Длина первой стороны. -`#ffffff`b (float)`#ffffff`: Длина второй стороны. -`#ffffff`c (float)`#ffffff`: Длина третьей стороны. +`a (float)`: Длина первой стороны. +`b (float)`: Длина второй стороны. +`c (float)`: Длина третьей стороны. **Возвращает:** -`#ffffff`float`#ffffff`: Периметр треугольника. -###Пример вызова функции `perimeter(a, b, c)` +`float`: Периметр треугольника. +### Пример вызова функции `perimeter(a, b, c)` +```python - **Вызов функции:** `perimeter(3, 4, 5)` - **Результат:** `12` +``` -##История изменения проекта -**Коммит:** `#ffffff`8ba9aeb3cea847b63a91ac378a2a6db758682460`#ffffff` -Описание: Добавлены модули c`#ffffff`ircle.py`#ffffff` и `#ffffff`square.py`#ffffff` с функциями для круга и квадрата. -**Коммит:** `#ffffff`d078c8d9ee6155f3cb0e577d28d337b791de28e2`#ffffff` -Описание: Добавлен новый модуль rectangle.py, содержащий функции `#ffffff`area(a, b)`#ffffff` и `#ffffff`perimeter(a,b)`#ffffff` для вычисления площади и периметра прямоугольника. -**Коммит:** `#ffffff`e8ef051b00853de78b06d9ede099b5560891adb1`#ffffff` -**Описание:** Добавлен новый модуль `#ffffff`triangle.py`#ffffff`, включающий функции `#ffffff`area(a, h)`#ffffff` для вычисления площади треугольника и `#ffffff`perimeter(a, b, c)`#ffffff` для расчета его периметра. -**Коммит:** `#ffffff`adeadfdab4c12462bc0d8b8583692a73acc8`#ffffff` -**Описание:** В модуле `#ffffff`rectangle.py`#ffffff` исправлена формула вычисления периметра в функции `#ffffff`perimeter(a, b)`#ffffff`. Ранее периметр рассчитывался как `#ffffff`a + b`#ffffff`, теперь исправлено на `#ffffff`2 * (a + b)`#ffffff`. +## История изменения проекта +**Коммит:** `8ba9aeb3cea847b63a91ac378a2a6db758682460` +Описание: Добавлены модули c `circle.py` и `square.py` с функциями для круга и квадрата. +**Коммит:** `d078c8d9ee6155f3cb0e577d28d337b791de28e2` +Описание: Добавлен новый модуль rectangle.py, содержащий функции `area(a, b)` и `perimeter(a,b)` для вычисления площади и периметра прямоугольника. +**Коммит:** `e8ef051b00853de78b06d9ede099b5560891adb1` +**Описание:** Добавлен новый модуль `triangle.py`, включающий функции `area(a, h)` для вычисления площади треугольника и `perimeter(a, b, c)` для расчета его периметра. +**Коммит:** `adeadfdab4c12462bc0d8b8583692a73acc8` +**Описание:** В модуле `rectangle.py` исправлена формула вычисления периметра в функции `perimeter(a, b)`. Ранее периметр рассчитывался как `a + b`, теперь исправлено на `2 * (a + b)`. From 0247f30730e30711d1fa4af4d4452d39c700ccd2 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:06:40 +0300 Subject: [PATCH 12/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 8c6ceec62c..daa02c1050 100644 --- a/docs/README.md +++ b/docs/README.md @@ -7,7 +7,7 @@ ## Функции для работы с окружностью** **circle.py** -###Функция `perimeter(r)` +### Функция `perimeter(r)` **Вычисляет длину окружности (периметр круга) по заданному радиусу `r`.** **Параметры:** From ed984b344fee137cc1926fea0b2b190ec18a1223 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:06:54 +0300 Subject: [PATCH 13/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index daa02c1050..3158df0c5d 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ # **Geometric Lib Documentation** ## **Общее описание решения** -**Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. +Данный проект включает в себя функции для вычисления площади и периметра различных геометрических фигур: круга, прямоугольника, квадрата и треугольника. Каждая функция принимает параметры, соответствующие размерам фигуры, и возвращает рассчитанное значение площади или периметра. Для выполнения вычислений используются базовые математические операции, а также константа `pi` из библиотеки `math`. ## Описание функций с примерами вызова From 174eaa0d1fae77db8561fd964afe6500ee7d8456 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:07:43 +0300 Subject: [PATCH 14/32] Update README.md --- docs/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/README.md b/docs/README.md index 3158df0c5d..0244f4e107 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,26 +5,26 @@ ## Описание функций с примерами вызова ## Функции для работы с окружностью** -**circle.py** +** circle.py ** ### Функция `perimeter(r)` -**Вычисляет длину окружности (периметр круга) по заданному радиусу `r`.** -**Параметры:** +** Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. ** +** Параметры: ** `r (float)`: Радиус круга. -**Возвращает:** +** Возвращает: ** `float`: Длина окружности. #### Пример вызова функции `perimeter(r)` ```python -- **Вызов функции**: `perimeter(5)` -- **Результат**: `31.41592653589793` +- Вызов функции: `perimeter(5)` +- Результат: `31.41592653589793` ``` ### Функция `area(r)` -**Вычисляет площадь круга по заданному радиусу`r`.** +** Вычисляет площадь круга по заданному радиусу`r`. ** **Параметры:** `r (float)`: Радиус круга. **Возвращает:** From 44e2de62cdb1625ab37059acf8b331bbf3f2f5d8 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:08:35 +0300 Subject: [PATCH 15/32] Update README.md --- docs/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/README.md b/docs/README.md index 0244f4e107..349817c0f5 100644 --- a/docs/README.md +++ b/docs/README.md @@ -10,9 +10,13 @@ ### Функция `perimeter(r)` ** Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. ** + ** Параметры: ** + `r (float)`: Радиус круга. + ** Возвращает: ** + `float`: Длина окружности. #### Пример вызова функции `perimeter(r)` From 304135c74659f45a894a5cbd33d26be318c1c085 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:09:05 +0300 Subject: [PATCH 16/32] Update README.md --- docs/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/README.md b/docs/README.md index 349817c0f5..0a0ea9eb22 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,17 +5,17 @@ ## Описание функций с примерами вызова ## Функции для работы с окружностью** -** circle.py ** +circle.py ### Функция `perimeter(r)` -** Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. ** +Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. -** Параметры: ** +Параметры: `r (float)`: Радиус круга. -** Возвращает: ** +Возвращает: `float`: Длина окружности. From b0a593d7f1806adfb9acc8df97373065740d05a2 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:10:31 +0300 Subject: [PATCH 17/32] Update README.md --- docs/README.md | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/README.md b/docs/README.md index 0a0ea9eb22..256ae4c27e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -9,13 +9,13 @@ circle.py ### Функция `perimeter(r)` -Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. +###Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. -Параметры: +**Параметры:** `r (float)`: Радиус круга. -Возвращает: +**Возвращает:** `float`: Длина окружности. @@ -28,9 +28,12 @@ circle.py ### Функция `area(r)` -** Вычисляет площадь круга по заданному радиусу`r`. ** +**Вычисляет площадь круга по заданному радиусу`r`.** + **Параметры:** + `r (float)`: Радиус круга. + **Возвращает:** `float`: Площадь круга. @@ -137,10 +140,17 @@ circle.py ## История изменения проекта **Коммит:** `8ba9aeb3cea847b63a91ac378a2a6db758682460` + Описание: Добавлены модули c `circle.py` и `square.py` с функциями для круга и квадрата. + **Коммит:** `d078c8d9ee6155f3cb0e577d28d337b791de28e2` + Описание: Добавлен новый модуль rectangle.py, содержащий функции `area(a, b)` и `perimeter(a,b)` для вычисления площади и периметра прямоугольника. + **Коммит:** `e8ef051b00853de78b06d9ede099b5560891adb1` + **Описание:** Добавлен новый модуль `triangle.py`, включающий функции `area(a, h)` для вычисления площади треугольника и `perimeter(a, b, c)` для расчета его периметра. + **Коммит:** `adeadfdab4c12462bc0d8b8583692a73acc8` + **Описание:** В модуле `rectangle.py` исправлена формула вычисления периметра в функции `perimeter(a, b)`. Ранее периметр рассчитывался как `a + b`, теперь исправлено на `2 * (a + b)`. From a1d4c928c52e2264a62b2d24c22033789dae64d2 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:14:11 +0300 Subject: [PATCH 18/32] Update README.md --- docs/README.md | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/docs/README.md b/docs/README.md index 256ae4c27e..a518d2301e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -9,7 +9,7 @@ circle.py ### Функция `perimeter(r)` -###Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. +### Вычисляет длину окружности (периметр круга) по заданному радиусу `r`. **Параметры:** @@ -43,16 +43,21 @@ circle.py - **Результат**: `78.53981633974483` ``` -##Функции для работы с прямоугольником +## Функции для работы с прямоугольником **rectangle.py** ##Функция `area(a, b)` **Вычисляет площадь прямоугольника по его ширине и высоте.** + **Параметры:** + `a (float)`: Ширина прямоугольника. + `b (float)`: Высота прямоугольника. + **Возвращает:** + `float`: Площадь прямоугольника. ###Пример вызова функции `area(a, b)` @@ -64,10 +69,15 @@ circle.py ## Функция `perimeter(a, b)` **Вычисляет периметр прямоугольника по его ширине и высоте.** + **Параметры:** + `a (float)`: Ширина прямоугольника. + `b (float)`: Высота прямоугольника. + **Возвращает:** + `float`: Периметр прямоугольника. ### Пример вызова функции `perimeter(a, b)` @@ -81,9 +91,13 @@ circle.py ## Функция `area(a)` **Вычисляет площадь квадрата по длине его стороны.** + **Параметры:** + `a (float)`: Длина стороны квадрата. + **Возвращает:** + `float`: Площадь квадрата. ### Пример вызова функции `perimeter(a, b)` @@ -97,9 +111,13 @@ circle.py **Вычисляет периметр квадрата по длине его стороны.** **Параметры:** + `a (float)`: Длина стороны квадрата. + **Возвращает:** + `float`: Периметр квадрата. + ### Пример вызова функции `perimeter(a)` ```python - **Вызов функции:** `perimeter(4)` @@ -107,15 +125,21 @@ circle.py ``` ## **Функции для работы с треугольником** + ## Функция `area(a, h)` **Вычисляет площадь треугольника по основанию и высоте.** **Параметры:** + `a (float)`: Основание треугольника. + `h (float)`: Высота треугольника. + **Возвращает:** + `float`: Площадь треугольника. + ### Пример вызова функции `perimeter(a)` ```python - **Вызов функции:** `area(5, 10)` @@ -127,11 +151,17 @@ circle.py **Вычисляет периметр треугольника по его сторонам.** **Параметры:** + `a (float)`: Длина первой стороны. + `b (float)`: Длина второй стороны. + `c (float)`: Длина третьей стороны. + **Возвращает:** + `float`: Периметр треугольника. + ### Пример вызова функции `perimeter(a, b, c)` ```python - **Вызов функции:** `perimeter(3, 4, 5)` @@ -139,6 +169,7 @@ circle.py ``` ## История изменения проекта + **Коммит:** `8ba9aeb3cea847b63a91ac378a2a6db758682460` Описание: Добавлены модули c `circle.py` и `square.py` с функциями для круга и квадрата. From 16664cdf867d242465dc1a4b9692ce0cc6457b22 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:14:53 +0300 Subject: [PATCH 19/32] Update README.md --- docs/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/README.md b/docs/README.md index a518d2301e..0a71fe3daf 100644 --- a/docs/README.md +++ b/docs/README.md @@ -46,7 +46,7 @@ circle.py ## Функции для работы с прямоугольником **rectangle.py** -##Функция `area(a, b)` +## Функция `area(a, b)` **Вычисляет площадь прямоугольника по его ширине и высоте.** @@ -60,7 +60,7 @@ circle.py `float`: Площадь прямоугольника. -###Пример вызова функции `area(a, b)` +### Пример вызова функции `area(a, b)` ```python - **Вызов функции**: `area(4, 5)` - **Результат**: `20` From e09dfed6ee818f299e8fe75dc0f2fe05866d365d Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:15:09 +0300 Subject: [PATCH 20/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 0a71fe3daf..b529d3f5e0 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4,7 +4,7 @@ ## Описание функций с примерами вызова -## Функции для работы с окружностью** +## Функции для работы с окружностью circle.py ### Функция `perimeter(r)` From 14d2653b856ea20ad8a651ceecda5946d3122aa8 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:18:09 +0300 Subject: [PATCH 21/32] Update README.md --- docs/README.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/README.md b/docs/README.md index b529d3f5e0..8ec8ba3cb8 100644 --- a/docs/README.md +++ b/docs/README.md @@ -39,8 +39,8 @@ circle.py #### Пример вызова функции `perimeter(r)` ```python -- **Вызов функции**: `area(5)` -- **Результат**: `78.53981633974483` +- Вызов функции: `area(5)` +- Результат: `78.53981633974483` ``` ## Функции для работы с прямоугольником @@ -62,8 +62,8 @@ circle.py ### Пример вызова функции `area(a, b)` ```python -- **Вызов функции**: `area(4, 5)` -- **Результат**: `20` +- Вызов функции: `area(4, 5)` +- Результат: `20` ``` ## Функция `perimeter(a, b)` @@ -82,8 +82,8 @@ circle.py ### Пример вызова функции `perimeter(a, b)` ```python -- **Вызов функции**: `perimeter(4, 5)` -- **Результат**: `18` +- Вызов функции: `perimeter(4, 5)` +- Результат: `18` ``` ## **Функции для работы с квадратом** @@ -102,8 +102,8 @@ circle.py ### Пример вызова функции `perimeter(a, b)` ```python -- **Вызов функции:** `area(4)` -- **Результат:** `16` +- Вызов функции: `area(4)` +- Результат: `16` ``` ## Функция `perimeter(a)` @@ -120,8 +120,8 @@ circle.py ### Пример вызова функции `perimeter(a)` ```python -- **Вызов функции:** `perimeter(4)` -- **Результат:** `16` +- Вызов функции: `perimeter(4)` +- Результат: `16` ``` ## **Функции для работы с треугольником** @@ -142,8 +142,8 @@ circle.py ### Пример вызова функции `perimeter(a)` ```python -- **Вызов функции:** `area(5, 10)` -- **Результат:** `25.0` +- Вызов функции: `area(5, 10)` +- Результат: `25.0` ``` ## Функция perimeter(a, b, c) @@ -164,8 +164,8 @@ circle.py ### Пример вызова функции `perimeter(a, b, c)` ```python -- **Вызов функции:** `perimeter(3, 4, 5)` -- **Результат:** `12` +- Вызов функции: `perimeter(3, 4, 5)` +- Результат: `12` ``` ## История изменения проекта From 5bec65eba1b16a4bfe4650fa76021f3a4dd8d152 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:22:36 +0300 Subject: [PATCH 22/32] Update README.md --- docs/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/README.md b/docs/README.md index 8ec8ba3cb8..890bf45043 100644 --- a/docs/README.md +++ b/docs/README.md @@ -21,8 +21,8 @@ circle.py #### Пример вызова функции `perimeter(r)` ```python -- Вызов функции: `perimeter(5)` -- Результат: `31.41592653589793` +- Вызов функции: # perimeter(5) +- Результат: # 31.41592653589793 ``` From 1e8cdc154747bd1171fa93085f9db582654edcd3 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 00:24:15 +0300 Subject: [PATCH 23/32] Update README.md --- docs/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/README.md b/docs/README.md index 890bf45043..8ec8ba3cb8 100644 --- a/docs/README.md +++ b/docs/README.md @@ -21,8 +21,8 @@ circle.py #### Пример вызова функции `perimeter(r)` ```python -- Вызов функции: # perimeter(5) -- Результат: # 31.41592653589793 +- Вызов функции: `perimeter(5)` +- Результат: `31.41592653589793` ``` From 84ab6c00f5e1af4255b9056bc78d8efe74739c5a Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 11:59:07 +0300 Subject: [PATCH 24/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 8ec8ba3cb8..c1c2b6ff96 100644 --- a/docs/README.md +++ b/docs/README.md @@ -182,6 +182,6 @@ circle.py **Описание:** Добавлен новый модуль `triangle.py`, включающий функции `area(a, h)` для вычисления площади треугольника и `perimeter(a, b, c)` для расчета его периметра. -**Коммит:** `adeadfdab4c12462bc0d8b8583692a73acc8` +**Коммит:** [`adeadfdab4c12462bc0d8b8583692a73acc8`](https://github.com/kondratevakk/geometric_lib/commit/0766f59b3ea85db664c6673421c5122d75b3323b) **Описание:** В модуле `rectangle.py` исправлена формула вычисления периметра в функции `perimeter(a, b)`. Ранее периметр рассчитывался как `a + b`, теперь исправлено на `2 * (a + b)`. From c1526a25219ead94d53a6be788bce2c84751c17c Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 12:01:41 +0300 Subject: [PATCH 25/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index c1c2b6ff96..87718d7006 100644 --- a/docs/README.md +++ b/docs/README.md @@ -182,6 +182,6 @@ circle.py **Описание:** Добавлен новый модуль `triangle.py`, включающий функции `area(a, h)` для вычисления площади треугольника и `perimeter(a, b, c)` для расчета его периметра. -**Коммит:** [`adeadfdab4c12462bc0d8b8583692a73acc8`](https://github.com/kondratevakk/geometric_lib/commit/0766f59b3ea85db664c6673421c5122d75b3323b) +**Коммит:** [`0766f59b3ea85db664c6673421c5122d75b3323b`](https://github.com/kondratevakk/geometric_lib/commit/0766f59b3ea85db664c6673421c5122d75b3323b) **Описание:** В модуле `rectangle.py` исправлена формула вычисления периметра в функции `perimeter(a, b)`. Ранее периметр рассчитывался как `a + b`, теперь исправлено на `2 * (a + b)`. From 66d3fe195919f4593dc05f61187dd26c1d7b3266 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Wed, 16 Oct 2024 12:04:06 +0300 Subject: [PATCH 26/32] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 87718d7006..3b5771bbf3 100644 --- a/docs/README.md +++ b/docs/README.md @@ -178,7 +178,7 @@ circle.py Описание: Добавлен новый модуль rectangle.py, содержащий функции `area(a, b)` и `perimeter(a,b)` для вычисления площади и периметра прямоугольника. -**Коммит:** `e8ef051b00853de78b06d9ede099b5560891adb1` +**Коммит:** [`4be26fff814f09748e99e0b3bd4e8d8d22c6bf8b`](https://github.com/kondratevakk/geometric_lib/commit/4be26fff814f09748e99e0b3bd4e8d8d22c6bf8b) **Описание:** Добавлен новый модуль `triangle.py`, включающий функции `area(a, h)` для вычисления площади треугольника и `perimeter(a, b, c)` для расчета его периметра. From b520022c713fe9e225484260141831c2df0cc5bf Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Thu, 21 Nov 2024 15:36:00 +0300 Subject: [PATCH 27/32] Create circle_test.py --- docs/circle_test.py | 72 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/circle_test.py diff --git a/docs/circle_test.py b/docs/circle_test.py new file mode 100644 index 0000000000..f73979f0c7 --- /dev/null +++ b/docs/circle_test.py @@ -0,0 +1,72 @@ +import unittest +import math +from circle import area, perimeter + +''' +Test for Circle +''' + + +class CircleTestCase(unittest.TestCase): + def test_zero_side(self): + res_area = area(0) + res_perimeter = perimeter(0) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_valid_side(self): + res_area = area(3) + res_perimeter = perimeter(3) + self.assertEqual(res_area, 9 * math.pi) + self.assertEqual(res_perimeter, 6 * math.pi) + + def test_valid_side2(self): + res_area = area(5) + res_perimeter = perimeter(5) + self.assertEqual(res_area, 25 * math.pi) + self.assertEqual(res_perimeter, 10 * math.pi) + + def test_invalid_side_area(self): + res_area = area("tr") + res_perimeter = perimeter(2) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 4 * math.pi) + + def test_invalid_side_perimeter(self): + res_area = area(6) + res_perimeter = perimeter("y") + self.assertEqual(res_area, 36 * math.pi) + self.assertEqual(res_perimeter, 0) + + def test_invalid_side_both(self): + res_area = area("r") + res_perimeter = perimeter("r") + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_negative_side_area(self): + res_area = area(-2) + res_perimeter = perimeter(3) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 6 * math.pi) + + def test_int_string_side_area(self): + res_area = area("3") + res_perimeter = perimeter(3) + self.assertEqual(res_area, 9 * math.pi) + self.assertEqual(res_perimeter, 6 * math.pi) + + def test_negative_side_perimeter(self): + res_area = area(2) + res_perimeter = perimeter(-6) + self.assertEqual(res_area, 4 * math.pi) + self.assertEqual(res_perimeter, 0) + + def test_int_string_side_perimeter(self): + res_area = area(3) + res_perimeter = perimeter("4") + self.assertEqual(res_area, 9 * math.pi) + self.assertEqual(res_perimeter, 8 * math.pi) + +# if __name__ == '__main__': +# unittest.main() From 7cc8c0a8411a7d60d750b0ff7374002767ff122e Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Thu, 21 Nov 2024 15:37:00 +0300 Subject: [PATCH 28/32] Create rectangle_test.py --- docs/rectangle_test.py | 71 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 docs/rectangle_test.py diff --git a/docs/rectangle_test.py b/docs/rectangle_test.py new file mode 100644 index 0000000000..1fc9111bfc --- /dev/null +++ b/docs/rectangle_test.py @@ -0,0 +1,71 @@ +import unittest +from rectangle import area, perimeter + +''' +Test for Rectangle +''' + + +class RectangleTestCase(unittest.TestCase): + def test_zero_side(self): + res_area = area(0, 0) + res_perimeter = perimeter(0, 0) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_valid_side(self): + res_area = area(3, 4) + res_perimeter = perimeter(3, 4) + self.assertEqual(res_area, 12) + self.assertEqual(res_perimeter, 14) + + def test_valid_side2(self): + res_area = area(5, 6) + res_perimeter = perimeter(5, 9) + self.assertEqual(res_area, 30) + self.assertEqual(res_perimeter, 28) + + def test_invalid_side_area(self): + res_area = area("tr", 7) + res_perimeter = perimeter(2, 3) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 10) + + def test_invalid_side_perimeter(self): + res_area = area(6, 10) + res_perimeter = perimeter(6, "y") + self.assertEqual(res_area, 60) + self.assertEqual(res_perimeter, 0) + + def test_invalid_side_both(self): + res_area = area("a", "b") + res_perimeter = perimeter("a", "b") + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_negative_side_area(self): + res_area = area(-2, 3) + res_perimeter = perimeter(3, 4) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 14) + + def test_int_string_side_area(self): + res_area = area("3", 4) + res_perimeter = perimeter(3, 4) + self.assertEqual(res_area, 12) + self.assertEqual(res_perimeter, 14) + + def test_negative_side_perimeter(self): + res_area = area(2, 3) + res_perimeter = perimeter(3, -6) + self.assertEqual(res_area, 6) + self.assertEqual(res_perimeter, 0) + + def test_int_string_side_perimeter(self): + res_area = area(3, 4) + res_perimeter = perimeter(3, "4") + self.assertEqual(res_area, 12) + self.assertEqual(res_perimeter, 14) + +# if __name__ == '__main__': +# unittest.main() From 8e627f9090de310bcd90f9de5d9798180b604e5a Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Thu, 21 Nov 2024 15:37:31 +0300 Subject: [PATCH 29/32] Create square_test.py --- docs/square_test.py | 62 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 docs/square_test.py diff --git a/docs/square_test.py b/docs/square_test.py new file mode 100644 index 0000000000..c005317cfa --- /dev/null +++ b/docs/square_test.py @@ -0,0 +1,62 @@ +import unittest +from square import area, perimeter + +''' +Test for square +''' + + +class SquareTestCase(unittest.TestCase): + def test_zero_side(self): + res_area = area(0) + res_perimeter = perimeter(0) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_valid_side(self): + res_area = area(3) + res_perimeter = perimeter(3) + self.assertEqual(res_area, 9) + self.assertEqual(res_perimeter, 12) + + def test_valid_side2(self): + res_area = area(5) + res_perimeter = perimeter(5) + self.assertEqual(res_area, 25) + self.assertEqual(res_perimeter, 20) + + def test_invalid_side(self): + res_area = area("6r") + res_perimeter = perimeter("6r") + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_negative_side_area(self): + res_area = area(-2) + res_perimeter = perimeter(3) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 12) + + def test_int_string_side_area(self): + res_area = area("3") + res_perimeter = perimeter(3) + self.assertEqual(res_area, 9) + self.assertEqual(res_perimeter, 12) + + def test_negative_side_perimeter(self): + res_area = area(2) + res_perimeter = perimeter(-6) + self.assertEqual(res_area, 4) + self.assertEqual(res_perimeter, 0) + + def test_int_string_side_perimeter(self): + res_area = area(4) + res_perimeter = perimeter("4") + self.assertEqual(res_area, 16) + self.assertEqual(res_perimeter, 16) + + + + +# if name == 'main': +# unittest.main() From 142af3e2af4f502a5ab8f3226ddef20ff02dbd6c Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Thu, 21 Nov 2024 15:38:03 +0300 Subject: [PATCH 30/32] =?UTF-8?q?Create=20triangle=5Ftest=C2=A0.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "docs/triangle_test\302\240.py" | 71 +++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 "docs/triangle_test\302\240.py" diff --git "a/docs/triangle_test\302\240.py" "b/docs/triangle_test\302\240.py" new file mode 100644 index 0000000000..48196db782 --- /dev/null +++ "b/docs/triangle_test\302\240.py" @@ -0,0 +1,71 @@ +import unittest +from triangle import area, perimeter + +''' +Test for Triangle +''' + + +class TriangleTestCase(unittest.TestCase): + def test_zero_side(self): + res_area = area(0, 0) + res_perimeter = perimeter(0, 0, 0) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_valid_side(self): + res_area = area(3, 4) + res_perimeter = perimeter(3, 4, 5) + self.assertEqual(res_area, 6) + self.assertEqual(res_perimeter, 12) + + def test_valid_side2(self): + res_area = area(5, 6) + res_perimeter = perimeter(5, 6, 9) + self.assertEqual(res_area, 15) + self.assertEqual(res_perimeter, 20) + + def test_invalid_side_area(self): + res_area = area("tr", 7) + res_perimeter = perimeter(2, 3, 4) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 9) + + def test_invalid_side_perimeter(self): + res_area = area(6, 10) + res_perimeter = perimeter(6, "y", 8) + self.assertEqual(res_area, 30) + self.assertEqual(res_perimeter, 0) + + def test_invalid_side_both(self): + res_area = area("a", "b") + res_perimeter = perimeter("a", "b", "c") + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 0) + + def test_negative_side_area(self): + res_area = area(-2, 3) + res_perimeter = perimeter(3, 4, 6) + self.assertEqual(res_area, 0) + self.assertEqual(res_perimeter, 13) + + def test_int_string_side_area(self): + res_area = area("3", 4) + res_perimeter = perimeter(3, 4, 5) + self.assertEqual(res_area, 6) + self.assertEqual(res_perimeter, 12) + + def test_negative_side_perimeter(self): + res_area = area(2, 3) + res_perimeter = perimeter(3, 4, -6) + self.assertEqual(res_area, 3) + self.assertEqual(res_perimeter, 0) + + def test_int_string_side_perimeter(self): + res_area = area(3, 4) + res_perimeter = perimeter(3, "4", 5) + self.assertEqual(res_area, 6) + self.assertEqual(res_perimeter, 12) + +# if __name__ == '__main__': +# unittest.main() From eb4cb90e39b19ad199094b08f084e9983d8ebac0 Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Thu, 21 Nov 2024 16:17:22 +0300 Subject: [PATCH 31/32] Create requirements.txt --- docs/requirements.txt | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 docs/requirements.txt diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000000..fccfb9356e --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,4 @@ +pytest==7.4.0 +numpy>=1.23.0 +requests==2.31.0 +flask>=2.0.0,<3.0.0 From ddd4e45441ae1b0cafac8a08683ec9c3588f7d6a Mon Sep 17 00:00:00 2001 From: Kondrateva Ekaterina Date: Tue, 26 Nov 2024 14:52:39 +0300 Subject: [PATCH 32/32] Create main.yml --- .github/workflows/main.yml | 59 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000000..240dbffa60 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,59 @@ +# This is a basic workflow to help you get started with Actions + +name: CI + +# Controls when the workflow will run +on: + # Triggers the workflow on push or pull request events but only for the "main" branch + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + linux-build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + + # Runs a set of commands using the runners shell + - name: checkout + uses: actions/checkout@v3 + - name: python_install + uses: actions/setup-python@v3 + with: + python-version: 3.9 + - name: run_unittests + run: | + python -m unittest "square_test.py" + python -m unittest "rectangle_test.py" + python -m unittest "circle_test.py" + python -m unittest "triangle_test.py" + + windows-build: + # The type of runner that the job will run on + runs-on: windows-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + + # Runs a set of commands using the runners shell + - name: checkout + uses: actions/checkout@v3 + - name: python_install + uses: actions/setup-python@v3 + with: + python-version: 3.9 + - name: Run our tests + run: | + python.exe -m unittest "square_test.py" + python.exe -m unittest "rectangle_test.py" + python.exe -m unittest "circle_test.py" + python.exe -m unittest "triangle_test.py"