Baixe o app para aproveitar ainda mais
Prévia do material em texto
/* 7)Faça duas funções recursivas: Euler e Fatorial. A função recursiva Fatorial irá calcular o fatorial de um número positivo recursivamente. A função Euler irá utilizar a função Fatorial para calcular o valor do número de Euler recursivamente através da aproximação do somatório abaixo. A aproximação deverá parar quando o i-ésimo termo 1/i! for menor que 10-8 . Euler = */ #include <stdio.h> #include <stdlib.h> int fatorial (int n){//Função recursiva que calcula o fatorial. Ela decrementa o valor de n até chegar em 1 e depois volta multiplicando os números. if(n>1){ return n*fatorial(n-1); }else{//o número zero também entra aqui. return 1; } } double euler (int n){ if(1.0/fatorial(n)<10e-8){//Critério de parada da recursividade. Tem que colocar 1.0 para converter o número em double. return 1.0/fatorial(n); }else{ return 1.0/fatorial(n)+euler(n+1);//Essa parte é responsável pelo somatório da fução. } } int main() { printf("O resultado da funcao de Euler \202: %lf \n",euler(0)); return 0; }
Compartilhar