From 0a1596627dad46627cb5e0ea60e8d5853fe9313e Mon Sep 17 00:00:00 2001 From: Adrien Hopkins Date: Sun, 12 Nov 2023 16:42:46 -0500 Subject: Add PowerShell script for comparing radices This is in contrib/ so that it's not a part of the regular program - I don't want to add an extra dependency for something that's doable (even if it takes some effort) without PowerShell. --- contrib/multi_radix_info.ps1 | 83 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 contrib/multi_radix_info.ps1 diff --git a/contrib/multi_radix_info.ps1 b/contrib/multi_radix_info.ps1 new file mode 100644 index 0000000..13f0807 --- /dev/null +++ b/contrib/multi_radix_info.ps1 @@ -0,0 +1,83 @@ +<# +.SYNOPSIS +Shows the radix info of many different radices. + +.DESCRIPTION +Runs the radix_info script for a list of radices. +It needs to be installed for this script to work. + +.PARAMETER Max +This script will show all radices from 1 to this number. + +.PARAMETER Min2345Rank +If specified, only shows radices whose 2345 rank's letter is at or above +the specified letter: +- Using 'A' only shows multiples of 12. +- Using 'B' only shows multiples of 6. +- Using 'C' only shows radices divisible by 4 or 6 (1/3 of all radices). +- Using 'D' only shows even radices. +- Using 'E' only shows radices divisible by 2 or 3 (2/3 of all radices). +- Using 'F' shows all radices. + +.PARAMETER MoreDetails +This script passes the -c flag to radix_info by default, +specifying this disables that functionality. + +.PARAMETER DigitMapOnly +Passes the -d flag to radix_info. + +.PARAMETER FullDigitMap +Passes the -f flag to radix_info. + +.NOTES +Copyright (C) 2023 Adrien Hopkins + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +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 . +#> +param( + [int]$Max=30, + [char]$Min2345Rank='F', + [Switch]$MoreDetails, + [Switch]$DigitMapOnly, + [Switch]$FullDigitMap +) + +2..$Max | ForEach-Object { + if ($_ % 2 -eq 0) { + if ($_ % 3 -eq 0) { + if ($_ % 4 -eq 0) { + $2345Rank = 'A' + } else { + $2345Rank = 'B' + } + } else { + if ($_ % 4 -eq 0) { + $2345Rank = 'C' + } else { + $2345Rank = 'D' + } + } + } else { + if ($_ % 3 -eq 0) { + $2345Rank = 'E' + } else { + $2345Rank = 'F' + } + } + + if ($2345Rank -le $Min2345Rank) { + $CompactDisplay = -not $MoreDetails + radix_info -c="$CompactDisplay" -d="$DigitMapOnly" -f="$FullDigitMap" $_ + } +} -- cgit v1.2.3