This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A111065 #27 Aug 12 2025 02:27:08 %S A111065 0,69,96,609,906,6009,6699,6969,9006,9696,9966,60009,66099,69069, %T A111065 90006,96096,99066,600009,606909,609609,660099,666999,669699,690069, %U A111065 696969,699669,900006,906906,909606,960096,966996,969696,990066,996966,999666,6000009,6060909 %N A111065 Numbers that look the same when rotated by 180 degrees, using only digits 0, 6 and 9. %C A111065 Strobogrammatic numbers (A000787) without digits 1 or 8. %C A111065 Apparently this sequence and A006072 have the same parity. - _Jeremy Gardiner_, Oct 15 2005 %C A111065 There are no primes in this sequence because all terms are divisible by 3. - _M. F. Hasler_, May 04 2012 %H A111065 Michael S. Branicky, <a href="/A111065/b111065.txt">Table of n, a(n) for n = 1..10000</a> %t A111065 fQ[n_] := Block[{s = {0, 6, 9}, id = IntegerDigits[n]}, If[ Union[ Join[s, id]] == s && (id /. {6 -> 9, 9 -> 6}) == Reverse[id], True, False]]; Select[ Range[0, 10^6], fQ[ # ] &] (* _Robert G. Wilson v_, Oct 11 2005 *) %o A111065 (Haskell) main=print$"0":concat[concat[[reverse(reverse(map f x)++z++x)|x<-y]|z<-["","0"]]|y<-s(iterate i"6")];f '0'='0';f '6'='9';f '9'='6';i('0':x)='6':x;i('6':x)='9':x;i('9':x)='0':i x;i""="6";s(x:y@(z:_))=let w:v=s y in if length x==length z then(x:w):v else[x]:w:v %o A111065 (PARI) is_A111065(n)=!setminus(Set(n=Vec(Str(n))),Vec("069")) & apply(t->Vec("096")[max(eval(t)/3,1)], n)==vecextract(n,"-1..1") \\ _M. F. Hasler_, May 04 2012 %o A111065 (Python) %o A111065 from itertools import count, islice, product %o A111065 def ud(s): return s[::-1].translate({ord('6'):ord('9'), ord('9'):ord('6')}) %o A111065 def agen(): %o A111065 yield 0 %o A111065 for d in count(2): %o A111065 for start in "69": %o A111065 for rest in product("069", repeat=d//2-1): %o A111065 left = start + "".join(rest) %o A111065 right = ud(left) %o A111065 for mid in [[""], ["0"]][d%2]: %o A111065 yield int(left + mid + right) %o A111065 print(list(islice(agen(), 37))) # _Michael S. Branicky_, Mar 29 2022 %Y A111065 Cf. strobogrammatic numbers A000787. If 8's are included we get A111156. %K A111065 base,easy,nonn %O A111065 1,2 %A A111065 Paul Stoeber (pstoeber(AT)uni-potsdam.de), Oct 08 2005 %E A111065 Offset corrected by _Reinhard Zumkeller_, Sep 26 2014 %E A111065 a(36) and beyond from _Michael S. Branicky_, Mar 29 2022