Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Prévia do material em texto

<p>Em muitas outras linguagens de programação, uma função pode chamar a si própria. Uma função assim é chamada função recursiva. Todo cuidado é pouco ao se fazer funções recursivas. A primeira coisa a se providenciar é um critério de parada. Este vai determinar quando a função deverá parar de chamar a si mesma. Isto impede que a função se chame infinitas vezes. Uma função que calcule o fatorial de um número inteiro in é um bom exemplo de uma função recursiva, veja esse exemplo na linguagem C: #include int fat (int n) { if (n) return n*fat(n-1) else return 1; } int main() { int n; printf("\n\nDigite um valor para n: "); scanf("%d", &n) ; printf fatorial de %d e' %d", n, fat(n)); return 0; } Note que, enquanto n não for igual a 0, a função fat chama a si mesma, cada vez com um valor menor. n=0 é critério de parada para esta função. Há certos algoritmos que são mais eficientes quando feitos de maneira recursiva, mas a recursividade é algo a ser evitado sempre que possível, pois, se usada incorretamente, tende a consumir muita memória e ser lenta. Lembre-se que memória é consumida cada vez que o computador faz uma chamada a uma função. Com funções recursivas a memória do computador pode se esgotar rapidamente. Exercício 1:</p><p>O que vem a ser uma função recursiva? A) Uma função disponibiliza recursos para as demais B) Uma função que entra em loop a fim de possibilitar algum cálculo C) Uma função que faz uso de outras funções D) Uma função que não faz sentido algum por não apresentar o cálculo por completo E) Uma função que faz uso dela mesma até que se obtenha o caso base Exercício 2: (ENADE - 2005) Na famoso jogo da Torre de Hanoi, é dada uma torre com discos de raios diferentes, empilhados por tamanho de crescente em um dos três pinos dados. O objetivo do jogo é transportar-se toda a torre para um dos outros pinos, de acordo com as seguintes regras: apenas um disco pode ser deslocado por vez, em todo o instante, todos os discos precisam estar em um dos três pinos, em nenhum momento, um disco pode ser colocado sobre um disco de raio menor que o dele, um dos três pinos pode ser usado como local temporário.</p><p>Imaginando que se tenha uma situação em que a torre inicial tenha um conjunto de 4 (quatro) discos, qual o número de movimentações de discos que deverão ser realizadas para se atingis o objetivo do jogo? A) 12 B) 13 C) 14 D) 15 E) 16 Exercício 3: O que vem a ser uma função recursiva? A) Uma função disponibiliza recursos para as demais</p><p>B) Uma função que entra em loop a fim de possibilitar algum cálculo C) Uma função que faz uso de outras funções D) Uma função que não faz sentido algum por não apresentar o cálculo por completo E) Uma função que faz uso dela mesma até que se obtenha o caso base Exercício 4: Dado o seguinte algortimo: Inteiro Calculo (Inteiro A) Se A for igual a um Então Retonra um Senão Retorna A multiplica Calculo( A menos um)) Fim-se Esta função é? A) Uma função recursiva que retorna fatorial de A B) Uma função não recursiva que retorna A elevado ao quadrado C)</p><p>Uma função recursiva qie retorna A elevado a A D) Uma função não recursiva que retorna A elevado a A E) Uma função não recursiva que retorna fatorial de A Exercício 5: O que vem a ser uma função recursiva? A) Uma função que faz uso dela mesma até que se obtenha o caso base B) Uma função que entra em loop a fim de possibilitar algum cálculo C) Uma função que faz uso de outras funções D) Uma função que entra em loop a fim de possibilitar algum cálculo E) Uma função que faz uso de outras funções</p>

Mais conteúdos dessa disciplina