NB. palindrome number NB. Kaibun NB. book: NISHIYAMA Yutaka[Lets enjoy Mathematics] GendaiSuugakuSha 2007 NB. Script is written by SHIMURA Masato/31 Aug 2012 NB. usage: NB. * kaibun 2845x NB. --> 2845 5 475574 1 NB. 5 is times ,1=yes 0=not NB. --------------------------- kaibun=: 3 : 0 NB. kaibun 89x // using 00x Plus=. kaibun_sub0 y for_ctr. i. 25 do. Tmp=. (>: ctr), Plus, Judge=. Plus = reverse Plus if. 1 = Judge do. goto_ans. else. Plus=. kaibun_sub0 Plus end. end. label_ans. y,Tmp ) NB. 10&#. |. 10 10 10 10 #: 4567 reverse=: 3 : 0 NB. reverse 4567 --> 7654 Num=:# ": y 10&#. |.(Num # 10) #: y ) kaibun_sub0=: 3 : ' y + reverse y' NB. saving memory kaibun_manytimes0=: 4 : 0 NB. kaibun 89x // using 00x Plus=. kaibun_sub0 y for_ctr. i. x do. Tmp=. (>: ctr), Plus, Judge=. Plus = reverse Plus if. 1 = Judge do. goto_ans. else. Plus=. kaibun_sub0 Plus end. end. label_ans. y, 0 2{ Tmp ) kaibun_manytimes=: 4 : 0 NB. Ussage: 1100 kaibun_manytimes 196x Plus=. kaibun_sub0 y for_ctr. i. x do. (1!:2&2) 0 2 { Tmp=. (>: ctr), Plus, Judge=. Plus = reverse Plus if. 1 = Judge do. goto_ans. else. Plus=. kaibun_sub0 Plus end. end. label_ans. y , Tmp ) NB. --------------------------- analysis0_kaibun=: 4 : 0 NB. count number only NB. usage: analysis_kaibun 1 100x tmp=.x analysis_kaibun y tmp1=. ( ~. (L:0) 1{"1 L:0 tmp),. # L:0 tmp (<;"1 tmp1),.{:tmp ) analysis_kaibun=: 4 : 0 NB. usage: 25 analysis_kaibun 1 100x 'Startn Endn'=. y Num=. Endn - Startn Ans=. 2 5 4 8 numerize=: 10&#. NB. 2 5 4 8 --> 2548 kap0=: numerize@/:~@separate NB. downsort 2548-->8542 kap1=: numerize@\:~@separate NB. upsort 2548-->2458 kap=: kap1 - kap0 NB. dwn - up analysis0_kaprekar=: 3 : 0 NB. usage: anal_kaibun 1 100x 'startn endn'=. y num=. endn - startn ans=.