Lar Finanças Pessoais Um sabor de recursão - dummies

Um sabor de recursão - dummies

Vídeo: My Ordinary Life-The Living Tombstone 2024

Vídeo: My Ordinary Life-The Living Tombstone 2024
Anonim

Recursão é uma palavra grande e assustadora que você ouça frequentemente sobre a programação, especialmente o tipo frustrante de programação que eles ensinam na universidade. Embora seja um conceito fácil de descrever, é realmente um incansável quando se trata de entender como a recursão funciona. A maioria das pessoas apenas aceita e continua. Aqui não!

Recursão é basicamente o processo de uma função que se chama. Por exemplo:

void funct (int x) {funct (x);}

Neste pedaço de código, você vê um exemplo terrível de uma função recursiva, mas serve para fins ilustrativos aqui: The funct () a função se chama. Isso é uma recursão. Agora, o que acontece neste exemplo é basicamente um ciclo infinito e, graças a um algo-ou-outro técnico chamado stack pointe r , , o computador eventualmente falha. Mas é apenas uma ilustração.

Para que a recursão funcione, a função deve ter uma condição de resgate, assim como um loop. Portanto, o valor passado para a função recursiva ou seu valor de retorno deve ser testado. Aqui está um exemplo melhor de uma função recursiva:

recusão vazia (int x) {if (x == 0) retornar; else {puts ("Boop!"); recursão (- x);}}

A função recursão () aceita o valor x . Se x for igual a zero, a função é obtida. Caso contrário, a função é chamada novamente, mas o valor x é reduzido. O operador de prefixo de decremento é usado para que o valor de x seja reduzido antes de a chamada for feita.

A função de recursão de exemplo () basicamente escuta o texto Boop! um dado número de vezes. Então, se recursão () é chamado com o valor 10, você vê esse texto exibido dez vezes.

A parte insana sobre a recursão é que a função continua a se chamar, se embalando cada vez mais, como se estivesse em uma espiral. No exemplo anterior, a condição x == 1 finalmente desenrola essa bagunça tortuosa, cada vez mais puxando para trás até que a função seja feita.

O código a seguir mostra um programa completo usando a função recursão de exemplo ().

#incluir recursão vazia (int x); int main () {recursão (10); return (0);} void recursion (int x) {if (x == 0) retornar; else {puts ("Boop!"); recursão (- x);}}

Uma demonstração comum de recursão é uma função fatorial. O fatorial é o resultado da multiplicação de um valor por cada um dos seus inteiros positivos. Por exemplo:

4! = 4 × 3 × 2 × 1

O resultado deste fatorial é 24. O computador também pode fazer esse cálculo, implementando um loop ou criando uma função recursiva.Aqui está essa função:

int fatorial (int x) {if (x == 1) return (x); else return (x * factorial (x-1));}

Tal como acontece com as outras funções recursivas, a função factorial () contém uma condição de saída: x == 1. Caso contrário, a função é chamada novamente com um valor menor que o atual x . Mas toda a ação ocorre com os valores de retorno.

Um sabor de recursão - dummies

Escolha dos editores

ASVAB Paragraph Comprehension Practice - dummies

ASVAB Paragraph Comprehension Practice - dummies

Um dos subtestes que você verá no ASVAB é o teste de compreensão de parágrafos. Esta parte do ASVAB está voltada para ver se você entende o que você lê. Exemplo de perguntas Parágrafo Tempo de compreensão: 13 minutos para 15 perguntas Instruções: A compreensão de parágrafo é o quarto subtesto no ASVAB. As perguntas são projetadas para ...

ASVAB Preparação: Números positivos e negativos - manequins

ASVAB Preparação: Números positivos e negativos - manequins

Certifique-se de que esteja familiarizado com o trabalho positivo e negativo números para o ASVAB. Os números podem ser positivos ou negativos. Um número positivo é qualquer número maior que zero. Então, 4; 3. 2; 793; 3/4; 1/2; e 430, 932, 843, 784 são todos números positivos. Números inferiores a zero são números negativos. Cada número positivo tem um negativo ...

ASVAB Dicas de compreensão de leitura - manequins

ASVAB Dicas de compreensão de leitura - manequins

As abordagens de compreensão de parágrafo no ASVAB geralmente são bastante curtas. Essas dicas podem ajudá-lo a compreender melhor as passagens de leitura ASVAB e as perguntas que as seguem: Compreenda o que a questão quer de você. Solicita o ponto principal, informações específicas ou uma conclusão baseada na informação apresentada? Releia o parágrafo ...

Escolha dos editores

A diferença entre análises analógicas e digitais - manequins

A diferença entre análises analógicas e digitais - manequins

Toda a eletrônica pode ser dividida em duas grandes categorias: analógico e digital. Um dos exemplos mais comuns da diferença entre dispositivos analógicos e digitais é um relógio. No relógio analógico, o tempo é representado por mãos que giram ao redor de um disco e apontam para uma localização no mostrador que representa ...

O papel dos átomos na eletrônica - dummies

O papel dos átomos na eletrônica - dummies

Os átomos são os blocos de construção básicos de tudo no universo, seja natural ou manmade. Eles são tão pequenos que você encontraria milhões deles em uma única partícula de poeira. A corrente elétrica, às vezes conhecida como eletricidade, é o movimento na mesma direção de partículas microscópicamente pequenas e eletricamente carregadas, chamadas elétrons. Cada átomo contém o ...

Roles de prótons e elétrons - dummies

Roles de prótons e elétrons - dummies

É Uma propriedade de certas partículas, como elétrons, prótons , e quarks (sim, quarks) que descreve como eles interagem uns com os outros. Existem dois tipos diferentes de carga elétrica, um pouco arbitrariamente chamada positiva e negativa (bem como as quatro direções cardinais são chamadas norte, sul, leste e oeste). Em geral, partículas que carregam ...

Escolha dos editores

Acesso 2007 All-In-One For Dummies Cheat Sheet - dummies

Acesso 2007 All-In-One For Dummies Cheat Sheet - dummies

Trabalhando no Access 2007 é mais fácil uma vez que você entenda executar a janela do Access 2007 e usar ferramentas para ajudar a gerenciar seus dados e responder suas perguntas.

Arrumando suas mensagens com o Lotus Notes 6 - manequins

Arrumando suas mensagens com o Lotus Notes 6 - manequins

Antes de enviar uma mensagem de e-mail no Lotus Notes 6, você pode definir Opções de entrega, Opções de segurança e Selos de humor. Use essas dicas de notas para informar o destinatário sobre o quão quente é sua mensagem ou qual é o seu humor; ou solicitar confirmação de entrega, definir o tempo de entrega e muito mais. Depois de terminar de compor o corpo ...

10 Ofícios de teclado do Office 2016 - dummies

10 Ofícios de teclado do Office 2016 - dummies

Um tema comum do Office 2016 é que todos os programas se parecem e funcionam. Depois de aprender a usar o Word, você achará que não é muito mais difícil aprender o Excel ou o PowerPoint porque as guias do Ribbon funcionam de maneiras semelhantes. Ainda melhor, os mesmos comandos de teclas funcionam de forma semelhante em todos os programas do Office 2016. Por ...