Ler um numero e dizer se ele é primo

preciso criar um programa que leia um número e diga se este número é primo.

isto e Facil

Mas como voce quer algo em java ai vai um em C

#include <stdio.h>

int main(void){

int a,b,p,cont,test;

printf("Introduz o intervalo:");
if((scanf("%d %d",&a,&b))==0){
printf("ERRO\n");return 0;}
        if(a>b)
        {
        p=a;a=b;b=p;
        }
printf("Intervalo:%d a %d\n",a,b);
puts("LISTA DE PRIMOS:");
for(;a<=b;a++)
{
        for(test=1,cont=0; test<=(a/2) && cont<2 ;test++)
        {
        if(a%test==0)
        cont=cont+1;
        }
if(cont<2){
if(a>1){printf("%d ",a);}}
}
puts("\n");
return 0;
}

E claro que existem ns formas, mas um dos procedimentos mais simples, ainda que trabalhoso, é o seguinte:

Vá testando a divisibilidade do número por cada um dos números primos, iniciando em 2, até que a divisão tenha resto zero ou que o quociente seja menor ou igual ao número primo que se está testando como divisor.

Vamos testar se o número 17 é primo ou não:

17 : 2 = 8, resta 1;
17 : 3 = 5, restam 2;
17 : 5 = 3, restam 2.
Neste ponto já podemos ter a certeza de que o número 17 é primo, pois nenhum dos divisores primos testados produziu resto 0 e o quociente da divisão pelo número primo 5 é igual a 3 que é menor que o divisor 5.

Antes de tudo veja a definição de numeros primos,

Voce pode iniciar 4 variaveis:

int elemesmo = 0; int contador = 0; int numero; int resto;

e verificar se o resto for igual a zero entao soma 1 no contador,
faça uma validação , se o contador for menor que três então é numero primo, senão não.

mais ou menos por ai.

[code]#include <stdio.h>

int main(){

int n = 0;
int c = 0;

scanf("%d", &n);

if(n < 0){
    n = -n;
}

if(n == 0 || n == 1){
    printf("nao");
}else{
    for ( c = 2 ; c <= n - 1 ; c++ ){

        if ( n%c == 0 ){
            printf("nao");
            break;
        }
    }
        if ( c == n )
            printf("sim");

        return 0;
}

}[/code]

Acho que isso resolve! Em C!