"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso determinar se um número inteiro é primo em C?

Como posso determinar se um número inteiro é primo em C?

Publicado em 2025-01-19
Navegar:151

How Can I Determine if an Integer is Prime in C?

Determinando Primalidade em C

Sua solicitação para determinar se um determinado número inteiro é primo em C traz à tona um desafio de programação intrigante. Vamos detalhar as etapas para conseguir isso:

  1. Inicializar um loop: Itere através de números começando de 2 até um a menos que o número inteiro fornecido.
  2. Verifique a divisibilidade: Para cada número no loop, calcule o restante ao dividir o número inteiro por esse número. Se o resto for zero e o número não for o inteiro em si, ele não é primo.
  3. Repita a etapa 2: Continue iterando pelos números até chegar à raiz quadrada do inteiro.
  4. Retorna o resultado: Se nenhum número no loop resultou em divisores, o número inteiro é primo. Caso contrário, não é primo.

Em C#, seu código implementa este algoritmo da seguinte forma:

static bool IsPrime(int number)
{
    for (int i = 2; i 

Adaptando para C:

Para traduzir este código para C, precisamos fazer algumas pequenas alterações:

  1. C não tem um tipo bool, então usamos um número inteiro, retornando 1 para primo e 0 para não primo.
  2. C99 introduziu o cabeçalho stdbool.h, que define bool, mas se o seu ambiente não suportar C99, você pode usar um número inteiro conforme mencionado acima.

O seguinte código C modificado executa a mesma tarefa:

int IsPrime(unsigned int number)
{
    if (number 

Este código verifica a divisibilidade até a raiz quadrada do número inteiro para otimizar o desempenho e lida com casos não primos, como zero e um.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3