Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Escreva um método recursivo em C que, dados dois inteiros a e b (a <= b), retorna a multiplicação dessa faixa de números - Desafio de Programação Resolvido em CQuantidade de visualizações: 972 vezes |
|
Pergunta/Tarefa: Escreva um método recursivo em C que, dados dois inteiros a e b (a <= b), retorna a multiplicação dessa faixa de números. Por exemplo, se informarmos o número inicial 1 e o número final 5, sua saída deverá ser parecida com: O resultado é: 120 Veja a resolução comentada deste exercício usando C:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
// função recursiva que multiplica os números entre uma faixa
int multiplicar(int de, int ate){
// caso base?
if(de == ate){
return de;
}
// efetua mais uma chamada ao método recursivo
return de * multiplicar(de + 1, ate);
}
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
int res;
setlocale(LC_ALL,""); // para acentos do português
// vamos obter a multiplicação dos número 1 até 5 (incluindo)
res = multiplicar(1, 5);
// mostra o resultado
printf("O resultado é: %d", res);
printf("\n\n");
system("PAUSE");
return 0;
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
|
Como escrever uma função is_numeric() em C que verifica se uma string contém apenas dígitos de 0 a 9 |
Dicas e truques de outras linguagens |
|
JavaScript - Como retornar o código ASCII ou Unicode associado a um caractere em JavaScript usando a função charCodeAt() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





