Estrutura de Dados
Protótipo: int soma(int a, int b)
int soma(int a, int b)
{
if (b == a + 1) // se b for igual a+1 { return a + b; // realiza a soma de a e b } else { return a + soma(a + 1, b); // caso contrario chama novamente a função }
}
1. Escreva uma função recursiva que calcule os juros compostos de um valor. Para isso o programa deverá ler um valor inicial, o número de meses e a taxa de juros ao mês, e passar estes valores à função como parâmetros.
Protótipo: double juroscompostos(double valor, double taxa, int meses) - formato para double é %lf
Exemplo: $ meses taxa
1000 3 10%
1100 2 10%
1210 1 10%
1331 0 10%
double juroscompostos(double valor, double taxa, int meses)
{
if (meses == 0) // se o numero de meses for igual a 0 { return valor; //retorna o valor } else { valor = valor *(1+(taxa/100)); // caso contrario recalcula o valor return juroscompostos(principal, taxa ,meses-1); //chamada a função recursiva }
}
2. Escreva uma função que faça a procura sequencial de um valor passado por parâmetro num vetor também passado por parâmetro. Obs. Retornar o índice se encontrado, ou -1 se não encontado.
Protótipo: int buscavetor (int *vet, int tam, int valor) int buscavetor (int *vet, int tam, int valor){ // int i=0; if (tam==0)//compara o tam do vetor, se for igual a 0, não realiza a chamada recursiva return -1; //o valor buscado não foi encontrado if (vet[tam]== valor) // comparação com o conteúdo do vetor return tam;// se encontrar, retorna o TAM ou seja, a posição do valor no vetor else return buscavetor(vet, tam-1, valor); // chamada recursiva da função
}
3. Escreva uma função que faça a procura sequencial de