Jump to content
Raquel7112

Escrever números primos na tela

Recommended Posts

Raquel7112

Olá, eu estou a começar a estudar programação e ainda estou no básico. Preciso fazer um programa muito simples que é: Imprimir todos os números primos inferiores a 100.

Eu tentei fazer isso com o seguinte programa:

#include <stdio.h>
int ePrimo(int numero) {
   int resultado=1;
   int i;
   for (i=2; i<=(numero+1)/2; i++) {
       if (numero%i==0) {
           resultado=0;
           break;
       }
   }
   return resultado;
}
int main() {
   int resultado,i;
   for (i=1; i<=100; i++) {
       if (ePrimo(i)==1) {
           printf("%i ", i);
       }
   }
   return 0;
}

Mas não consegui fazer o computador mostrar os números primos. Alguém pode me ajudar?

Edited by thoga31
Tags code + GeSHi

Share this post


Link to post
Share on other sites
thoga31

Mas o programa está correcto, devolve os primos como seria de esperar.

O que é que te aparece como output?

Nota: o 1 não é primo, o 2 sim.

Edited by thoga31

Knowledge is free!

Share this post


Link to post
Share on other sites
Raquel7112

Simplismente não aparece nada.. eu tenho outros programas q quando coloco para correr, o programa funciona perfeitamente bem. Mas esse não acontece nada

Share this post


Link to post
Share on other sites
Raquel7112

O netbeans apenas mostra uma pequena janela muito rapidamente e depois fecha..

Share this post


Link to post
Share on other sites
thoga31

Suponho que estejas no Windows. Mete um getchar no fim do código, antes do return.


Knowledge is free!

Share this post


Link to post
Share on other sites
Raquel7112

Não.. eu estou a usar no linux

Mas mesmo assim é só colocar esse getchar e dá certo?

Share this post


Link to post
Share on other sites
thoga31

Não faço ideia. Eu não uso o NetBeans, uso o gedit e o gcc, além de não ser "especialista" em C.

Testei o teu código e funcionou. Portanto, não faço ideia do que possa ser. Experimenta...


Knowledge is free!

Share this post


Link to post
Share on other sites
Raquel7112

Haa sim! agora deu certo.. nao tinha dado certo antes

obrigada

Edited by Raquel7112

Share this post


Link to post
Share on other sites
eatg75

Oi boa noite, aparentemente o codigo esta correcto (ao nao ser que eu tenha deixado escapado algo),

o problema definitivamente e do teu IDE, porque nao usas o linha comandos acompanhado de um

editor de texto decente como o Emacs ou Vim, ou se gostas de seguir modas o SublimeText 2/3.

Edited by eatg75

Victarion seized the dusky woman by the wrist and pulled her to him.

Victarion - She will do it. Go pray to your red god. Light your fire, and tell me what you see.

Moqorro's dark eyes seemed to shine.

Moqorro - I see dragons.

Share this post


Link to post
Share on other sites
polska

Mesmo estando a programar em Linux, não faz diferença visto que estás a utilizar o Netbeans, normalmente nos IDE's precisas mesmo de colocar um getchar() no final para a janelinha se manter aberta, ou utilizar outra estratégia à tua escolha... Se tivesses compilado com gcc através da linha de comandos já não terias esse problema.

Se não me está a escapar nenhum, dos IDE's que utilizei para programar C, só o CodeBlocks deixa a janela aberta mesmo não sendo utilizado um getchar() ou algo para travar isto.

Edited by polska

Corrige um sábio e ele mais sábio ficará. Corrige um ignorante e um inimigo ganharás.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.