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)

PALESTRA Nº 4. Sub-rotinas

1. Parâmetros do subprograma

A descrição de um procedimento ou função especifica uma lista de parâmetros formais. Cada parâmetro declarado em uma lista de parâmetros formal é local para o procedimento ou função descrita e pode ser referenciado no módulo associado a esse procedimento ou função por seu identificador.

Existem três tipos de parâmetros: valor, variável e variável sem tipo. Eles são caracterizados da seguinte forma.

1. Um grupo de parâmetros sem uma palavra-chave precedente é uma lista de parâmetros de valor.

2. Um grupo de parâmetros precedido pela palavra-chave const e seguido por um tipo é uma lista de parâmetros constantes.

3. Um grupo de parâmetros precedido pela palavra-chave var e seguido por um tipo é uma lista de parâmetros de variáveis ​​não tipadas.

4. Um grupo de parâmetros precedido pela palavra-chave var ou const e não seguido por um tipo é uma lista de parâmetros de variáveis ​​não tipadas.

2. Tipos de parâmetros de sub-rotina

Parâmetros de valor

Um parâmetro de valor formal é tratado como uma variável local para o procedimento ou função, exceto que deriva seu valor inicial do parâmetro real correspondente quando o procedimento ou função é invocado. As alterações sofridas por um parâmetro de valor formal não afetam o valor do parâmetro real. O valor do parâmetro de valor real correspondente deve ser uma expressão e seu valor não deve ser um tipo de arquivo ou qualquer tipo de estrutura que contenha um tipo de arquivo.

O parâmetro real deve ser de um tipo que seja compatível com a atribuição do tipo do parâmetro de valor formal. Se o parâmetro for do tipo string, o parâmetro formal terá um atributo size de 255.

Parâmetros constantes

Parâmetros constantes formais funcionam de forma semelhante a uma variável local somente leitura que obtém seu valor quando um procedimento ou função é invocado a partir do parâmetro real correspondente. Atribuições a um parâmetro constante formal não são permitidas. Um parâmetro constante formal também não pode ser passado como um parâmetro real para outro procedimento ou função. Um parâmetro constante correspondente a um parâmetro real em um procedimento ou instrução de função deve seguir as mesmas regras que o valor real do parâmetro.

Nos casos em que um parâmetro formal não altera seu valor quando um procedimento ou função é executado, um parâmetro constante deve ser usado em vez de um parâmetro de valor. Parâmetros constantes permitem a implementação de um procedimento ou função para proteção contra atribuições acidentais a um parâmetro formal. Além disso, para parâmetros de tipo struct e string, o compilador pode gerar um código mais eficiente quando usado em vez de parâmetros de valor para parâmetros constantes.

Parâmetros variáveis

Um parâmetro variável é usado quando um valor deve ser passado de um procedimento ou função para o programa de chamada. O parâmetro real correspondente em um procedimento ou instrução de chamada de função deve ser uma referência de variável. Quando um procedimento ou função é invocado, a variável de parâmetro formal é substituída pela variável real, quaisquer alterações no valor da variável de parâmetro formal são refletidas no parâmetro real.

Dentro de um procedimento ou função, qualquer referência a um parâmetro de variável formal resulta em acesso ao próprio parâmetro real. O tipo do parâmetro real deve corresponder ao tipo do parâmetro de variável formal, mas essa restrição pode ser contornada usando um parâmetro de variável sem tipo).

Parâmetros não digitados

Quando o parâmetro formal é um parâmetro variável sem tipo, o parâmetro real correspondente pode ser qualquer referência a uma variável ou constante, independentemente de seu tipo. Um parâmetro sem tipo declarado com a palavra-chave var pode ser modificado, enquanto um parâmetro sem tipo declarado com a palavra-chave const é somente leitura.

Em um procedimento ou função, um parâmetro de variável não tipado não tem tipo, ou seja, é incompatível com variáveis ​​de todos os tipos até que receba um tipo específico por atribuição de tipo de variável.

Embora os parâmetros não tipados forneçam mais flexibilidade, existem alguns riscos associados ao uso deles. O compilador não pode verificar a validade das operações em variáveis ​​não tipadas.

Variáveis ​​de procedimento

Após definir um tipo procedural, torna-se possível descrever variáveis ​​desse tipo. Tais variáveis ​​são chamadas de variáveis ​​procedurais. Como uma variável inteira que pode receber um valor de um tipo inteiro, uma variável procedural pode receber um valor de um tipo procedural. Tal valor poderia, é claro, ser outra variável de procedimento, mas também poderia ser um identificador de procedimento ou função. Nesse contexto, a declaração de um procedimento ou função pode ser vista como uma descrição de um tipo especial de constante cujo valor é o procedimento ou função.

