Ir ao conteúdo
  • Cadastre-se

C Imprima um número ao final que indica quantos números primos existem entre 2 e N


Posts recomendados

Leia um número N fornecido pelo usuário. Imprima um número ao final que indica quantos números primos existem entre 2 e N.


#include <stdio.h>

main() {

  int num, i, cont;

  printf("============Primo============\n\n");
  printf("Digite um numero.:");
  scanf("%d", &num);

  i = 2;

  cont = 0;

    while (i < num) {
      if (num % i == 0) {
        cont++;

      }

      i++;

    }

    if (cont > 0) {
      printf("\nO numero digitado nao e primo.");

    }

    else {
      printf("\nO numero digitado e primo.");

    }

    printf("\n\n");

}
return 0;
}

 

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

@Matheus Freitas Você já fez o teste pra verificar se é primo, agora terá que usar outro loop dentro do while, como @devair1010 havia dito (não sei porque usou while, já que precisava atribuir 2 à i, e incrementar i a cada passagem no loop, um laço de repetição for é mais adequado), de forma que sejam verificados todos os números de 2 ao número inserido.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

main ()
//** ✘ Esqueceu de especificar o tipo int no retorno da função 'int main ()'
//** Por padrão a linguagem sempre vai adota 'int' nesses casos automaticamente.

...
	cont = 0;
	while (i < num) {
		if (num % i == 0){
			cont++;
		}
		i++;
    	}
	//** ✘ O Bloco lógico acima ~verificar ocorrência de primos no intervalo [2,...,N]
	//** Para verifiacar que um valor desse intervalo é primo se faz necessário:
	//** while (i <= num){
	//** 	if (eprimo (i)) ++cont;
	//** 	++i;
	//** }
	//** E a função eprimo () é uma algoritmo de teste de primalidade.

Teste para iniciantes: Teste de primalidade via divisão por tentativa.

No final o programa imprime o valor em cont

  • Curtir 3
Link para o comentário
Compartilhar em outros sites

@Mauro Britivaldo olha eu fiz tudo certo como você fez só que está dando erro no eprimo: eprimo was not declared in this scope

#include <stdio.h>

int main() {

  int num, i, cont;

  printf("============Primo============\n\n");
  printf("Digite um numero.:");
  scanf("%d", &num);

  i = 2;

  cont = 0;

   while (i <= num){
	 	if (eprimo (i)) ++cont;
		++i;
	}

   printf("os números entre 2 e n são",cont);

    printf("\n\n");
return (0);
}

 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

@devair1010, nessa parte "if (eprimo (i))" eh pra mesmo verificar quantos números entre 2 e n (outro numero), mas eu fiz assim no C++, mas não foi e não é colocando eprimo no int.

#include<stdio.h>

int main() {
  int num, i, cont,eprimo;

  printf("============Primo============\n\n");
  printf("Digite um numero.:");
  scanf("%d", &num);
  i = 2;
  cont = 0;  
  
  while (i <= num) {
    if ("eprimo",i) {
      cont++;
    }
    i++;
  }
  
  printf("\n os números entre 2 e n eh\n",cont);
  
  return (0);
}

 

  • Curtir 1
  • Confuso 2
Link para o comentário
Compartilhar em outros sites

@Matheus Freitas    você sabe o que é uma função na linguagem c ?

uma função pode ser assim :

// colocada lá antes da função int main
int eprimo( int j ){//  isso é uma função
    int resultado = 0; // significa que não é primo
    printf("Informando Que esta Dentro Da Funcao eprimo\n");
    printf("Valor De j= %d\n",j);
    // aqui dentro você coloca comandos que vão comparar 
    // o valor de j que foi enviado lá na chamada dessa função
    // e decidir se ele é ou não primo 
    // se for primo coloca o valor 1 na vaiável resultado
    // significando que é primo
    return resultado;
}
int main(){
    // comandos
    return 32768;      
}

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@Matheus Freitas Não sei o que você pensou que era pra ser feito... O colega @devair1010 já havia o alertado logo de início:

2 horas atrás, devair1010 disse:

eprimo é uma função , que precisa ser criada

 

Fico feliz de não ter postado um programinha dessa vez. Dessa forma, você não simplesmente copia e cola o programa como estava fazendo nas postagens anteriores, e acaba aprendendo mais! Já te deram a dica para estudar funções, dê uma olhada aqui.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...