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 C

Quantidade de visualizações: 556 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
Resposta/Solução:

Veja a resolução comentada deste exercício usando C:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#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;
}


Link para compartilhar na Internet ou com seus amigos:

C ::: Dicas & Truques ::: Matemática e Estatística

Como arredondar um valor de ponto-flutuante para cima usando a função ceil() da linguagem C

Quantidade de visualizações: 14643 vezes
A função ceil() da linguagem C é usada quando precisamos arredondar um valor de ponto-flutuante (com casas decimais) para cima. Esta função retorna o menor valor integral maior que o valor fornecido a ela. Note que, mesmo o retorno sendo um inteiro, ele virá encapsulado em um double.

Para entender o funcionamento desta função, vamos considerar o valor 4.5. Ao aplicarmos a função ceil() a este valor, o retorno será 5.0. Isso pode ser comprovado no trecho de código abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  printf("O valor 4.5 arredondado para cima e %f", 
    ceil(4.5));
  
  printf("\n\n");
  system("pause");
  return 0;
}

Ao executarmos este código teremos o seguinte resultado:

O valor 4.5 arredondado para cima é 5.000000.


C ::: Dicas & Truques ::: Strings e Caracteres

Como contar as ocorrências de um determinado caractere em uma string usando a função strpbrk() da linguagem C

Quantidade de visualizações: 16244 vezes
Podemos facilmente obter quantas vezes um determinado caractere aparece em uma palavra, frase ou texto. Para isso, só precisamos usar a função strpbrk() da linguagem C, que retorna um ponteiro para a primeira ocorrência do caractere que estamos pesquisando. A partir daí só precisamos utilizar um laço para atingir a funcionalidade desejada. Lembre-se de que, se o caractere não for encontrado, um ponteiro nulo NULL será retornado:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char *argv[])
{
  char texto[] = "Gosto muito de C e C++";
  char letra[] = "o";
  char *pos_atual;
  int quant = 0;
 
  pos_atual = strpbrk(texto, letra);
  while(pos_atual != NULL){
    quant++;
    pos_atual = strpbrk(pos_atual + 1, letra);
  }
 
  printf("A letra \"%s\" foi encontrada %d vezes\n", 
    letra, quant);
 
  system("pause");
  return 0;
}

Ao executar este código nós teremos o seguinte resultado:

A letra "o" foi encontrada 3 vezes
Pressione qualquer tecla para continuar...


C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como declarar e inicializar um array unidimensional em C usando a notação {}

Quantidade de visualizações: 14381 vezes
A notação {} é muito conveniente quando precisamos declarar e inicializar um vetor ou uma matriz em apenas uma linha. Veja o trecho de código abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  // declara e inicializa um array de 5 inteiros
  int valores[5] = {43, 12, 8, 4, 102};
  int i;

  // exibe os valores do array
  for(i = 0; i < 5; i++){
    printf("%d\n", valores[i]);
  }

  system("PAUSE");
  return 0;
}

Ao executar este código C nós teremos o seguinte resultado:

43
12
8
4
102


Desafios, Exercícios e Algoritmos Resolvidos de C

Veja mais Dicas e truques de C

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 66 usuários muito felizes estudando em nosso site.