Menu English Ukrainian Russo Início

Biblioteca técnica gratuita para amadores e profissionais Biblioteca técnica gratuita


Информатика и информационные технологии. Файлы (конспект лекций)

Notas de aula, folhas de dicas

Diretório / Notas de aula, folhas de dicas

Comentários do artigo Comentários do artigo

Í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:

Concorrência. Berço

Teoria da organização. Notas de aula

Filosofia. Notas de aula

Veja outros artigos seção Notas de aula, folhas de dicas.

Leia e escreva útil comentários sobre este artigo.

<< Voltar

Ú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

A mecânica quântica continua a nos surpreender com seus fenômenos misteriosos e descobertas inesperadas. Recentemente, Bartosz Regula do Centro RIKEN de Computação Quântica e Ludovico Lamy da Universidade de Amsterdã apresentaram uma nova descoberta que diz respeito ao emaranhamento quântico e sua relação com a entropia. O emaranhamento quântico desempenha um papel importante na moderna ciência e tecnologia da informação quântica. No entanto, a complexidade da sua estrutura torna a sua compreensão e gestão um desafio. A descoberta de Regulus e Lamy mostra que o emaranhamento quântico segue uma regra de entropia semelhante à dos sistemas clássicos. Esta descoberta abre novas perspectivas na ciência e tecnologia da informação quântica, aprofundando a nossa compreensão do emaranhamento quântico e a sua ligação à termodinâmica. Os resultados do estudo indicam a possibilidade de reversibilidade das transformações de emaranhamento, o que poderia simplificar muito seu uso em diversas tecnologias quânticas. Abrindo uma nova regra ... >>

Mini ar condicionado Sony Reon Pocket 5 09.05.2024

O verão é uma época de relaxamento e viagens, mas muitas vezes o calor pode transformar essa época em um tormento insuportável. Conheça um novo produto da Sony – o minicondicionador Reon Pocket 5, que promete deixar o verão mais confortável para seus usuários. A Sony lançou um dispositivo exclusivo - o minicondicionador Reon Pocket 5, que fornece resfriamento corporal em dias quentes. Com ele, os usuários podem desfrutar do frescor a qualquer hora e em qualquer lugar, simplesmente usando-o no pescoço. Este miniar condicionado está equipado com ajuste automático dos modos de operação, além de sensores de temperatura e umidade. Graças a tecnologias inovadoras, o Reon Pocket 5 ajusta o seu funcionamento em função da atividade do utilizador e das condições ambientais. Os usuários podem ajustar facilmente a temperatura usando um aplicativo móvel dedicado conectado via Bluetooth. Além disso, camisetas e shorts especialmente desenhados estão disponíveis para maior comodidade, aos quais um mini ar condicionado pode ser acoplado. O dispositivo pode, oh ... >>

Energia do espaço para Starship 08.05.2024

A produção de energia solar no espaço está se tornando mais viável com o advento de novas tecnologias e o desenvolvimento de programas espaciais. O chefe da startup Virtus Solis compartilhou sua visão de usar a Starship da SpaceX para criar usinas orbitais capazes de abastecer a Terra. A startup Virtus Solis revelou um ambicioso projeto para criar usinas de energia orbitais usando a Starship da SpaceX. Esta ideia poderia mudar significativamente o campo da produção de energia solar, tornando-a mais acessível e barata. O cerne do plano da startup é reduzir o custo de lançamento de satélites ao espaço usando a Starship. Espera-se que este avanço tecnológico torne a produção de energia solar no espaço mais competitiva com as fontes de energia tradicionais. A Virtual Solis planeja construir grandes painéis fotovoltaicos em órbita, usando a Starship para entregar os equipamentos necessários. Contudo, um dos principais desafios ... >>

Notícias aleatórias do Arquivo

TVs de jogos Tohiba Z4 MiniLED 870K 07.04.2023

A Toshiba anunciou o lançamento da série Z4 MiniLED de TVs de jogos 870K, que possuem telas com uma taxa de atualização de 144 Hz ideal para jogos e ferramentas representativas do modo de jogo Pro/ALLM/AMD FreeSync/VRR, etc.

A minitela do tipo LED tem uma série de vantagens inegáveis, que vão desde cores mais vivas e escurecimento local aprimorado até melhor iluminação de fundo. O processador REGZA, por sua vez, fornece o modo de operação da mais alta qualidade com otimização de cores e contraste.

A data de lançamento prevista para a linha Z870 MiniLED é julho deste ano. A geografia de vendas não se limitará apenas ao Japão, dizem os representantes do desenvolvedor sob condição de anonimato, sem especificar detalhes importantes como preço, dimensões, data exata de apresentação etc.

A marca já tem um modelo Z100 de 870 polegadas lançado na China no final de 2022. Esta unidade possui 256 zonas de escurecimento local, brilho de até 1 nits, resolução 400K, 4% de cobertura DCI-P97, mecanismo REGZA e suporte para Dolby Vision/Dolby Atmos. A TV também possui um sistema de som de 3 canais integrado. Existe a opção de conectar alto-falantes externos por meio de saídas de áudio e portas SPDIF. Outros conectores e interfaces - HDMI 2.1/HDMI 2.1/USB 2.0.

A versão de 100 polegadas do Z870 vendida na China custa pouco menos de US$ 5100.

Outras notícias interessantes:

▪ Conversores Médicos DC/DC Mean Well MDS15/20

▪ Lançamento da primeira rede 5G pública nos EUA

▪ trilha do cometa

▪ exoesqueleto macio

▪ 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 Por quanto tempo a precipitação mais perigosa da zona de Chernobyl cairá pela metade? Resposta detalhada

▪ 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

▪ artigo Gerador de corrente estável para carregamento de baterias e sua aplicação na reparação e conceção de equipamentos eletrónicos. Enciclopédia de rádio eletrônica e engenharia elétrica

Deixe seu comentário neste artigo:

Имя:


E-mail opcional):


Comentário:





Todos os idiomas desta página

Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site

www.diagrama.com.ua

www.diagrama.com.ua
2000-2024