RosettaCodeData/Task/Chowla-numbers/Maxima/chowla-numbers.maxima
2026-04-30 12:34:36 -04:00

13 lines
471 B
Text

chowla(n) := if(n=1) then 0 else divsum(n)-n-1$
chowla_seq(n, start) := map(chowla, makelist(i,i,start,n))$
chowla_seq(37, 1);
chowla_numprimes(n) := length(sublist_indices(chowla_seq(n, 2), lambda([x], x=0)))$
map(chowla_numprimes, makelist(10^i, i, 2, 7));
chowla_perfects(n) := block(
chowla_list: chowla_seq(n, 1),
is_perfect(x) := if(x>n or x=0) then false else x=chowla_list[x+1],
unique(sublist(chowla_list, is_perfect)+1))$
chowla_perfects(10000);