Post Reply 
(50G) Digits sum (50g)
04-15-2020, 10:21 PM (This post was last modified: 04-15-2020 10:22 PM by John Keith.)
Post: #6
RE: Digits sum (50g)
I was going to post about I->NL but you beat me to it. Smile

Also I->BL for bases other than 10.

For integers up to 100 digits or so, I->NL LSUM is fastest. For numbers larger than 100 digits, this strange program is actually faster:

Code:

\<<
  \->STR 0 SWAP 1. 9.
    FOR j j 48. + CHR "" SREPL j * ROT + SWAP
    NEXT DROP
\>>

SREPL is crazy fast, I have used it for lots of odd purposes like this.

Here is a similar program that returns a list of 10 numbers which are the counts of each digit from 1 to 9 in a large integer:

Code:

\<< 
   \->STR 48. 57.
    FOR j j CHR "" SREPL SWAP
    NEXT DROP 10. \->LIST
\>>

For integers less than 70 digits or so, I\->NL LSORT LRPCT is faster (and a lot shorter).
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
(50G) Digits sum (50g) - Juan14 - 04-12-2020, 08:05 PM
RE: Digits sum (50g) - grsbanks - 04-13-2020, 09:45 AM
RE: Digits sum (50g) - Nihotte(lma) - 04-13-2020, 08:38 PM
RE: Digits sum (50g) - Juan14 - 04-13-2020, 11:01 PM
RE: Digits sum (50g) - DavidM - 04-15-2020, 03:49 AM
RE: Digits sum (50g) - John Keith - 04-15-2020 10:21 PM
RE: Digits sum (50g) - DavidM - 04-17-2020, 04:31 AM
RE: Digits sum (50g) - Gerald H - 04-17-2020, 10:42 AM
RE: (50G) Digits sum (50g) - gor1060 - 12-11-2022, 11:15 AM



User(s) browsing this thread: 1 Guest(s)