Zgadywanka


Zgadnij, czy liczba 2003 to liczba pierwsza, czy złożona. Naciśnij odpowiedni przycisk i jeśli zmieni on kolor na zielony, to oznacza, że odpowiedziałeś dobrze i otrzymujesz 1 punkt; jeśli będzie to kolor czerwony - odpowiedź jest zła i nie otrzymujesz punktu. Liczba punktów przed nawiasem oznacza, ile dobrych odpowiedzi udzieliłeś, liczba punktów w nawiasie określa, ile zrobiłeś przykładów. Kolejne przykłady wywołuj przyciskiem "Dalej".

Życzymy powodzenia w zgadywaniu!


W tej zgadywance liczby są mniejsze od 2003 i są podawane losowo. Każda ma taką samą szansę pojawienia się w zgadywance. Ponieważ w skończonym przedziale liczbowym liczb złożonych jest znacznie więcej niż liczb pierwszych, więc patrząc na ostatnią cyfrę i stosując cechy podzielności przez 2, 3, 4, 5, 6, 9, 10, 11 (patrz podręcznik "Matematyka przyjemna i pożyteczna - kl. II"), łatwo uzyskasz dobry wynik. Inne cechy podzielności, np. przez 7, 13 są trudne w stosowaniu, więc czasami będziesz musiał "strzelać" - chyba, że zechcesz dłużej pomyśleć lub przeprowadzić odpowiednie obliczenia.

Zauważ, że po każdej odpowiedzi, w białym okienku, w którym podawana jest liczba, dorysowują się niebieskie kropki tworzące dwa odcinki. Górny odcinek składa się z tylu kropek, ile było liczb pierwszych w dotychczas przerobionych przykładach, dolny - ile było liczb złożonych. Kropki te stawiane są niezależnie od Twoich odpowiedzi, jeśli nawet odpowiedziałeś źle, to kropka jest stawiana w dobrym miejscu. Jeśli zagrasz większą liczbę razy, możesz na podstawie długości tych odcinków oszacować, ile jest liczb pierwszych mniejszych od 2003.  Czy wiesz jak to zrobić?

Wykonując w "Zgadywance" 250 przykładów, otrzymaliśmy długość górnego odcinka 1 cm, zaś dolnego 6,5 cm. Iloraz tych długości 1d6-5.gif (923 bytes) oznacza przybliżony stosunek ilości liczb pierwszych do ilości liczb złożonych w tym przedziale. Czy potrafisz doprowadzić szacowanie do końca?

Oznaczając liczbę liczb pierwszych przez x, otrzymujemy proporcję 1d6-5.gif (923 bytes) = xd2003-x.gif (999 bytes), a stąd x  w-przyblizeniu.gif (844 bytes)  267. Tak więc, według tego oszacowania, w przedziale do 2003 jest około 267 liczb pierwszych, co stanowi 13% wszystkich liczb z tego przedziału.

Liczba liczb pierwszych w danym przedziale jest poważnym problemem matematycznym, którym zajmowali się i nadal zajmują, najwybitniejsi matematycy. Nie znaleziono do tej pory dokładnego wzoru, który określałby tę liczbę. Jedno z przybliżeń daje wzór Lochera-Ernsta (XX w.):

nd1d3p1d4p1d5p-itd.gif (1159 bytes)

Aby obliczyć wartość tego ułamka dla n = 2003, skorzystaj z programu "Ciągi" i oblicz najpierw sumę wyrazów ciągu występującego w mianowniku.

Suma ta wynosi 6,6808643604. Zatem wartość całego ułamka wynosi  2003d6-60086436604.gif (1151 bytes) w-przyblizeniu.gif (844 bytes)300. Tak więc, według tego wzoru, w przedziale do 2003 jest około 300  liczb pierwszych, co stanowi 15% wszystkich liczb z tego przedziału.

Inne przybliżenie daje wzór de la Vallée-Poussina (1896): n-lnn.gif (973 bytes), gdzie ln oznacza logarytm naturalny, czyli logarytm o podstawie e w-przyblizeniu.gif (844 bytes) 2,718281828. Zapewne o logarytmach jeszcze się nie uczyłeś, więc podajemy, że  ln(2003) = 7,602401336, ponieważ 2,7182818287,602401336   = 2003. Zatem n-lnn.gif (973 bytes) = 2003d7-602401336.gif (1122 bytes)w-przyblizeniu.gif (844 bytes)263. Tak więc, według tego wzoru, w przedziale do 2003 jest około 263 liczb pierwszych, co stanowi 13% wszystkich liczb z tego przedziału.

