pascal 05 strings
DESCRIPTION
Strings em PascalTRANSCRIPT
![Page 1: Pascal 05 Strings](https://reader035.vdocuments.net/reader035/viewer/2022080912/55cf9c22550346d033a8b9ac/html5/thumbnails/1.jpg)
APIB-12BC
FM2012 1
STRINGS (Cadeias de Carateres)
São estruturas que permitem armazenar um conjunto de carateres. Estes
conjuntos de carateres podem ter no máximo 255 e podem conter carateres
alfabéticos, numéricos e símbolos. As cadeias de carateres podem ser utilizadas
como vetores de caracteres (array of char), por serem conjuntos de dados do
mesmo tipo (char), permitindo efetuar operações sobre cada um dos seus
caracteres individualmente.
Na tabela seguinte, mostra-se um conjunto de funções internas disponibilizadas
pelo Pascal para manipulação de strings (algumas funções poderão não estar
disponíveis em alguns compiladores de Pascal):
FUNÇÃO DESCRIÇÃO RESULTADO (TIPO)
Length Número de carateres existentes numa string Byte
(entre 0 - 255)
Upcase Transforma um carácter em maiúscula char
Concat Faz a concatenação (junção) de duas ou mais strings (str1, str2, ...,
strn) string
Pos Dá a posição ocupada numa string pelo primeiro carácter de uma
sub-string byte
Copy Faz a cópia de uma sub-string (substr) de acordo com a posição
(pos) do início e do número de carateres a copiar (num). string
Delete
Exclui uma parte de uma string (str) passada como parâmetro, de
acordo com a posição do início (pos e número de carateres
indicados (num)
string
Insert Insere uma sub-string (substr) dentro de uma string (str), numa
posição (pos) indicada. string
Val
Converte uma string num valor numérico. Se o conteúdo da string
não puder ser convertido, uma variável (erro) guarda o valor
correspondente à posição em que ocorreu o primeiro erro. Caso não
ocorra erro, guarda o valor zero.
integer
Str Converte um valor numérico (num) numa string (str) string
Chr Devolve o carácter correspondente ao código ASCII do num
indicado char
Ord Devolve o código ASCII correspondente ao carácter indicado. byte
(entre 0 - 255)
![Page 2: Pascal 05 Strings](https://reader035.vdocuments.net/reader035/viewer/2022080912/55cf9c22550346d033a8b9ac/html5/thumbnails/2.jpg)
APIB-12BC
FM2012 2
Exemplos de utilização
UPCASE (ch : char) : char; letra := 'a';
maiusc := upcase (letra);
writeln (maiusc); {será exibida a letra 'A' (maiúscula)}
CONCAT (str1 , str2 , ... , strn : string) : string; pal1 := 'TURBO';
pal2 := 'PASCAL';
uniao := concat (pal1,' ',pal2);
writeln (uniao); {será exibido a string 'TURBO PASCAL'}
POS (substr , str : string) : byte; frase := 'VAMOS ESTUDAR MAIS';
pesq := 'ESTU';
posicao := pos (pesq,frase);
writeln (posicao); {será exibido o valor 7}
COPY (str:string; pos:byte; quant:byte) : string; frase := 'VAMOS ESTUDAR MAIS';
pedaco := copy(frase,7,4);
writeln (pedaco); {será exibido a string 'ESTU'}
DELETE (var str:string; pos:byte; quant:byte); frase := 'TURBO PASCAL 7.0';
delete (frase,7,7);
writeln (frase); {será exibido a string 'TURBO 7.0'}
INSERT (substr:string; var str:string; pos:byte); frase := 'INFORMATICAS';
insert ('APLICACOES',frase,10);
writeln (frase); {será exibido a string 'APLICACOESINFORMATICAS'}
VAL (str:string; var num:integer|real; var erro:integer); codigo := '017348';
val (codigo,numero,erro);
writeln (numero); {será exibido o valor 17348}
writeln (erro); {será exibido o valor 0}
codigo := 'ABCD1';
val (codigo,numero,erro);
writeln (numero); {será exibido o valor 0}
writeln (erro); {será exibido o valor 1}
![Page 3: Pascal 05 Strings](https://reader035.vdocuments.net/reader035/viewer/2022080912/55cf9c22550346d033a8b9ac/html5/thumbnails/3.jpg)
APIB-12BC
FM2012 3
STR (num [:tam [:dec]]; var str:string); numero := 12.3;
str (numero:6:2,conv);
writeln (conv); {será exibido a string ' 12.30'}
CHR (codigo:byte) : char; codigo := 65;
caracter := CHR(codigo);
writeln (caracter); {será exibido o caracter 'A'}
ORD (caracter:char) : byte; caracter := 'A';
codigo := ORD(caracter);
writeln (codigo); {será exibido 65}
REF: Tabela de códigos ASCII.
http://www.asciitable.com/