Skip to main content
Changed bool to var.
Source Link

C# 199 197197 196 bytes

string f(int n){boolvar u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m-->0;)b+="\n/ \\\n\\ /\n "+(m==0?"O ":u?"\\ ":"/ ");for(;++m<3;)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { boolvar u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m-- > 0; ) b += "\n/ \\\n\\ /\n " + (m == 0 ? "O " : u ? "\\ " : "/ "); for (; ++m < 3;) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n"; return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

C# 199 197 bytes

string f(int n){bool u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m-->0;)b+="\n/ \\\n\\ /\n "+(m==0?"O ":u?"\\ ":"/ ");for(;++m<3;)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { bool u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m-- > 0; ) b += "\n/ \\\n\\ /\n " + (m == 0 ? "O " : u ? "\\ " : "/ "); for (; ++m < 3;) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n"; return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

C# 199 197 196 bytes

string f(int n){var u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m-->0;)b+="\n/ \\\n\\ /\n "+(m==0?"O ":u?"\\ ":"/ ");for(;++m<3;)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { var u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m-- > 0; ) b += "\n/ \\\n\\ /\n " + (m == 0 ? "O " : u ? "\\ " : "/ "); for (; ++m < 3;) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n"; return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

added 10 characters in body
Source Link

C# 199199 197 bytes

string f(int n){bool u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m>0;;m--m>0;)b+="\n/ \\\n\\ /\n "+(m==1m==0?"O ":u?"/"\\ ":"\\"/ ");for(;m<3;++m;++m<3;)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { bool u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m-- > 0; --m) b += "\n/ \\\n\\ /\n " + (m == 10 ? "O " : u ?"/ "\\ " :"\\ "/ "); for (; m++m < 3; ++m) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n";  return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

C# 199 bytes

string f(int n){bool u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m>0;--m)b+="\n/ \\\n\\ /\n "+(m==1?"O ":u?"/ ":"\\ ");for(;m<3;++m)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { bool u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m > 0; --m) b += "\n/ \\\n\\ /\n " + (m == 1 ? "O " : u ?"/ ":"\\ "); for (; m < 3; ++m) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n"; return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

C# 199 197 bytes

string f(int n){bool u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m-->0;)b+="\n/ \\\n\\ /\n "+(m==0?"O ":u?"\\ ":"/ ");for(;++m<3;)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { bool u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m-- > 0; ) b += "\n/ \\\n\\ /\n " + (m == 0 ? "O " : u ? "\\ " : "/ "); for (; ++m < 3;) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n";  return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.

Source Link

C# 199 bytes

string f(int n){bool u=n<0;int m=u?-n:n;string a="",b=" O ";for(;m>0;--m)b+="\n/ \\\n\\ /\n "+(m==1?"O ":u?"/ ":"\\ ");for(;m<3;++m)a+=string.Concat(b.Split('\n').Select(s=>s[m]))+"\n";return u?b:a;} 

Ungolfed version:

 string f(int n) { bool u = n < 0; int m = u ? -n : n; string a = "", b = " O "; for (; m > 0; --m) b += "\n/ \\\n\\ /\n " + (m == 1 ? "O " : u ?"/ ":"\\ "); for (; m < 3; ++m) a += string.Concat(b.Split('\n').Select(s => s[m])) + "\n"; return u ? b : a; } 

The idea is to build the horizontal display from the vertical display by rendering the transposed matrix of characters.