# Rationals 1.4.1

Implementation of rational number arithmetic for .NET with arbitrary precision.

Supported features:

- implicit conversions - rationals integrate seamlessly with other number types
- unlimited precision - rationals use BigInteger inside
- canonical form - each rational can have its canonical form (irreducible fraction where denominator is always positive)
- separate whole and fractional part - any rational number can be separated into a whole part (integer quotient aka result of integer division) and fractional part (reminder of the integral division aka result of modulo operation)
- comparison &amp; equality
- multiple formatting options - ToString("C") (canonical form), ToString("W") (whole + fractional part), or normal fraction format
- continued fraction expansion - expand rational numbers to continued fraction (sequence of coefficients), construct rational numbers from sequence of continued fraction coefficients
- rational number approximation - approximate floating point numbers (decimal, double, float) as rational numbers with customizable tolerance

Example usage:

Rational left = (Rational) 1 / 2;

Rational right = (Rational) 1 / 4;

Rational sum = left + right; // equals to: 3 / 4

This package has a SemVer 2.0.0 package version: 1.4.1+build.79.
There is a newer version of this package available.
See the version list below for details.
`Install-Package Rationals -Version 1.4.1`
`dotnet add package Rationals --version 1.4.1`
`<PackageReference Include="Rationals" Version="1.4.1" />`
For projects that support PackageReference, copy this XML node into the project file to reference the package.
`paket add Rationals --version 1.4.1`
`#r "nuget: Rationals, 1.4.1"`
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
```// Install Rationals as a Cake Addin

// Install Rationals as a Cake Tool
#tool nuget:?package=Rationals&version=1.4.1```

## Release Notes

https://github.com/tompazourek/Rationals/releases

## Dependencies

• #### .NETFramework 4.0

• No dependencies.

## Used By

### NuGet packages (3)

Showing the top 3 NuGet packages that depend on Rationals:

Peachpie.Library
Peachpie PHP language library functions.
CryptoExchangeClient
Clients for multiple cryptocurrency exchanges. All clients have a shared interface for common actions.

### GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Rationals:

Repository Stars
peachpiecompiler/peachpie
PeachPie - the PHP compiler and runtime for .NET and .NET Core