Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Uma função C que recebe um valor inteiro e informa se o mesmo é um número primo - Desafio de Programação Resolvido em CQuantidade de visualizações: 448 vezes |
Pergunta/Tarefa: Um inteiro é um número primo se ele for divisível somente por 1 e por ele mesmo. Assim, 2, 3, 5 e 7 são primos, enquanto 4, 6, 8 e 9 não são. Escreva uma função C que recebe um valor inteiro e informe se o mesmo é um número primo. Você deverá usar a seguinte assinatura para a função: int primo(int valor){ // implementação aqui } Informe um valor inteiro: 7 O numero informado é primo Veja a resolução comentada deste exercício em C: #include <stdio.h> #include <stdlib.h> // protótipo da função primo() int primo(int); int main(int argc, char *argv[]) { int numero; printf("Informe um valor inteiro: "); scanf("%d", &numero); // vamos verificar se o valor informado é um número primo if(primo(numero)){ printf("O numero informado é primo."); } else{ printf("O numero informado NÃO é primo."); } printf("\n\n"); system("PAUSE"); return 0; } // função que retorna verdadeiro se o número fornecido // como argumento for primo int primo(int valor){ int i; // se o valor fornecido for 7, a variável i do laço contará // de 2 até 7 / 2 (divisão inteira), ou seja, 3. Se o // módulo de 7 por qualquer um dos valores neste intervalo // for igual a 0, então o número não é primo for (i = 2; i <= (valor / 2); i++) { if(valor % i == 0){ return 0; // não é primo } } return 1; } |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |