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: 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 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; } |
![]() |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como arredondar um valor de ponto-flutuante para cima usando a função ceil() da linguagem CQuantidade 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 CQuantidade 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 |
![]() 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 |
![]() 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 |