Como em qualquer outra atribuição, os valores da variável do lado esquerdo e do lado direito devem ser compatíveis com a atribuição. Os tipos de procedimento, para serem compatíveis com atribuição, devem ter o mesmo número de parâmetros, e os parâmetros nas posições correspondentes devem ser do mesmo tipo. Os nomes de parâmetros em uma declaração de tipo procedural não têm efeito.

Além disso, para garantir a compatibilidade de atribuição, um procedimento ou função, se for atribuído a uma variável de procedimento, deve atender aos seguintes requisitos:

1) não deve ser um procedimento ou função padrão;

2) tal procedimento ou função não pode ser aninhado;

3) tal procedimento não deve ser um procedimento em linha;

4) não deve ser um procedimento de interrupção.

Procedimentos e funções padrão são os procedimentos e funções descritos no módulo Sistema, como Writeln, Readln, Chr, Ord. Procedimentos e funções aninhados com variáveis ​​procedurais não podem ser usados. Um procedimento ou função é considerado aninhado quando declarado dentro de outro procedimento ou função.

O uso de tipos procedurais não se limita apenas a variáveis ​​procedurais. Como qualquer outro tipo, um tipo procedural pode participar da declaração de um tipo estrutural.

Quando uma variável de procedimento recebe o valor de um procedimento, o que acontece na camada física é que o endereço do procedimento é armazenado na variável. Na verdade, uma variável de procedimento é muito semelhante a uma variável de ponteiro, só que em vez de se referir a dados, ela aponta para um procedimento ou função. Como um ponteiro, uma variável procedural ocupa 4 bytes (duas palavras) que contém um endereço de memória. A primeira palavra armazena o deslocamento, a segunda palavra armazena o segmento.

Parâmetros de tipo de procedimento

Como os tipos procedurais podem ser usados ​​em qualquer contexto, é possível descrever procedimentos ou funções que recebem procedimentos e funções como parâmetros. Os parâmetros de tipo de procedimento são especialmente úteis quando você precisa executar ações comuns em vários procedimentos ou funções.

Se um procedimento ou função deve ser passado como parâmetro, ele deve seguir as mesmas regras de compatibilidade de tipo que a atribuição. Ou seja, tais procedimentos ou funções devem ser compilados com a diretiva far, não podem ser funções internas, não podem ser aninhadas e não podem ser descritas com os atributos inline ou interrupt.

Autor: Tsvetkova A.V.

<< Voltar: Procedimentos e funções (O conceito de algoritmo auxiliar. Procedimentos em Pascal. Funções em Pascal. Descrições antecipatórias e conexão de sub-rotinas. Diretiva)

>> Encaminhar: Arquivos (Arquivos. Operações de arquivo. Módulos. Tipos de módulos)

Recomendamos artigos interessantes seção Notas de aula, folhas de dicas:

Culturologia. Berço

Pedagogia. Berço

Finanças e crédito. Berço

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

Ônibus elétrico a hidrogênio 06.12.2001

O uso do hidrogênio como combustível para veículos não é novo. Mas o ônibus, projetado pela empresa internacional Daimler-Chrysler, é diferente porque o gás combustível não explode nos cilindros de seu motor, mas oxida silenciosamente na bateria de combustível, dando eletricidade, e já gira os motores elétricos escondidos em os cubos das rodas. O fornecimento de hidrogênio (os cilindros são instalados no teto) é suficiente para 300 quilômetros a uma velocidade de até 80 quilômetros por hora.

A novidade já está sendo testada em Hamburgo, Stuttgart, Londres, Amsterdã, Reykjavik, Estocolmo e várias outras cidades europeias.

Outras notícias interessantes:

▪ Bateria de íon de lítio transparente e elástica

▪ Controlador Buck MAX17558 Dual Channel 60V DC-DC

▪ A saúde humana depende das árvores

▪ Reparação de bico usando um computador

▪ Janelas molhadas

Feed de notícias de ciência e tecnologia, nova eletrônica

 

Materiais interessantes da Biblioteca Técnica Gratuita:

▪ seção do site do Eletricista. PUE. Seleção de artigos

▪ artigo Operador dos dez mandamentos. videoarte

▪ artigo Quão difundida era a tortura da donzela de ferro na Idade Média? Resposta detalhada

▪ artigo Auxiliar de laboratório de análises químicas em empresas fornecedoras de derivados de petróleo. Instrução padrão sobre proteção do trabalho

▪ artigo Campainha para concentradores. Enciclopédia de rádio eletrônica e engenharia elétrica

▪ artigo Prefixo do transceptor para o receptor R-250. 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