Nie kompiluje się program sprawdzajacy, czy podana liczba jest pierwsza

0

Witam. Mam problem ze skopmilowanie programu, który sprawdza, czy podana liczba jest liczbą pierwszą.

 #include<iostream>
#include<cstdlib>
using namespace std;

bool pierwsza(int n)  
{
  for(int i=2;i*i<=n;i++)
    if(n%i==0)
      return false; 
  return true;
} 
int main()
{
  int n;

  printf("Podaj liczbe:  ");
  scanf("%i", &n);

  if(n<2);

  if(pierwsza(n)) 
    printf("Liczba jest pierwsza! ");
  else
    printf("Liczba nie jest pierwsza! ");

  system("pause");
  return 0;
} 

Gdy wciskam "kompiluj i uruchom" nie ma żadnych błędów, ale nie wyskakuje okienko cmd, a w raprocie pojawia sie takie coś.

<image>11.PNG</image>

Nie wiem co zrobić, pomocy.

0

Masz otwarty ten program / kompilator nie może nadpisać tej binarki. Skasuj ją ręcznie.

0

for(int i=2;i*i<=n;i++)
Dla każdego i tutaj liczysz i*i. Lepiej będzie raz policzyć sqrt(n) i z tym porównywać i.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0