Mamy więc trzy oszacowania: 267, 300 i 263. A ile naprawdę jest tych liczb pierwszych?

Oto program "Sito", który wyznacza wszystkie liczby pierwsze w przedziale [2, 2003]:

program Sito;
uses crt;
const max=2003;
var liczba,n,ilosc:longInt;
    t:array[1..max] of longInt;
begin
   clrScr; ilosc:=0;
   for liczba:=2 to round(sqrt(max)) do
     if t[liczba]=0 then
        for n:=2 to max div liczba do t[liczba*n]:=1;
   for n:=2 to max do if t[n]=0 then
       begin
         write(n:5); ilosc:=ilosc+1;
       end;
   writeLn('  Ilosc = ',ilosc); readLn;
end.

Po uruchomieniu tego programu otrzymujemy 304 liczby pierwsze:

2     3    5    7   11    13   17   19   23   29   31   37    41   43   47   53   59   61    67   71   73   79    83   89   97 
101  103  107  109  113  127  131  137  139   149  151  157  163  167  173  179  181  191   193  197  199
211  223  227  229  233  239  241  251  257   263  269  271  277  281  283  293
307  311  313  317  331  337  347  349  353   359  367  373  379  383  389  397
401  409  419  421  431  433  439  443  449   457  461  463  467  479  487  491  499
503  509  521  523  541  547  557  563  569   571  577  587  593  599
601  607  613  617  619  631  641  643  647   653  659  661  673  677  683  691
701  709  719  727  733  739  743  751  757   761  769  773  787  797
809  811  821  823  827  829  839  853  857   859  863  877  881  883  887
907  911  919  929  937  941  947  953  967   971  977  983  991  997
1009 1013 1019 1021 1031 1033 1039 1049 1051 1061 1063 1069 1087 1091 1093 1097
1103 1109 1117 1123 1129 1151 1153 1163 1171 1181 1187 1193
1201 1213 1217 1223 1229 1231 1237 1249 1259 1277 1279 1283 1289 1291 1297
1301 1303 1307 1319 1321 1327 1361 1367 1373 1381 1399
1409 1423 1427 1429 1433 1439 1447 1451 1453 1459 1471 1481 1483 1487 1489 1493 1499
1511 1523 1531 1543 1549 1553 1559 1567 1571 1579 1583 1597
1601 1607 1609 1613 1619 1621 1627 1637 1657 1663 1667 1669 1693 1697 1699
1709 1721 1723 1733 1741 1747 1753 1759 1777 1783 1787 1789
1801 1811 1823 1831 1847 1861 1867 1871 1873 1877 1879 1889
1901 1907 1913 1931 1933 1949 1951 1973 1979 1987 1993 1997 1999
2003.

Najlepsze oszacowanie dla n = 2003 daje więc wzór nd1d3p1d4p1d5p-itd.gif (1159 bytes). Błąd procentowy wynosi: 304m300-304.gif (1040 bytes).100% w-przyblizeniu.gif (844 bytes) 1,3%.

Spróbuj wyznaczyć liczbę liczb pierwszych w przedziale [2, 1000000]?


Ze wzoru
nd1d3p1d4p1d5p-itd.gif (1159 bytes) otrzymujemy 94427, zaś ze wzoru n-lnn.gif (973 bytes) dostajemy 72382. W rzeczywistości jest ich 78498. Lepsze oszacowanie, w tym przypadku, daje więc wzór n-lnn.gif (973 bytes). Dla coraz większych n, wzór ten daje coraz lepsze oszacowania. Dla n = 2003 błąd procentowy wynosi: 304m263-304.gif (1043 bytes).100% w-przyblizeniu.gif (844 bytes) 13%, zaś dla n = 1000000 błąd ten wynosi:  78498m72382-78498.gif (1142 bytes).100% w-przyblizeniu.gif (844 bytes) 8%.