Write language name in 3D ASCII: Difference between revisions

Content added Content deleted
(→‎{{header|UNIX Shell}}: Add implementation)
(→‎{{header|Kotlin}}: Updated example see https://github.com/dkandalov/rosettacode-kotlin for details)
Line 1,697: Line 1,697:
=={{header|Kotlin}}==
=={{header|Kotlin}}==
{{trans|Java}}
{{trans|Java}}
<lang scala>// version 1.0.6
<lang scala>// version 1.1


class Ascii3D(s: String) {
class Ascii3D(s: String) {
val z = charArrayOf(' ',' ','_','/')
val z = charArrayOf(' ', ' ', '_', '/')


val f = arrayOf(
val f = arrayOf(
longArrayOf(87381,87381,87381,87381,87381,87381,87381),
longArrayOf(87381, 87381, 87381, 87381, 87381, 87381, 87381),
longArrayOf(349525,375733,742837,742837,375733,349525,349525),
longArrayOf(349525, 375733, 742837, 742837, 375733, 349525, 349525),
longArrayOf(742741,768853,742837,742837,768853,349525,349525),
longArrayOf(742741, 768853, 742837, 742837, 768853, 349525, 349525),
longArrayOf(349525,375733,742741,742741,375733,349525,349525),
longArrayOf(349525, 375733, 742741, 742741, 375733, 349525, 349525),
longArrayOf(349621,375733,742837,742837,375733,349525,349525),
longArrayOf(349621, 375733, 742837, 742837, 375733, 349525, 349525),
longArrayOf(349525,375637,768949,742741,375733,349525,349525),
longArrayOf(349525, 375637, 768949, 742741, 375733, 349525, 349525),
longArrayOf(351157,374101,768949,374101,374101,349525,349525),
longArrayOf(351157, 374101, 768949, 374101, 374101, 349525, 349525),
longArrayOf(349525,375733,742837,742837,375733,349621,351157),
longArrayOf(349525, 375733, 742837, 742837, 375733, 349621, 351157),
longArrayOf(742741,768853,742837,742837,742837,349525,349525),
longArrayOf(742741, 768853, 742837, 742837, 742837, 349525, 349525),
longArrayOf(181,85,181,181,181,85,85),
longArrayOf(181, 85, 181, 181, 181, 85, 85),
longArrayOf(1461,1365,1461,1461,1461,1461,2901),
longArrayOf(1461, 1365, 1461, 1461, 1461, 1461, 2901),
longArrayOf(742741,744277,767317,744277,742837,349525,349525),
longArrayOf(742741, 744277, 767317, 744277, 742837, 349525, 349525),
longArrayOf(181,181,181,181,181,85,85),
longArrayOf(181, 181, 181, 181, 181, 85, 85),
longArrayOf(1431655765,3149249365L,3042661813L,3042661813L,3042661813L,1431655765,1431655765),
longArrayOf(1431655765, 3149249365L, 3042661813L, 3042661813L, 3042661813L, 1431655765, 1431655765),
longArrayOf(349525,768853,742837,742837,742837,349525,349525),
longArrayOf(349525, 768853, 742837, 742837, 742837, 349525, 349525),
longArrayOf(349525,375637,742837,742837,375637,349525,349525),
longArrayOf(349525, 375637, 742837, 742837, 375637, 349525, 349525),
longArrayOf(349525,768853,742837,742837,768853,742741,742741),
longArrayOf(349525, 768853, 742837, 742837, 768853, 742741, 742741),
longArrayOf(349525,375733,742837,742837,375733,349621,349621),
longArrayOf(349525, 375733, 742837, 742837, 375733, 349621, 349621),
longArrayOf(349525,744373,767317,742741,742741,349525,349525),
longArrayOf(349525, 744373, 767317, 742741, 742741, 349525, 349525),
longArrayOf(349525,375733,767317,351157,768853,349525,349525),
longArrayOf(349525, 375733, 767317, 351157, 768853, 349525, 349525),
longArrayOf(374101,768949,374101,374101,351157,349525,349525),
longArrayOf(374101, 768949, 374101, 374101, 351157, 349525, 349525),
longArrayOf(349525,742837,742837,742837,375733,349525,349525),
longArrayOf(349525, 742837, 742837, 742837, 375733, 349525, 349525),
longArrayOf(5592405,11883957,11883957,5987157,5616981,5592405,5592405),
longArrayOf(5592405, 11883957, 11883957, 5987157, 5616981, 5592405, 5592405),
longArrayOf(366503875925L,778827027893L,778827027893L,392374737749L,368114513237L,366503875925L,366503875925L),
longArrayOf(366503875925L, 778827027893L, 778827027893L, 392374737749L, 368114513237L, 366503875925L, 366503875925L),
longArrayOf(349525,742837,375637,742837,742837,349525,349525),
longArrayOf(349525, 742837, 375637, 742837, 742837, 349525, 349525),
longArrayOf(349525,742837,742837,742837,375733,349621,375637),
longArrayOf(349525, 742837, 742837, 742837, 375733, 349621, 375637),
longArrayOf(349525,768949,351061,374101,768949,349525,349525),
longArrayOf(349525, 768949, 351061, 374101, 768949, 349525, 349525),
longArrayOf(375637,742837,768949,742837,742837,349525,349525),
longArrayOf(375637, 742837, 768949, 742837, 742837, 349525, 349525),
longArrayOf(768853,742837,768853,742837,768853,349525,349525),
longArrayOf(768853, 742837, 768853, 742837, 768853, 349525, 349525),
longArrayOf(375733,742741,742741,742741,375733,349525,349525),
longArrayOf(375733, 742741, 742741, 742741, 375733, 349525, 349525),
longArrayOf(192213,185709,185709,185709,192213,87381,87381),
longArrayOf(192213, 185709, 185709, 185709, 192213, 87381, 87381),
longArrayOf(1817525,1791317,1817429,1791317,1817525,1398101,1398101),
longArrayOf(1817525, 1791317, 1817429, 1791317, 1817525, 1398101, 1398101),
longArrayOf(768949,742741,768853,742741,742741,349525,349525),
longArrayOf(768949, 742741, 768853, 742741, 742741, 349525, 349525),
longArrayOf(375733,742741,744373,742837,375733,349525,349525),
longArrayOf(375733, 742741, 744373, 742837, 375733, 349525, 349525),
longArrayOf(742837,742837,768949,742837,742837,349525,349525),
longArrayOf(742837, 742837, 768949, 742837, 742837, 349525, 349525),
longArrayOf(48053,23381,23381,23381,48053,21845,21845),
longArrayOf(48053, 23381, 23381, 23381, 48053, 21845, 21845),
longArrayOf(349621,349621,349621,742837,375637,349525,349525),
longArrayOf(349621, 349621, 349621, 742837, 375637, 349525, 349525),
longArrayOf(742837,744277,767317,744277,742837,349525,349525),
longArrayOf(742837, 744277, 767317, 744277, 742837, 349525, 349525),
longArrayOf(742741,742741,742741,742741,768949,349525,349525),
longArrayOf(742741, 742741, 742741, 742741, 768949, 349525, 349525),
longArrayOf(11883957,12278709,11908533,11883957,11883957,5592405,5592405),
longArrayOf(11883957, 12278709, 11908533, 11883957, 11883957, 5592405, 5592405),
longArrayOf(11883957,12277173,11908533,11885493,11883957,5592405,5592405),
longArrayOf(11883957, 12277173, 11908533, 11885493, 11883957, 5592405, 5592405),
longArrayOf(375637,742837,742837,742837,375637,349525,349525),
longArrayOf(375637, 742837, 742837, 742837, 375637, 349525, 349525),
longArrayOf(768853,742837,768853,742741,742741,349525,349525),
longArrayOf(768853, 742837, 768853, 742741, 742741, 349525, 349525),
longArrayOf(6010197,11885397,11909973,11885397,6010293,5592405,5592405),
longArrayOf(6010197, 11885397, 11909973, 11885397, 6010293, 5592405, 5592405),
longArrayOf(768853,742837,768853,742837,742837,349525,349525),
longArrayOf(768853, 742837, 768853, 742837, 742837, 349525, 349525),
longArrayOf(375733,742741,375637,349621,768853,349525,349525),
longArrayOf(375733, 742741, 375637, 349621, 768853, 349525, 349525),
longArrayOf(12303285,5616981,5616981,5616981,5616981,5592405,5592405),
longArrayOf(12303285, 5616981, 5616981, 5616981, 5616981, 5592405, 5592405),
longArrayOf(742837,742837,742837,742837,375637,349525,349525),
longArrayOf(742837, 742837, 742837, 742837, 375637, 349525, 349525),
longArrayOf(11883957,11883957,11883957,5987157,5616981,5592405,5592405),
longArrayOf(11883957, 11883957, 11883957, 5987157, 5616981, 5592405, 5592405),
longArrayOf(3042268597L,3042268597L,3042661813L,1532713813,1437971797,1431655765,1431655765),
longArrayOf(3042268597L, 3042268597L, 3042661813L, 1532713813, 1437971797, 1431655765, 1431655765),
longArrayOf(11883957,5987157,5616981,5987157,11883957,5592405,5592405),
longArrayOf(11883957, 5987157, 5616981, 5987157, 11883957, 5592405, 5592405),
longArrayOf(11883957,5987157,5616981,5616981,5616981,5592405,5592405),
longArrayOf(11883957, 5987157, 5616981, 5616981, 5616981, 5592405, 5592405),
longArrayOf(12303285,5593941,5616981,5985621,12303285,5592405,5592405)
longArrayOf(12303285, 5593941, 5616981, 5985621, 12303285, 5592405, 5592405)
)
)


init {
init {
val o = Array<StringBuilder>(7) { StringBuilder() }
val o = Array(7) { StringBuilder() }
for (i in 0 until s.length) {
for (i in 0 until s.length) {
var c = s[i].toInt()
var c = s[i].toInt()
if (c in 65..90) c -= 39
if (c in 65..90) {
else if (c in 97..122) c -= 97
c -= 39
else c = -1
} else if (c in 97..122) {
c -= 97
} else {
c = -1
}
val d = f[++c]
val d = f[++c]
for (j in 0 until 7) {
for (j in 0 until 7) {
Line 1,776: Line 1,780:
}
}
}
}
for(i in 0 until 7) {
for (i in 0 until 7) {
for(j in 0 until 7 - i) print(' ')
for (j in 0 until 7 - i) print(' ')
println(o[i])
println(o[i])
}
}