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 A229838 #20 Oct 07 2013 06:17:35 %S A229838 3,5,7,8,9,11,13,15,16,17,19,21,23,24,25,27,29,31,32,33,35,37,39,40, %T A229838 41,43,45,47,48,49,51,53,55,56,57,59,61,63,64,65,67,69,71,72,73,75,77, %U A229838 79,80,81,83,85,87,88,89,91,93,95,96,97,99,101,103,104,105 %N A229838 Consider all primitive 60-degree triangles with sides A < B < C. The sequence gives the values of A. %C A229838 A primitive triangle is one for which the sides have no common factor. %C A229838 A004611 gives the values of B, and A089025 gives the values of C. %H A229838 Wikipedia, <a href="https://en.wikipedia.org/wiki/Integer_triangle">Integer triangle</a> %F A229838 Empirical g.f.: -x*(x^5-x^4-x^3-2*x^2-2*x-3) / ((x-1)^2*(x^4+x^3+x^2+x+1)). %e A229838 7 appears in the sequence because there exists a primitive 60-degree triangle with sides 7, 37 and 40. %o A229838 (PARI) %o A229838 \\ Gives terms not exceeding amax %o A229838 \\ e.g. pt60a(25) gives [3,5,7,8,9,11,13,15,16,17,19,21,23,24,25] %o A229838 pt60a(amax) = { %o A229838 s=[]; %o A229838 for(m=1, amax\2, %o A229838 for(n=1, m-1, %o A229838 if((m-n)%3!=0 && gcd(m, n)==1, %o A229838 if(2*m*n+n*n<=amax, s=concat(s, 2*m*n+n*n)); %o A229838 if(m*m-n*n<=amax, s=concat(s, m*m-n*n)) %o A229838 ) %o A229838 ) %o A229838 ); %o A229838 vecsort(s,,8) %o A229838 } %Y A229838 Cf. A004611, A089025, A229839. %K A229838 nonn %O A229838 1,1 %A A229838 _Colin Barker_, Oct 01 2013