RESUMO DA AULA, CRIBS
Информатика и информационные технологии. Файлы (конспект лекций) Diretório / Notas de aula, folhas de dicas Índice (expandir) AULA #5. Tipo de dados String 1. Tipo de string em Pascal Uma sequência de caracteres de um determinado comprimento é chamada de string. As variáveis do tipo string são definidas especificando o nome da variável, a string de palavra reservada e, opcionalmente, mas não necessariamente, especificando o tamanho máximo, ou seja, o comprimento da string, entre colchetes. Se você não definir o tamanho máximo da string, por padrão será 255, ou seja, a string consistirá em 255 caracteres. Cada elemento de uma string pode ser referido pelo seu número. No entanto, strings são entradas e saídas como um todo, não elemento por elemento, como é o caso dos arrays. O número de caracteres inseridos não deve exceder o especificado no tamanho máximo da string, portanto, se ocorrer esse excesso, os caracteres "extras" serão ignorados. 2. Procedimentos e funções para variáveis do tipo string 1. Cópia da Função(S: String; Índice, Contagem: Inteiro): String; Retorna uma substring de uma string. S é uma expressão do tipo String. Index e Count são expressões do tipo inteiro. A função retorna uma string contendo caracteres Count começando na posição Index. Se Index for maior que o comprimento de S, a função retornará uma string vazia. 2. Procedimento Delete(var S: String; Index, Count: Integer); Remove uma substring de caracteres de comprimento Count da string S, começando na posição Index. S é uma variável do tipo String. Index e Count são expressões do tipo inteiro. Se Index for maior que o comprimento de S, nenhum caractere será removido. 3. Inserção de Procedimento(Fonte: String; var S: String; Índice: Inteiro); Concatena uma substring em uma string, começando em uma posição especificada. Source é uma expressão do tipo String. S é uma variável do tipo String de qualquer comprimento. Índice é uma expressão do tipo inteiro. Insert insere Source em S, começando na posição S[Index]. 4. Comprimento da Função (S: String): Inteiro; Retorna o número de caracteres realmente usados na string S. Observe que, ao usar strings terminadas em nulo, o número de caracteres não é necessariamente igual ao número de bytes. 5. Função Pos(Substr: String; S: String): Integer; Procura uma substring em uma string. Pos procura Substr dentro de S e retorna um valor inteiro que é o índice do primeiro caractere de Substr dentro de S. Se Substr não for encontrado, Pos retornará nulo. 3. Gravações Um registro é uma coleção de um número limitado de componentes logicamente relacionados pertencentes a diferentes tipos. Os componentes de um registro são chamados de campos, cada um dos quais é identificado por um nome. Um campo de registro contém o nome do campo, seguido por dois pontos para indicar o tipo do campo. Os campos de registro podem ser de qualquer tipo permitido em Pascal, com exceção do tipo de arquivo. A descrição de um registro na linguagem Pascal é realizada utilizando a palavra de serviço RECORD, seguida da descrição dos componentes do registro. A descrição da entrada termina com a palavra de serviço END. Por exemplo, um bloco de anotações contém sobrenomes, iniciais e números de telefone, portanto, é conveniente representar uma linha separada em um bloco de anotações como a seguinte entrada: tipo Linha = Registro FIO: Sequência[20]; TEL: Sequência[7]; end; var str: Linha; As descrições de registro também são possíveis sem usar o nome do tipo, por exemplo: var str : Gravar FIO: String[20]; TEL : Sequência[7]; end; A referência a um registro como um todo é permitida apenas em instruções de atribuição em que os nomes de registro do mesmo tipo são usados à esquerda e à direita do sinal de atribuição. Em todos os outros casos, campos separados de registros são operados. Para fazer referência a um componente de registro individual, você deve especificar o nome do registro e, por meio de um ponto, especificar o nome do campo desejado. Tal nome é chamado de nome composto. Um componente de registro também pode ser um registro; nesse caso, o nome distinto conterá não dois, mas mais nomes. A referência de componentes de registro pode ser simplificada usando o operador with append. Ele permite substituir os nomes compostos que caracterizam cada campo por apenas nomes de campo e definir o nome do registro no operador de acréscimo. Às vezes, o conteúdo de um registro individual depende do valor de um de seus campos. Na linguagem Pascal, é permitida uma descrição de registro, consistindo em partes comuns e variantes. A parte variante é especificada usando o caso P de construção, onde P é o nome do campo da parte comum do registro. Os valores possíveis aceitos por este campo são listados da mesma forma que na declaração de variantes. No entanto, em vez de especificar a ação a ser executada, como é feito em uma instrução variante, os campos variantes são especificados entre parênteses. A descrição da parte variante termina com o fim da palavra de serviço. O tipo de campo P pode ser especificado no cabeçalho da parte variante. Os registros são inicializados usando constantes tipadas. 4. Conjuntos O conceito de conjunto na linguagem Pascal é baseado no conceito matemático de conjuntos: é uma coleção limitada de diferentes elementos. Um tipo de dados enumerado ou de intervalo é usado para construir um tipo de conjunto concreto. O tipo de elementos que compõem um conjunto é chamado de tipo base. Um tipo múltiplo é descrito usando o conjunto de palavras de função, por exemplo: tipo M = Conjunto de B; Aqui M é o tipo plural, B é o tipo base. O pertencimento de variáveis a um tipo plural pode ser determinado diretamente na seção de declaração de variáveis. As constantes de tipo de conjunto são gravadas como uma sequência entre colchetes de elementos ou intervalos de tipo base, separados por vírgulas. Uma constante da forma [] significa um subconjunto vazio. Um conjunto inclui um conjunto de elementos do tipo base, todos os subconjuntos de um determinado conjunto e o subconjunto vazio. Se o tipo base no qual o conjunto é construído possui K elementos, então o número de subconjuntos incluídos neste conjunto é igual a 2 elevado a K. A ordem de listar os elementos do tipo base em constantes é indiferente. O valor de uma variável de tipo múltiplo pode ser dado por uma construção da forma [T], onde T é uma variável do tipo base. As operações de atribuição (:=), união (+), interseção (*) e subtração (-) são aplicáveis a variáveis e constantes de um tipo de conjunto. O resultado dessas operações é um valor do tipo plural: 1) ['A','B'] + ['A','D'] dará ['A','B','D']; 2) ['A'] * ['A','B','C'] dará ['A']; 3) ['A','B','C'] - ['A','B'] dará ['C']. As operações são aplicáveis a vários valores: identidade (=), não identidade (<>), contido em (<=), contém (>=). O resultado dessas operações tem um tipo booleano: 1) ['A','B'] = ['A','C'] dará FALSE ; 2) ['A','B'] <> ['A','C'] dará TRUE; 3) ['B'] <= ['B','C'] dará TRUE; 4) ['C','D'] >= ['A'] dará FALSE. Além dessas operações, para trabalhar com valores de um tipo de conjunto, utiliza-se a operação in, que verifica se o elemento do tipo base à esquerda do sinal de operação pertence ao conjunto à direita do sinal de operação . O resultado desta operação é um booleano. A operação de verificar se um elemento pertence a um conjunto é frequentemente usada em vez de operações relacionais. Quando vários tipos de dados são usados em programas, as operações são executadas em sequências de bits de dados. Cada valor do tipo múltiplo na memória do computador corresponde a um dígito binário. Valores de um tipo múltiplo não podem ser elementos de uma lista de E/S. Em cada implementação concreta do compilador da linguagem Pascal, o número de elementos do tipo base sobre o qual o conjunto é construído é limitado. A inicialização de vários valores de tipo é feita usando constantes tipadas. Aqui estão alguns procedimentos para trabalhar com conjuntos. 1. Procedimento Excluir(var S: Conjunto de T; I:T); Remove o elemento I do conjunto S. S é uma variável do tipo "set" e I é uma expressão de um tipo compatível com o tipo original S. Exclude(S, I) é o mesmo que S : = S - [I], mas gera um código mais eficiente. 2. Procedure Include(var S: Conjunto de T; I:T); Adiciona um elemento I ao conjunto S. S é uma variável do tipo "set", e I é uma expressão de um tipo compatível com o tipo S. A construção Include(S, I) é a mesma que S : = S + [I], mas gera um código mais eficiente. Autor: Tsvetkova A.V. << Voltar: Sub-rotinas (Parâmetros de rotina. Tipos de parâmetros de sub-rotina. Tipo string em Pascal. Procedimentos e funções para variáveis do tipo string. Registros. Conjuntos) >> Encaminhar: Memória dinâmica (Tipo de dados de referência. Memória dinâmica. Variáveis dinâmicas. Trabalhando com memória dinâmica. Ponteiros não digitados) Recomendamos artigos interessantes seção Notas de aula, folhas de dicas: ▪ Teoria da organização. Notas de aula Veja outros artigos seção Notas de aula, folhas de dicas. Leia e escreva útil comentários sobre este artigo. Últimas notícias de ciência e tecnologia, nova eletrônica: A existência de uma regra de entropia para o emaranhamento quântico foi comprovada
09.05.2024 Mini ar condicionado Sony Reon Pocket 5
09.05.2024 Energia do espaço para Starship
08.05.2024
Outras notícias interessantes: ▪ Conversores Médicos DC/DC Mean Well MDS15/20 ▪ Lançamento da primeira rede 5G pública nos EUA ▪ Vulnerabilidade dos Impérios Feed de notícias de ciência e tecnologia, nova eletrônica
Materiais interessantes da Biblioteca Técnica Gratuita: ▪ seção do site Amplificadores de potência de RF. Seleção de artigos ▪ artigo Quão pouco se viveu, quanta coisa se experimentou! expressão popular ▪ Artigo Meadowsweet elm. Lendas, cultivo, métodos de aplicação ▪ artigo Fitter's Probe. Enciclopédia de rádio eletrônica e engenharia elétrica
Deixe seu comentário neste artigo: Todos os idiomas desta página Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site www.diagrama.com.ua |