thoga31

ASCII Table v1.0

Jun 23rd, 2013
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.10 KB | None | 0 0
  1. program ascii;
  2. uses crt;
  3.  
  4. const MAX   = 255;
  5.       PASSO = 10;
  6.       opcoes = [#27, '1', '2'];
  7.  
  8. type TTable = array [0..MAX] of char;
  9.  
  10. var tabela : TTable;
  11.     op : char;
  12.  
  13.  
  14. procedure Pausa();
  15. begin
  16.     repeat until (readkey = #13);
  17. end;
  18.  
  19. procedure CarregarTabela(var t : TTable);
  20. var i : integer;
  21. begin
  22.     for i := 0 to MAX do t[i] := char(i);
  23. end;
  24.  
  25. procedure Caracter(const t : TTable);
  26. var n : Byte;
  27. begin
  28.     write('Caracter numero (32-255)? ');
  29.     repeat
  30.         readln(n);
  31.     until (n in [32..255]);
  32.     writeln('Caracter ', n, ' = ''', t[n],'''');
  33.     Pausa;
  34. end;
  35.  
  36. procedure MostrarTabela(const t : TTable);
  37. var i, j : integer;
  38. begin
  39.     i:=32;
  40.     repeat
  41.         for j:=0 to PASSO do
  42.             if i+j<=MAX then write(i+j:4, t[i+j]:2, #179);
  43.         writeln;
  44.         inc(i,PASSO+1);
  45.     until i >= MAX;
  46.     Pausa;
  47. end;
  48.  
  49.  
  50. begin
  51.     CarregarTabela(tabela);
  52.     repeat
  53.         clrscr;
  54.         writeln('  1 > Ver tabela');
  55.         writeln('  2 > Numero para caracter');
  56.         writeln('ESC > Sair');
  57.         repeat
  58.             op := readkey;
  59.         until (op in opcoes);
  60.         clrscr;
  61.         case op of
  62.             '1' : MostrarTabela(tabela);
  63.             '2' : Caracter(tabela);
  64.         end;
  65.     until op = #27;
  66. end.
Advertisement
Add Comment
Please, Sign In to add comment