Olá.
Estou tentando calcular o maior número primo que caiba em uma
variável int. A minha ideia foi começar pelo maior int, e ir checando em
ordem decrescente até encontrar o primeiro número primo. Quando tento
executar o programa recebo a mensagem: “maiorprimo.exe parou de
funcionar. O Windows está verificando uma solução para o problema.”
Segue o código:
#include <stdio.h>
#include <limits.h>
int main(){
int primo=0;
int num=INT_MAX;
for(num; num>0; num--){
primo=ePrimo(num);
if(primo==1){
printf("%d eh primo" ,num);
break;
}
}
}
int ePrimo(int n){
int i;
int cont;
for(i=0; i<=n; i++){
if(n%i==0){
cont++;
}
}
if(cont==2)
return 1;
else
return 0;
}