Liczby Pierwsza

Szymon Swiercz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Cześć, zaczynam przygodę z C++ i napisałem taki o to kod liczący liczby pierwsze ( wiem że da się na pewno prościej to zrobić) ale chciałbym się spytać czy wszystko tutaj jest w porządku :
#include <iostream>

using namespace std;
int a;
int tablica[1000000];
int main()
{
cout<<"Podaj liczba A: ";
cin>>a;
for(int i=2;i<a;i++)
{
tablica[i-2] = a%i;

}
for(int i=0;i<a;i++)
{
    if(tablica[i]!=0 &&tablica[i+1!=0])
    {
        cout<<"Ta liczba jest liczba pierwsza";
        break;
    }
    else if(tablica[i]==0)
    {
        cout<<"Ta liczba nie jest liczba pierwsza";
        break;
    }
}


return 0;

}

Spine
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6967
0

Urochom i sprawdź czy daje wyniki jakich się spodziewasz. Jeśli tak, to jest w porządku.

vpiotr
  • Rejestracja: dni
  • Ostatnio: dni
0

Policz ile liczb jest w zakresie od 1 do 1000 wg Twojego programu. Potem porownaj z oficjalnymi danymi.

Np https://www.mathsisfun.com/numbers/prime-numbers-to-10k.html

enedil
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1028
0

Program wygląda na błędny - tablica[i+1!=0] odnosić się będzie zawsze (załóżmy że a < 1000000) do komórki 1, tzn do tablica[1].

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.