tcal_rs 0.2.0

Number theory functions library - Rust port of libqalculate number theory module
Documentation

tcal_rs

Install

$ git clone https://github.com/YoungHaKim7/tcal_rs

$ cd justrs
 
$ cargo install --path .
  • cargo install
$ cargo install tcal_rs

# or (nightly ver)
$ cargo install --git https://github.com/YoungHaKim7/tcal_rs.git

tcal_rs

$ cargo r --release

Qalculate CLI - Interactive Calculator
Type 'exit' or 'quit' to exit

Supported: sqrt(72), 2^3 + 5, sin(pi), 133 to hex, etc.
> sqrt(72)
8.48528137423857
> 2^3
8
> 2^16
65536
> 2^32
4294967296
> 2^3
8
> 8 to hex
0x8
> 8 to binary
0b1000

> 1024 to binary
0b0100 0000 0000

> exit
Goodbye!

2진법으로 확인

Supported: sqrt(72), 2^3 + 5, sin(pi), 133 to hex, etc.

Qalculate CLI - Interactive Calculator
Type 'help' or 'exit'

> help
Commands:
- math: 2+3*4
- power: 2^10
- bitwise: 5 & 3, 1 << 4
- hex/bin/oct: 0xFF, 0b1010
- convert: 255 to hex bin oct
- unicode: "안녕" to unicode
- variables: x = 10
- res: reuse last result

> x = 10
        10
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0xA"
DEC : "10"
OCT : "0o12"
BIN : "1010"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0000  1010
31                      15                   0
> x +10
        20
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x14"
DEC : "20"
OCT : "0o24"
BIN : "0001 0100"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0001  0100
31                      15                   0

> 0x1f3d + 0x1ffa
                16,183
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x3F37"
DEC : "16,183"
OCT : "0o37467"
BIN : "0b0011 1111 0011 0111"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0011  1111  0011  0111
31                      15                   0


> 0x132a
                4,906
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x132A"
DEC : "4,906"
OCT : "0o11452"
BIN : "0b0001 0011 0010 1010"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0001  0011  0010  1010
31                      15                   0


> 0b1111001
                121
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x79"
DEC : "121"
OCT : "0o171"
BIN : "0b0111 1001"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0111  1001
31                      15                   0


> 0o3434
                1,820
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x71C"
DEC : "1,820"
OCT : "0o3434"
BIN : "0b0111 0001 1100"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0111  0001  1100
31                      15                   0

> 2^20
        1,048,576
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x100000"
DEC : "1,048,576"
OCT : "0o4000000"
BIN : "0b0001 0000 0000 0000 0000 0000"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0001  0000  0000  0000  0000  0000
31                      15                   0


> 0x14d
        333
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x14D"
DEC : "333"
OCT : "0o515"
BIN : "0b0001 0100 1101"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0001  0100  1101
31                      15                   0


> "안녕하세요" to uni
        '' → U+C548 (50504),
        '' → U+B155 (45397),
        '' → U+D558 (54616),
        '' → U+C138 (49464),
        '' → U+C694 (50836)
> "안녕하세요" to unicode
        '' → U+C548 (50504),
        '' → U+B155 (45397),
        '' → U+D558 (54616),
        '' → U+C138 (49464),
        '' → U+C694 (50836)
> 2^8
        256
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x100"
DEC : "256"
OCT : "0o400"
BIN : "0b0001 0000 0000"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0001  0000  0000
31                      15                   0


> 0b11111
        31
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x1F"
DEC : "31"
OCT : "0o37"
BIN : "0b0001 1111"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0001  1111
31                      15                   0


> 0b11111111
        255
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0xFF"
DEC : "255"
OCT : "0o377"
BIN : "0b1111 1111"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  1111  1111
31                      15                   0


> 0o120
        80
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x50"
DEC : "80"
OCT : "0o120"
BIN : "0b0101 0000"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0101  0000
31                      15                   0


> 0x1facd
        129,741
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x1FACD"
DEC : "129,741"
OCT : "0o375315"
BIN : "0b0001 1111 1010 1100 1101"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0001  1111  1010  1100  1101
31                      15                   0


> 2^32
        4,294,967,296
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x100000000"
DEC : "4,294,967,296"
OCT : "0o40000000000"
BIN : "0b0001 0000 0000 0000 0000 0000 0000 0000 0000"
0000  0000  0000  0000  0000  0000  0000  0001
63                      47                  32

0000  0000  0000  0000  0000  0000  0000  0000
31                      15                   0


> 0xFFFF
        65,535
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0xFFFF"
DEC : "65,535"
OCT : "0o177777"
BIN : "0b1111 1111 1111 1111"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  1111  1111  1111  1111
31                      15                   0

> 2^3
        8
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x8"
DEC : "8"
OCT : "0o10"
BIN : "0b1000"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0000  1000
31                      15                   0

> res * 3
        24
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x18"
DEC : "24"
OCT : "0o30"
BIN : "0b0001 1000"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0001  1000
31                      15                   0

> res + 10
        34
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x22"
DEC : "34"
OCT : "0o42"
BIN : "0b0010 0010"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0010  0010
31                      15                   0

Number Theory test


> gcd(48, 18)
        6
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x6"
DEC : "6"
OCT : "0o6"
BIN : "0110"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0000  0110
31                      15                   0

> lcm(5, 7)
        35
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HEX : "0x23"
DEC : "35"
OCT : "0o43"
BIN : "0010 0011"
0000  0000  0000  0000  0000  0000  0000  0000
63                      47                  32

0000  0000  0000  0000  0000  0000  0010  0011
31                      15                   0