Penholodigital squares: Difference between revisions
Content added Content deleted
(→{{header|Wren}}: Optimized - about 7 x speed up.) |
(→{{header|Go}}: Updated in line with Wren example - about 5 x speed up.) |
||
Line 83: | Line 83: | ||
smax, _ := strconv.ParseInt(reverse(digits[0:b-1]), b, 64) |
smax, _ := strconv.ParseInt(reverse(digits[0:b-1]), b, 64) |
||
max := int(math.Floor(math.Sqrt(float64(smax)))) |
max := int(math.Floor(math.Sqrt(float64(smax)))) |
||
factors := rcu.PrimeFactors(b - 1) |
|||
div := factors[len(factors)-1] |
|||
for i := min; i <= max; i++ { |
for i := min; i <= max; i++ { |
||
if (i % div) != 0 { |
|||
⚫ | |||
continue |
continue |
||
} |
} |
||
⚫ | |||
digs := rcu.Digits(sq, b) |
digs := rcu.Digits(sq, b) |
||
containsZero := false |
containsZero := false |
||
⚫ | |||
for _, dig := range digs { |
for _, dig := range digs { |
||
if dig == 0 { |
if dig == 0 { |
||
Line 95: | Line 98: | ||
break |
break |
||
} |
} |
||
⚫ | |||
} |
} |
||
if containsZero { |
if containsZero { |
||
continue |
continue |
||
} |
|||
⚫ | |||
for _, dig := range digs { |
|||
⚫ | |||
} |
} |
||
if key == master { |
if key == master { |