Show ASCII table: Difference between revisions
Thundergnat (talk | contribs) (→{{header|Perl 6}}: Add somewhat bogus mouse hover tooltips) |
Thundergnat (talk | contribs) m (→{{header|Perl 6}}: Tidying and twiddling) |
||
Line 189: | Line 189: | ||
=={{header|Perl 6}}== |
=={{header|Perl 6}}== |
||
Alternately, and perhaps more usefully, output as a wiki-table rather than ASCII art |
Alternately, and perhaps more usefully, output as a wiki-table rather than ASCII art. Hover mouse over the glyph to get the name. |
||
<lang perl6> |
<lang perl6>sub name ($_) { |
||
when * < 33 { (0x2400 + $_).chr } # display symbol names for invisible glyphs |
|||
⚫ | |||
sub name ($n) { |
|||
when 127 { '␡' } |
|||
default { .chr } |
|||
⚫ | |||
when 127 { '␡' } |
|||
default { $n.chr } |
|||
} |
|||
} |
} |
||
say '{|class="wikitable" style="text-align:center;background-color:hsl(39, 90%, 95%)"'; |
say '{|class="wikitable" style="text-align:center;background-color:hsl(39, 90%, 95%)"'; |
||
for (^128).rotor( |
for (^128).rotor(16) -> @row { |
||
say '|-'; |
say '|-'; |
||
printf( |
printf(q[|%d<br>0x%02X<br><big><big title="%s">%s</big></big>] ~ "\n", |
||
$_, $_, .&name.uniname.subst('SYMBOL FOR ', ''), .&name) for @row; |
$_, $_, .&name.uniname.subst('SYMBOL FOR ', ''), .&name) for @row; |
||
} |
} |
||
Line 214: | Line 210: | ||
{|class="wikitable" style="text-align:center;background-color:hsl(39, 90%, 95%)" |
{|class="wikitable" style="text-align:center;background-color:hsl(39, 90%, 95%)" |
||
|- |
|- |
||
|0<br |
|0<br>0x00<br><big><big title="NULL">␀</big></big> |
||
|1<br |
|1<br>0x01<br><big><big title="START OF HEADING">␁</big></big> |
||
|2<br |
|2<br>0x02<br><big><big title="START OF TEXT">␂</big></big> |
||
|3<br |
|3<br>0x03<br><big><big title="END OF TEXT">␃</big></big> |
||
|4<br |
|4<br>0x04<br><big><big title="END OF TRANSMISSION">␄</big></big> |
||
|5<br |
|5<br>0x05<br><big><big title="ENQUIRY">␅</big></big> |
||
|6<br |
|6<br>0x06<br><big><big title="ACKNOWLEDGE">␆</big></big> |
||
|7<br |
|7<br>0x07<br><big><big title="BELL">␇</big></big> |
||
|8<br |
|8<br>0x08<br><big><big title="BACKSPACE">␈</big></big> |
||
|9<br |
|9<br>0x09<br><big><big title="HORIZONTAL TABULATION">␉</big></big> |
||
|10<br |
|10<br>0x0A<br><big><big title="LINE FEED">␊</big></big> |
||
|11<br |
|11<br>0x0B<br><big><big title="VERTICAL TABULATION">␋</big></big> |
||
|12<br |
|12<br>0x0C<br><big><big title="FORM FEED">␌</big></big> |
||
|13<br |
|13<br>0x0D<br><big><big title="CARRIAGE RETURN">␍</big></big> |
||
|14<br |
|14<br>0x0E<br><big><big title="SHIFT OUT">␎</big></big> |
||
|15<br |
|15<br>0x0F<br><big><big title="SHIFT IN">␏</big></big> |
||
|- |
|- |
||
|16<br |
|16<br>0x10<br><big><big title="DATA LINK ESCAPE">␐</big></big> |
||
|17<br |
|17<br>0x11<br><big><big title="DEVICE CONTROL ONE">␑</big></big> |
||
|18<br |
|18<br>0x12<br><big><big title="DEVICE CONTROL TWO">␒</big></big> |
||
|19<br |
|19<br>0x13<br><big><big title="DEVICE CONTROL THREE">␓</big></big> |
||
|20<br |
|20<br>0x14<br><big><big title="DEVICE CONTROL FOUR">␔</big></big> |
||
|21<br |
|21<br>0x15<br><big><big title="NEGATIVE ACKNOWLEDGE">␕</big></big> |
||
|22<br |
|22<br>0x16<br><big><big title="SYNCHRONOUS IDLE">␖</big></big> |
||
|23<br |
|23<br>0x17<br><big><big title="END OF TRANSMISSION BLOCK">␗</big></big> |
||
|24<br |
|24<br>0x18<br><big><big title="CANCEL">␘</big></big> |
||
|25<br |
|25<br>0x19<br><big><big title="END OF MEDIUM">␙</big></big> |
||
|26<br |
|26<br>0x1A<br><big><big title="SUBSTITUTE">␚</big></big> |
||
|27<br |
|27<br>0x1B<br><big><big title="ESCAPE">␛</big></big> |
||
|28<br |
|28<br>0x1C<br><big><big title="FILE SEPARATOR">␜</big></big> |
||
|29<br |
|29<br>0x1D<br><big><big title="GROUP SEPARATOR">␝</big></big> |
||
|30<br |
|30<br>0x1E<br><big><big title="RECORD SEPARATOR">␞</big></big> |
||
|31<br |
|31<br>0x1F<br><big><big title="UNIT SEPARATOR">␟</big></big> |
||
|- |
|- |
||
|32<br |
|32<br>0x20<br><big><big title="SPACE">␠</big></big> |
||
|33<br |
|33<br>0x21<br><big><big title="EXCLAMATION MARK">!</big></big> |
||
|34<br |
|34<br>0x22<br><big><big title="QUOTATION MARK">"</big></big> |
||
|35<br |
|35<br>0x23<br><big><big title="NUMBER SIGN">#</big></big> |
||
|36<br |
|36<br>0x24<br><big><big title="DOLLAR SIGN">$</big></big> |
||
|37<br |
|37<br>0x25<br><big><big title="PERCENT SIGN">%</big></big> |
||
|38<br |
|38<br>0x26<br><big><big title="AMPERSAND">&</big></big> |
||
|39<br |
|39<br>0x27<br><big><big title="APOSTROPHE">'</big></big> |
||
|40<br |
|40<br>0x28<br><big><big title="LEFT PARENTHESIS">(</big></big> |
||
|41<br |
|41<br>0x29<br><big><big title="RIGHT PARENTHESIS">)</big></big> |
||
|42<br |
|42<br>0x2A<br><big><big title="ASTERISK">*</big></big> |
||
|43<br |
|43<br>0x2B<br><big><big title="PLUS SIGN">+</big></big> |
||
|44<br |
|44<br>0x2C<br><big><big title="COMMA">,</big></big> |
||
|45<br |
|45<br>0x2D<br><big><big title="HYPHEN-MINUS">-</big></big> |
||
|46<br |
|46<br>0x2E<br><big><big title="FULL STOP">.</big></big> |
||
|47<br |
|47<br>0x2F<br><big><big title="SOLIDUS">/</big></big> |
||
|- |
|- |
||
|48<br |
|48<br>0x30<br><big><big title="DIGIT ZERO">0</big></big> |
||
|49<br |
|49<br>0x31<br><big><big title="DIGIT ONE">1</big></big> |
||
|50<br |
|50<br>0x32<br><big><big title="DIGIT TWO">2</big></big> |
||
|51<br |
|51<br>0x33<br><big><big title="DIGIT THREE">3</big></big> |
||
|52<br |
|52<br>0x34<br><big><big title="DIGIT FOUR">4</big></big> |
||
|53<br |
|53<br>0x35<br><big><big title="DIGIT FIVE">5</big></big> |
||
|54<br |
|54<br>0x36<br><big><big title="DIGIT SIX">6</big></big> |
||
|55<br |
|55<br>0x37<br><big><big title="DIGIT SEVEN">7</big></big> |
||
|56<br |
|56<br>0x38<br><big><big title="DIGIT EIGHT">8</big></big> |
||
|57<br |
|57<br>0x39<br><big><big title="DIGIT NINE">9</big></big> |
||
|58<br |
|58<br>0x3A<br><big><big title="COLON">:</big></big> |
||
|59<br |
|59<br>0x3B<br><big><big title="SEMICOLON">;</big></big> |
||
|60<br |
|60<br>0x3C<br><big><big title="LESS-THAN SIGN"><</big></big> |
||
|61<br |
|61<br>0x3D<br><big><big title="EQUALS SIGN">=</big></big> |
||
|62<br |
|62<br>0x3E<br><big><big title="GREATER-THAN SIGN">></big></big> |
||
|63<br |
|63<br>0x3F<br><big><big title="QUESTION MARK">?</big></big> |
||
|- |
|- |
||
|64<br |
|64<br>0x40<br><big><big title="COMMERCIAL AT">@</big></big> |
||
|65<br |
|65<br>0x41<br><big><big title="LATIN CAPITAL LETTER A">A</big></big> |
||
|66<br |
|66<br>0x42<br><big><big title="LATIN CAPITAL LETTER B">B</big></big> |
||
|67<br |
|67<br>0x43<br><big><big title="LATIN CAPITAL LETTER C">C</big></big> |
||
|68<br |
|68<br>0x44<br><big><big title="LATIN CAPITAL LETTER D">D</big></big> |
||
|69<br |
|69<br>0x45<br><big><big title="LATIN CAPITAL LETTER E">E</big></big> |
||
|70<br |
|70<br>0x46<br><big><big title="LATIN CAPITAL LETTER F">F</big></big> |
||
|71<br |
|71<br>0x47<br><big><big title="LATIN CAPITAL LETTER G">G</big></big> |
||
|72<br |
|72<br>0x48<br><big><big title="LATIN CAPITAL LETTER H">H</big></big> |
||
|73<br |
|73<br>0x49<br><big><big title="LATIN CAPITAL LETTER I">I</big></big> |
||
|74<br |
|74<br>0x4A<br><big><big title="LATIN CAPITAL LETTER J">J</big></big> |
||
|75<br |
|75<br>0x4B<br><big><big title="LATIN CAPITAL LETTER K">K</big></big> |
||
|76<br |
|76<br>0x4C<br><big><big title="LATIN CAPITAL LETTER L">L</big></big> |
||
|77<br |
|77<br>0x4D<br><big><big title="LATIN CAPITAL LETTER M">M</big></big> |
||
|78<br |
|78<br>0x4E<br><big><big title="LATIN CAPITAL LETTER N">N</big></big> |
||
|79<br |
|79<br>0x4F<br><big><big title="LATIN CAPITAL LETTER O">O</big></big> |
||
|- |
|- |
||
|80<br |
|80<br>0x50<br><big><big title="LATIN CAPITAL LETTER P">P</big></big> |
||
|81<br |
|81<br>0x51<br><big><big title="LATIN CAPITAL LETTER Q">Q</big></big> |
||
|82<br |
|82<br>0x52<br><big><big title="LATIN CAPITAL LETTER R">R</big></big> |
||
|83<br |
|83<br>0x53<br><big><big title="LATIN CAPITAL LETTER S">S</big></big> |
||
|84<br |
|84<br>0x54<br><big><big title="LATIN CAPITAL LETTER T">T</big></big> |
||
|85<br |
|85<br>0x55<br><big><big title="LATIN CAPITAL LETTER U">U</big></big> |
||
|86<br |
|86<br>0x56<br><big><big title="LATIN CAPITAL LETTER V">V</big></big> |
||
|87<br |
|87<br>0x57<br><big><big title="LATIN CAPITAL LETTER W">W</big></big> |
||
|88<br |
|88<br>0x58<br><big><big title="LATIN CAPITAL LETTER X">X</big></big> |
||
|89<br |
|89<br>0x59<br><big><big title="LATIN CAPITAL LETTER Y">Y</big></big> |
||
|90<br |
|90<br>0x5A<br><big><big title="LATIN CAPITAL LETTER Z">Z</big></big> |
||
|91<br |
|91<br>0x5B<br><big><big title="LEFT SQUARE BRACKET">[</big></big> |
||
|92<br |
|92<br>0x5C<br><big><big title="REVERSE SOLIDUS">\</big></big> |
||
|93<br |
|93<br>0x5D<br><big><big title="RIGHT SQUARE BRACKET">]</big></big> |
||
|94<br |
|94<br>0x5E<br><big><big title="CIRCUMFLEX ACCENT">^</big></big> |
||
|95<br |
|95<br>0x5F<br><big><big title="LOW LINE">_</big></big> |
||
|- |
|- |
||
|96<br |
|96<br>0x60<br><big><big title="GRAVE ACCENT">`</big></big> |
||
|97<br |
|97<br>0x61<br><big><big title="LATIN SMALL LETTER A">a</big></big> |
||
|98<br |
|98<br>0x62<br><big><big title="LATIN SMALL LETTER B">b</big></big> |
||
|99<br |
|99<br>0x63<br><big><big title="LATIN SMALL LETTER C">c</big></big> |
||
|100<br |
|100<br>0x64<br><big><big title="LATIN SMALL LETTER D">d</big></big> |
||
|101<br |
|101<br>0x65<br><big><big title="LATIN SMALL LETTER E">e</big></big> |
||
|102<br |
|102<br>0x66<br><big><big title="LATIN SMALL LETTER F">f</big></big> |
||
|103<br |
|103<br>0x67<br><big><big title="LATIN SMALL LETTER G">g</big></big> |
||
|104<br |
|104<br>0x68<br><big><big title="LATIN SMALL LETTER H">h</big></big> |
||
|105<br |
|105<br>0x69<br><big><big title="LATIN SMALL LETTER I">i</big></big> |
||
|106<br |
|106<br>0x6A<br><big><big title="LATIN SMALL LETTER J">j</big></big> |
||
|107<br |
|107<br>0x6B<br><big><big title="LATIN SMALL LETTER K">k</big></big> |
||
|108<br |
|108<br>0x6C<br><big><big title="LATIN SMALL LETTER L">l</big></big> |
||
|109<br |
|109<br>0x6D<br><big><big title="LATIN SMALL LETTER M">m</big></big> |
||
|110<br |
|110<br>0x6E<br><big><big title="LATIN SMALL LETTER N">n</big></big> |
||
|111<br |
|111<br>0x6F<br><big><big title="LATIN SMALL LETTER O">o</big></big> |
||
|- |
|- |
||
|112<br |
|112<br>0x70<br><big><big title="LATIN SMALL LETTER P">p</big></big> |
||
|113<br |
|113<br>0x71<br><big><big title="LATIN SMALL LETTER Q">q</big></big> |
||
|114<br |
|114<br>0x72<br><big><big title="LATIN SMALL LETTER R">r</big></big> |
||
|115<br |
|115<br>0x73<br><big><big title="LATIN SMALL LETTER S">s</big></big> |
||
|116<br |
|116<br>0x74<br><big><big title="LATIN SMALL LETTER T">t</big></big> |
||
|117<br |
|117<br>0x75<br><big><big title="LATIN SMALL LETTER U">u</big></big> |
||
|118<br |
|118<br>0x76<br><big><big title="LATIN SMALL LETTER V">v</big></big> |
||
|119<br |
|119<br>0x77<br><big><big title="LATIN SMALL LETTER W">w</big></big> |
||
|120<br |
|120<br>0x78<br><big><big title="LATIN SMALL LETTER X">x</big></big> |
||
|121<br |
|121<br>0x79<br><big><big title="LATIN SMALL LETTER Y">y</big></big> |
||
|122<br |
|122<br>0x7A<br><big><big title="LATIN SMALL LETTER Z">z</big></big> |
||
|123<br |
|123<br>0x7B<br><big><big title="LEFT CURLY BRACKET">{</big></big> |
||
|124<br |
|124<br>0x7C<br><big><big title="LESS-THAN SIGN"><nowiki>|</nowiki></big></big> |
||
|125<br |
|125<br>0x7D<br><big><big title="RIGHT CURLY BRACKET">}</big></big> |
||
|126<br |
|126<br>0x7E<br><big><big title="TILDE">~</big></big> |
||
|127<br |
|127<br>0x7F<br><big><big title="DELETE">␡</big></big> |
||
|} |
|} |
||
Revision as of 00:46, 10 August 2018
- Task
Show ASCII character set from values 32 to 127 in table format.
C
<lang c>#include <stdio.h>
int main() {
int i, j; char k[4]; for (i = 0; i < 16; ++i) { for (j = 32 + i; j < 128; j += 16) { switch (j) { default: sprintf(k, "%c", j); break; case 32: sprintf(k, "Spc"); break; case 127: sprintf(k, "Del"); break; } printf("%3d : %-3s ", j, k); } printf("\n"); } return 0;
}</lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Factor
Idiomatic version
<lang factor>USING: combinators formatting io kernel math math.ranges pair-rocket sequences ; IN: rosetta-code.ascii-table
- row-values ( n -- seq ) [ 32 + ] [ 112 + ] bi 16 <range> ;
- ascii>output ( n -- str )
{ 32 => [ "Spc" ] 127 => [ "Del" ] [ "" 1sequence ] } case ;
- print-row ( n -- )
row-values [ dup ascii>output "%3d : %-3s " printf ] each nl ;
- print-ascii-table ( -- ) 16 <iota> [ print-row ] each ;
MAIN: print-ascii-table</lang>
Go translation
<lang factor>USING: combinators formatting io kernel math math.ranges pair-rocket sequences ; IN: rosetta-code.ascii-table
- main ( -- )
16 <iota> [ 32 + 127 16 <range> [ dup { 32 => [ "Spc" ] 127 => [ "Del" ] [ "" 1sequence ] } case "%3d : %-3s " printf ] each nl ] each
MAIN: main</lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Go
<lang go>package main
import "fmt"
func main() {
for i := 0; i < 16; i++ { for j := 32 + i; j < 128; j += 16 { k := string(j) switch j { case 32: k = "Spc" case 127: k = "Del" } fmt.Printf("%3d : %-3s ", j, k) } fmt.Println() }
} </lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Kotlin
<lang scala>// Version 1.2.60
fun main(args: Array<String>) {
for (i in 0..15) { for (j in 32 + i..127 step 16) { val k = when (j) { 32 -> "Spc" 127 -> "Del" else -> j.toChar().toString() } System.out.printf("%3d : %-3s ", j, k) } println() }
}</lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Perl 6
Alternately, and perhaps more usefully, output as a wiki-table rather than ASCII art. Hover mouse over the glyph to get the name.
<lang perl6>sub name ($_) {
when * < 33 { (0x2400 + $_).chr } # display symbol names for invisible glyphs when 124 { '|' } # meh. deal with wiki formatting when 127 { '␡' } default { .chr }
}
say '{|class="wikitable" style="text-align:center;background-color:hsl(39, 90%, 95%)"';
for (^128).rotor(16) -> @row {
say '|-'; printf(q[|%d
0x%02X
%s] ~ "\n", $_, $_, .&name.uniname.subst('SYMBOL FOR ', ), .&name) for @row;
}
say '|}';</lang>
- Output:
0 0x00 ␀ |
1 0x01 ␁ |
2 0x02 ␂ |
3 0x03 ␃ |
4 0x04 ␄ |
5 0x05 ␅ |
6 0x06 ␆ |
7 0x07 ␇ |
8 0x08 ␈ |
9 0x09 ␉ |
10 0x0A ␊ |
11 0x0B ␋ |
12 0x0C ␌ |
13 0x0D ␍ |
14 0x0E ␎ |
15 0x0F ␏ |
16 0x10 ␐ |
17 0x11 ␑ |
18 0x12 ␒ |
19 0x13 ␓ |
20 0x14 ␔ |
21 0x15 ␕ |
22 0x16 ␖ |
23 0x17 ␗ |
24 0x18 ␘ |
25 0x19 ␙ |
26 0x1A ␚ |
27 0x1B ␛ |
28 0x1C ␜ |
29 0x1D ␝ |
30 0x1E ␞ |
31 0x1F ␟ |
32 0x20 ␠ |
33 0x21 ! |
34 0x22 " |
35 0x23 # |
36 0x24 $ |
37 0x25 % |
38 0x26 & |
39 0x27 ' |
40 0x28 ( |
41 0x29 ) |
42 0x2A * |
43 0x2B + |
44 0x2C , |
45 0x2D - |
46 0x2E . |
47 0x2F / |
48 0x30 0 |
49 0x31 1 |
50 0x32 2 |
51 0x33 3 |
52 0x34 4 |
53 0x35 5 |
54 0x36 6 |
55 0x37 7 |
56 0x38 8 |
57 0x39 9 |
58 0x3A : |
59 0x3B ; |
60 0x3C < |
61 0x3D = |
62 0x3E > |
63 0x3F ? |
64 0x40 @ |
65 0x41 A |
66 0x42 B |
67 0x43 C |
68 0x44 D |
69 0x45 E |
70 0x46 F |
71 0x47 G |
72 0x48 H |
73 0x49 I |
74 0x4A J |
75 0x4B K |
76 0x4C L |
77 0x4D M |
78 0x4E N |
79 0x4F O |
80 0x50 P |
81 0x51 Q |
82 0x52 R |
83 0x53 S |
84 0x54 T |
85 0x55 U |
86 0x56 V |
87 0x57 W |
88 0x58 X |
89 0x59 Y |
90 0x5A Z |
91 0x5B [ |
92 0x5C \ |
93 0x5D ] |
94 0x5E ^ |
95 0x5F _ |
96 0x60 ` |
97 0x61 a |
98 0x62 b |
99 0x63 c |
100 0x64 d |
101 0x65 e |
102 0x66 f |
103 0x67 g |
104 0x68 h |
105 0x69 i |
106 0x6A j |
107 0x6B k |
108 0x6C l |
109 0x6D m |
110 0x6E n |
111 0x6F o |
112 0x70 p |
113 0x71 q |
114 0x72 r |
115 0x73 s |
116 0x74 t |
117 0x75 u |
118 0x76 v |
119 0x77 w |
120 0x78 x |
121 0x79 y |
122 0x7A z |
123 0x7B { |
124 0x7C | |
125 0x7D } |
126 0x7E ~ |
127 0x7F ␡ |
Ring
<lang ring>
- Project : Show Ascii table
load "guilib.ring" load "stdlib.ring"
decarr = newlist(16,6) ascarr = newlist(16,6)
new qapp
{ win1 = new qwidget() { setwindowtitle("Show Ascii table") setgeometry(100,100,800,600) for n = 1 to 16 for m = 1 to 6 decarr[n][m] = new qpushbutton(win1) { x = 150+m*60 y = 30 + n*30 ind = string((m-1)*16+n+31) setgeometry(x,y,30,30) settext(ind) } next next for n = 1 to 16 for m = 1 to 6 ascarr[n][m] = new qpushbutton(win1) { x = 180+m*60 y = 30 + n*30 ind = (m-1)*16+n+31 setgeometry(x,y,30,30) if ind = 32 settext("Spc") loop ok if ind = 127 settext("Del") loop ok settext(char(ind)) } next next show() } exec() }
</lang> Output: