
1. Создайте функцию , которая принимает целое число и возвращает сумму цифр целого числа 108 ->
9 2. Напишите функцию, которая будет принимать количество секунд и возвращать их в днях-часах-минутах-секундах. 91000 секунд = 1 день, 1 час, 16 минут, 40 секунд. 3 *. Создайте пакет 'figures', состоящий из трех подпакетов: 'triangle', 'circle', 'square'. В каждом подпакете будем иметь файл code.py, где создадим ряд функций: для пакета 'circle': функции circle_perimeter() – вычисляет длину окружности, circle_area() – вычисляет площадь окружности. Еще заведем переменную default_radius = 5. Ее назначение – дефолтный радиус для окружности, если пользователь не введет свой. Обе функции принимают на вход только радиус. для пакета 'triangle': функции triangle_perimeter() – вычисляет периметр треугольника, triangle_area() – вычисляет площадь фигуры. Дополнительно создадим три переменные (длины сторон треугольника): a = 7, b = 2, c = 8, которые также не будут видны при импорте. На вход функциям передается длина трех сторон (если пользователь ничего не введет, то используются значения по умолчанию). для пакета 'square': функции square_perimeter() - вычисляет периметр квадрата, square_area() – вычисляет площадь фигуры. Дополнительная переменная a = 15 не доступна при импорте и принимается функциями, если пользователь не предоставил свои размеры стороны квадрата.

Ответы на вопрос

1. Вот функция Python, которая принимает целое число и возвращает сумму цифр:
```python
def sum_digits(n):
"""
Эта функция принимает целое число и возвращает сумму его цифр.
Args:
n: Целое число.
Returns:
Сумма цифр числа.
"""
sum = 0
while n > 0:
sum += n % 10
n //= 10
return sum
```
Вот несколько примеров использования функции:
```python
>>> sum_digits(123)
6
>>> sum_digits(456)
15
>>> sum_digits(789)
24
```
2. Вот функция Python, которая будет принимать количество секунд и возвращать их в днях-часах-минутах-секундах:
```python
def seconds_to_dhms(seconds):
"""
Convert seconds to days, hours, minutes, and seconds.
Args:
seconds: The number of seconds to convert.
Returns:
A tuple of (days, hours, minutes, seconds).
"""
days = seconds // 86400
hours = (seconds % 86400) // 3600
minutes = (seconds % 3600) // 60
seconds = seconds % 60
return (days, hours, minutes, seconds)
```
Например, если мы вызовем функцию с аргументом 91000, она вернет следующее:
```python
>>> seconds_to_dhms(91000)
(1, 1, 16, 40)
```
Это означает, что 91000 секунд эквивалентны 1 дню, 1 часу, 16 минутам и 40 секундам.
3. Вот код для пакета "figures":
```python
import math
# Package 'circle'
def circle_perimeter(radius):
"""Calculates the perimeter of a circle.
Args:
radius: The radius of the circle.
Returns:
The perimeter of the circle.
"""
return 2 * math.pi * radius
def circle_area(radius):
"""Calculates the area of a circle.
Args:
radius: The radius of the circle.
Returns:
The area of the circle.
"""
return math.pi * radius ** 2
# Package 'triangle'
def triangle_perimeter(a, b, c):
"""Calculates the perimeter of a triangle.
Args:
a: The length of one side of the triangle.
b: The length of another side of the triangle.
c: The length of the third side of the triangle.
Returns:
The perimeter of the triangle.
"""
return a + b + c
def triangle_area(a, b, c):
"""Calculates the area of a triangle.
Args:
a: The length of one side of the triangle.
b: The length of another side of the triangle.
c: The length of the third side of the triangle.
Returns:
The area of the triangle.
"""
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
# Package 'square'
def square_perimeter(a):
"""Calculates the perimeter of a square.
Args:
a: The side length of the square.
Returns:
The perimeter of the square.
"""
return 4 * a
def square_area(a):
"""Calculates the area of a square.
Args:
a: The side length of the square.
Returns:
The area of the square.
"""
return a ** 2
```
Чтобы использовать этот пакет, импортируйте его как `import figures`, а затем вызовите функции, как показано ниже:
```python
>>> import figures
>>> figures.circle_perimeter(5)
31.41592653589793
>>> figures.circle_area(5)
78.53981633974483
>>> figures.triangle_perimeter(7, 2, 8)
17
>>> figures.triangle_area(7, 2, 8)
18.095048801688724
>>> figures.square_perimeter(15)
60
>>> figures.square_area(15)
225
```



Для выполнения ваших задач, вы можете создать следующую структуру файлов и пакетов:
cssfigures/
__init__.py
circle/
__init__.py
code.py
triangle/
__init__.py
code.py
square/
__init__.py
code.py
Вот как могут выглядеть файлы с функциями в каждом из подпакетов:
figures/circle/code.py
:
pythondefault_radius = 5
def circle_perimeter(radius=default_radius):
return 2 * 3.14159265359 * radius
def circle_area(radius=default_radius):
return 3.14159265359 * radius * radius
figures/triangle/code.py
:
pythona = 7
b = 2
c = 8
def triangle_perimeter(side1=a, side2=b, side3=c):
return side1 + side2 + side3
def triangle_area(side1=a, side2=b, side3=c):
s = (side1 + side2 + side3) / 2
return (s * (s - side1) * (s - side2) * (s - side3)) ** 0.5
figures/square/code.py
:
pythona = 15
def square_perimeter(side=a):
return 4 * side
def square_area(side=a):
return side * side
Теперь, если вы хотите использовать эти функции из пакета figures, вы можете сделать это следующим образом:
pythonfrom figures.circle.code import circle_perimeter, circle_area
from figures.triangle.code import triangle_perimeter, triangle_area
from figures.square.code import square_perimeter, square_area
# Примеры использования:
print(circle_perimeter(10)) # Вычислит длину окружности с радиусом 10
print(triangle_area(3, 4, 5)) # Вычислит площадь треугольника с заданными сторонами
print(square_perimeter(12)) # Вычислит периметр квадрата со стороной 12
Таким образом, вы можете импортировать и использовать функции из пакета figures
и его подпакетов.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili