Truncatable primes: Difference between revisions

Content deleted Content added
m →‎{{header|REXX}}: combined two statements into one line. -- ~~~~
m →‎{{header|REXX}}: made the L and R DO loops simplier. -- ~~~~
Line 1,405: Line 1,405:
lp=0; rp=0
lp=0; rp=0


do j=n by -1 until lp\==0 & rp\==0; if pos(0,p.j)\==0 then iterate
do L=n by -1 until lp\==0; if pos(0,p.L)\==0 then iterate
do L=1 for 1 while lp==0
do k=1 for length(p.L)-1; _=right(p.L,k) /*truncate a #.*/
do k=1 for length(p.j)-1; _=right(p.j,k) /*truncate a #.*/
if \!._ then iterate L /*Truncated # ¬ prime? Skip it. */
if \!._ then leave L /*Truncated # ¬ prime? Skip it. */
end /*k*/
lp=p.L
end /*k*/
end /*L*/
lp=p.j
end /*L*/


do R=1 for 1 while rp==0
do R=n by -1 until rp\==0; if pos(0,p.R)\==0 then iterate
do k=1 for length(p.j)-1; _=left(p.j,k) /*truncate a #.*/
do k=1 for length(p.R)-1; _=left(p.R,k) /*truncate a #.*/
if \!._ then leave R /*Truncated # ¬ prime? Skip it. */
if \!._ then iterate R /*Truncated # ¬ prime? Skip it. */
end /*k*/
end /*k*/
rp=p.j
rp=p.R
end /*R*/
end /*j*/


say 'The largest left-truncatable prime under one million is ' lp
say 'The largest left-truncatable prime under one million is ' lp