|
|
1.1 root 1: # RADCON(2)
2: #
3: # Radix conversion procedures
4: #
5: # Ralph E. Griswold
6: #
7: # Last modified 5/29/83
8: #
9:
10:
11: procedure exbase10(i,j)
12: static digits
13: local s, d, sign
14: initial digits := "0123456789" || &lcase
15: if i = 0 then return 0
16: if i < 0 then {
17: sign := "-"
18: i := -i
19: }
20: else sign := ""
21: s := ""
22: while i > 0 do {
23: d := i % j
24: if d > 9 then d := digits[d + 1]
25: s := d || s
26: i /:= j
27: }
28: return sign || s
29: end
30:
31: procedure inbase10(s,i)
32: if s[1] == "-" then return "-" || integer(i || "r" || s[2:0])
33: else return integer(i || "r" || s)
34: end
35:
36: procedure radcon(s,i,j)
37: return exbase10(inbase10(s,i),j)
38: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.