SAVE_P7K Posted December 2, 2009 at 03:42 PM Report Share #298389 Posted December 2, 2009 at 03:42 PM printf("*********************************\n"); printf(" 1 soma dos pares *\n"); printf(" 2 soma dos impares *\n"); printf(" 3 numeros primos *\n"); printf(" 4 numeros pares decrescentes *\n"); printf(" 5 numeros impares crescentes *\n"); printf(" 0 Sair *\n"); printf("*********************************\n"); boas pessoal; tenho um programa para fazer para dar resposta a este menu.... a parte do numero primos nao consigo pola a rolar bem preciso que o utilizador insira um numero; e que o programa responda se esse numero é primo; e diga todos os numero primos de 0 ate X... sendo X=ao numero do utilizador alguem me pode ajudar? comps Link to comment Share on other sites More sharing options...
Baderous Posted December 2, 2009 at 03:49 PM Report Share #298390 Posted December 2, 2009 at 03:49 PM Para verificar se um número N é primo basta verificar se não possui nenhum divisor no intervalo [2,sqrt(N)]. PS: sqrt = raiz quadrada. Para calcular os nºs primos até N podes usar o Crivo de Erastótenes ou o Crivo de Atkin. Link to comment Share on other sites More sharing options...
SAVE_P7K Posted December 2, 2009 at 04:35 PM Author Report Share #298402 Posted December 2, 2009 at 04:35 PM Crivo de Atkin como fasso isso? Link to comment Share on other sites More sharing options...
Baderous Posted December 2, 2009 at 04:40 PM Report Share #298405 Posted December 2, 2009 at 04:40 PM http://www.portugal-a-programar.pt/forums/topic/0-find-topic/?do=findComment&comment=192591 http://en.wikipedia.org/wiki/Sieve_of_Atkin Link to comment Share on other sites More sharing options...
hristosax Posted December 2, 2009 at 09:12 PM Report Share #298479 Posted December 2, 2009 at 09:12 PM Devias procurar no fórum e na internet antes de perguntares estas coisas. Cumps! Link to comment Share on other sites More sharing options...
Dany7 Posted December 11, 2009 at 10:57 AM Report Share #299789 Posted December 11, 2009 at 10:57 AM Boas bem vendo pelo teu nenu isso deveria ficar nesse modo #include <iostream> main(){ int op,num,n,c; printf("************************\n"); printf(" 1 numeros primos *\n"); printf(" 0 Sair *\n"); printf("************************\n"); scanf("%d",&op); printf("insira o numero maximo: \n"); scanf("%d",&num); switch (op){ case 1: for (n=1;n<=num;n++){ for (c=2;c<=n-1;c++) if (n%c == 0) break; if (c==n){ printf(" %d ",n); } } system("pause"); break; } } bem espero ter ajudado Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now