tcal_rs
- Converting C++ Code to Rust Code
Install
$ git clone https://github.com/YoungHaKim7/tcal_rs
$ cd justrs
$ cargo install --path .
$ cargo install tcal_rs
$ 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