/* radix_info: gives some information about number radices Copyright (C) 2023 Adrien Hopkins This program is free software: you can redistribute it and/or modify it under the terms of version 3 of the GNU General Public License as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ package main import ( "fmt" "os" ) func main() { args, err := parseArgs() if args.Exit { return } else if err != nil { fmt.Fprintln(os.Stderr, err) return } factorInfo := getFactorInfo(args) if args.Compact { if args.DigitMapOnly { fmt.Printf("Radix %02d ", args.Radix) writeDigitMapCompact(os.Stdout, factorInfo.DigitMap) } else { factorInfo.writeToCompact(os.Stdout) } } else { if args.DigitMapOnly { fmt.Printf("Radix %d Digit Map:\n", args.Radix) writeDigitMap(os.Stdout, factorInfo.DigitMap) } else { factorInfo.writeTo(os.Stdout) } } }