Skip to main content

Add your description here

Project description

GoldenRatio

Python-библиотека для точной арифметики в фи-еричной системе счисления (phinary).
Основание системы — золотое сечение φ = (1+√5)/2 ≈ 1.618...

В отличие от float, все вычисления абсолютно точные — числа хранятся в виде a + b·√5 через Fraction.

Возможности:

  • Точная арифметика без потери точности (сложение, вычитание, умножение)
  • Арифметика напрямую в фи-еричной записи
  • Перевод целых чисел в фи-еричную систему счисления
  • Вычисление степеней золотого сечения φⁿ для любого n
  • Обратный перевод из фи-записи в целое число
  • Сравнение чисел (<, <=, ==)

Установка

pip install golden-ratio-ns
# или
uv add golden-ratio-ns

Быстрый старт

import goldenratio as gr

a = gr.GoldenNumber(11, 0)
b = gr.GoldenNumber(4, 0)

result = a + b
print(result)          # 15 + 0·√5
print(int(result))     # 15
print(gr.fi_degree(5)) # φ⁵ = 5/2 + 5/2·√5

Арифметика в фи-еричной системе

Операции выполняются напрямую над числами в фи-записи — сложение, вычитание и умножение работают со словарями цифр, результат автоматически нормализуется.

import goldenratio as gr

a = gr.GoldenNumber(11,0)
b = gr.GoldenNumber(15,0)

phi_a = gr.translate_to_fi(a)
phi_b = gr.translate_to_fi(b)

result = phi_a + phi_b
print(int(result))
print(result)

API

Функция Описание Пример
GoldenNumber(a, b) Число вида a + b·√5 GoldenNumber(3, 0)
normalize(value) Нормализация normalize(a)
fi_degree(n) Вычислить φⁿ fi_degree(5)
translate_to_fi(a) Перевод в систему φ translate_to_fi(GoldenNumber(3, 0))

Арифметика

Операция Пример
Сложение a + b
Вычитание a - b
Умножение a * b
Сравнение a < b, a <= b, a == b

Авторы

Яна — anaermakova948@gmail.com https://github.com/Yana5193

Дима — babygreenyoda@yandex.ru https://github.com/DemiusHTTV

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

golden_ration_ns-0.1.4.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

golden_ration_ns-0.1.4-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file golden_ration_ns-0.1.4.tar.gz.

File metadata

  • Download URL: golden_ration_ns-0.1.4.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for golden_ration_ns-0.1.4.tar.gz
Algorithm Hash digest
SHA256 50cadca5cf271e9acc00188a834ca42c062738d75f73f1ca119cdac755f3c340
MD5 f5c431d6a5525ecc9774a7b48d822253
BLAKE2b-256 27fdd8d5064b938fcdbabf051d4532cece67c4f9fa89dfee035cdbbb234e978f

See more details on using hashes here.

File details

Details for the file golden_ration_ns-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: golden_ration_ns-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for golden_ration_ns-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 cd613d1443e485443975f5997be3512acf0c4ea6da304528164e6802ccd05c90
MD5 3f7e984cccab79d83e5c5f58d56a4122
BLAKE2b-256 793c0b6eba8af1ed5f53d11f1e08ccf484286a4efa07f9702cc4af4891616576

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page