Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
StateOfConsciousness Forumaš s poteškoćama u pisanju
Pridružen/a: 22. 07. 2008. (16:08:24) Postovi: (8A)16
|
Postano: 8:19 pet, 25. 7. 2008 Naslov: O prostim brojevima u nekom nizu |
|
|
Neka je a niz koji prirodnom broju n pridružuje broj koji se dobije tako da se prvih n prirodnih brojeva napišu jedan do drugog. Tak npr. n=2 a(n)=12, za n=3 a(n)=123, ..., za n=15 a(n)=123456789101112131415, etc... Pitanje je da li je a(n) prost za barem jedan n? Ne poznam dovoljno teoriju brojeva i ne znam da li su razvijene metode primjena kojih omogućuje odgovor na ovo pitanje? Pišite vaše ideje, misli, kritike, slutnje, intuitivne uvide, osjećaje etc...vezane uz ovu slutnju. Znam da je teško ali je problem vrijedan pokušaja rješavanja. Barem meni jest. Nadam se da je i vama ostalima. Čini vam se teškim?
Neka je a niz koji prirodnom broju n pridružuje broj koji se dobije tako da se prvih n prirodnih brojeva napišu jedan do drugog. Tak npr. n=2 a(n)=12, za n=3 a(n)=123, ..., za n=15 a(n)=123456789101112131415, etc... Pitanje je da li je a(n) prost za barem jedan n? Ne poznam dovoljno teoriju brojeva i ne znam da li su razvijene metode primjena kojih omogućuje odgovor na ovo pitanje? Pišite vaše ideje, misli, kritike, slutnje, intuitivne uvide, osjećaje etc...vezane uz ovu slutnju. Znam da je teško ali je problem vrijedan pokušaja rješavanja. Barem meni jest. Nadam se da je i vama ostalima. Čini vam se teškim?
|
|
[Vrh] |
|
Luuka Forumaš(ica)
Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16
Spol:
Lokacija: Hakuna Matata
|
Postano: 12:19 pet, 25. 7. 2008 Naslov: |
|
|
Napisah mali programčić za to i rezultat je sljedeći: do n=29 nema prostog broja. Evo i slikica u attachmentu, di se vidi s čim je koji djeljiv (minimalan djelitelj). Naravno, svaki s parnim indexom je paran, a oni s neparnim su većina djeljiva s 3... možda pomogne... al zanimljivo pitanje, moram priznat ;)
[size=9][color=#999999]Added after 30 minutes:[/color][/size]
Novosti: testiro sam do n=99.
Ispada da za n=61 i n=73 dobivamo prost broj. No, to su samo kandidati za proste brojeve jer im je djeljivost testirana do 32767 (gornja granica za int). Da li netko zna dokud ide long int u c++-u?
Napisah mali programčić za to i rezultat je sljedeći: do n=29 nema prostog broja. Evo i slikica u attachmentu, di se vidi s čim je koji djeljiv (minimalan djelitelj). Naravno, svaki s parnim indexom je paran, a oni s neparnim su većina djeljiva s 3... možda pomogne... al zanimljivo pitanje, moram priznat
Added after 30 minutes:
Novosti: testiro sam do n=99.
Ispada da za n=61 i n=73 dobivamo prost broj. No, to su samo kandidati za proste brojeve jer im je djeljivost testirana do 32767 (gornja granica za int). Da li netko zna dokud ide long int u c++-u?
_________________ "Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy
Description: |
|
Filesize: |
78.32 KB |
Viewed: |
159 Time(s) |
|
|
|
[Vrh] |
|
goranm Forumaš(ica)
Pridružen/a: 12. 11. 2002. (20:09:12) Postovi: (906)16
Spol:
|
Postano: 12:40 pet, 25. 7. 2008 Naslov: |
|
|
[quote="Luuka"]
Novosti: testiro sam do n=99.
Ispada da za n=61 i n=73 dobivamo prost broj. No, to su samo kandidati za proste brojeve jer im je djeljivost testirana do 32767 (gornja granica za int). Da li netko zna dokud ide long int u c++-u?[/quote]
Nisu prosti. U mathematici se lakše to izvede:
[code:1]list = {};
For[n = 1, n <= 5000, n++,
list = Append[list, n];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]
If[PrimeQ[broj], Print[{broj, n}]]
]
[/code:1]
[code:1]
list = {};
broj = {};
For[i = 1, i <= 61, i++, list = Append[list, i];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]];
PrimeQ[broj]
False
[/code:1]
[code:1]
list = {};
broj = {};
For[i = 1, i <=73, i++, list = Append[list, i];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]];
PrimeQ[broj]
False
[/code:1]
Luuka (napisa): |
Novosti: testiro sam do n=99.
Ispada da za n=61 i n=73 dobivamo prost broj. No, to su samo kandidati za proste brojeve jer im je djeljivost testirana do 32767 (gornja granica za int). Da li netko zna dokud ide long int u c++-u? |
Nisu prosti. U mathematici se lakše to izvede:
Kod: | list = {};
For[n = 1, n <= 5000, n++,
list = Append[list, n];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]
If[PrimeQ[broj], Print[{broj, n}]]
]
|
Kod: |
list = {};
broj = {};
For[i = 1, i <= 61, i++, list = Append[list, i];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]];
PrimeQ[broj]
False
|
Kod: |
list = {};
broj = {};
For[i = 1, i <=73, i++, list = Append[list, i];
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]];
PrimeQ[broj]
False
|
_________________ The Dude Abides
Zadnja promjena: goranm; 22:58 pet, 25. 7. 2008; ukupno mijenjano 4 put/a.
|
|
[Vrh] |
|
Luuka Forumaš(ica)
Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16
Spol:
Lokacija: Hakuna Matata
|
|
[Vrh] |
|
goranm Forumaš(ica)
Pridružen/a: 12. 11. 2002. (20:09:12) Postovi: (906)16
Spol:
|
Postano: 12:51 pet, 25. 7. 2008 Naslov: |
|
|
Ovo moje u mathematici nije dobro. Npr za n=10 FromDigits ne napravi 12345678910 već 12345678900.
EDIT: Prepravio sam, sada bi trebalo biti u redu. Ovaj dio je nov:
broj = FromDigits[
StringReplace[
ToString[list], {"{" -> "", "," -> "", " " -> "", "}" -> ""}]]
If[PrimeQ[broj], Print[{broj, n}]]
Listu {1,2,3,4,5,6,7,8,9,10,11,...,n} pretvaram u string 1234567891011...n kojeg onda prozovem brojem i dalje radim operacije sa brojevima.
Ovo moje u mathematici nije dobro. Npr za n=10 FromDigits ne napravi 12345678910 već 12345678900.
EDIT: Prepravio sam, sada bi trebalo biti u redu. Ovaj dio je nov:
broj = FromDigits[
StringReplace[
ToString[list], {"{" → "", "," → "", " " → "", "}" → ""}]]
If[PrimeQ[broj], Print[{broj, n}]]
Listu {1,2,3,4,5,6,7,8,9,10,11,...,n} pretvaram u string 1234567891011...n kojeg onda prozovem brojem i dalje radim operacije sa brojevima.
_________________ The Dude Abides
Zadnja promjena: goranm; 13:22 pet, 25. 7. 2008; ukupno mijenjano 1 put.
|
|
[Vrh] |
|
Luuka Forumaš(ica)
Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16
Spol:
Lokacija: Hakuna Matata
|
|
[Vrh] |
|
StateOfConsciousness Forumaš s poteškoćama u pisanju
Pridružen/a: 22. 07. 2008. (16:08:24) Postovi: (8A)16
|
Postano: 12:59 pet, 25. 7. 2008 Naslov: |
|
|
Lijepo mi je vidjeti vas kako se trudite oko slutnje do koje sam došao. Ja,naime,nisam dobar u programiranju i ne poznam sintaksu što mi onemogućuje da algoritme za testiranje prostosti prevedem iz pseudokoda u efektivan jezik upotrebljiv u nekom od programa pa ne bih mogao na taj način povjeravati. Drago mi je da mi pomažete. Javite ako nađete prost broj. Pokušajte provjeravati prostost broja s nekim od razvijenih testova koji su brži nego test u kojem dijelite broj a(n) sa svim brojevima manjima od korijen(n),ako ih znate? Ne znam koji se algoritam koristi u Mathematici? Javite ako nađete "proste brojeve blizance"? Upravo mi sinulo još jedno pitanje a to je:
Da li u tom nizu prostih brojeva ima Mersenneovih ili Fermatovih brojeva. Provjerite za prvih nekoliko Mersenneovih i Fermatovih brojeva,ako želite, pa javite do čega ste došli.
Lijepo mi je vidjeti vas kako se trudite oko slutnje do koje sam došao. Ja,naime,nisam dobar u programiranju i ne poznam sintaksu što mi onemogućuje da algoritme za testiranje prostosti prevedem iz pseudokoda u efektivan jezik upotrebljiv u nekom od programa pa ne bih mogao na taj način povjeravati. Drago mi je da mi pomažete. Javite ako nađete prost broj. Pokušajte provjeravati prostost broja s nekim od razvijenih testova koji su brži nego test u kojem dijelite broj a(n) sa svim brojevima manjima od korijen(n),ako ih znate? Ne znam koji se algoritam koristi u Mathematici? Javite ako nađete "proste brojeve blizance"? Upravo mi sinulo još jedno pitanje a to je:
Da li u tom nizu prostih brojeva ima Mersenneovih ili Fermatovih brojeva. Provjerite za prvih nekoliko Mersenneovih i Fermatovih brojeva,ako želite, pa javite do čega ste došli.
|
|
[Vrh] |
|
Luuka Forumaš(ica)
Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16
Spol:
Lokacija: Hakuna Matata
|
|
[Vrh] |
|
duje Forumaš(ica)
Pridružen/a: 07. 11. 2002. (12:21:31) Postovi: (55C)16
Spol:
|
|
[Vrh] |
|
StateOfConsciousness Forumaš s poteškoćama u pisanju
Pridružen/a: 22. 07. 2008. (16:08:24) Postovi: (8A)16
|
Postano: 13:31 pet, 25. 7. 2008 Naslov: |
|
|
Mersenneovi brojevi su prosti brojevi oblika 2^n - 1 a Fermatovi brojevi su...prosti brojevi oblika 2^(2^n) + 1 ((i mislim da su samo 4 prosta otkrivena i to prva 4).
[size=9][color=#999999]Added after 19 minutes:[/color][/size]
Bilo bi zanimljivo pokušati utvrditi da li je red kojem je opći član 1/a(n) konvergentan ili divergentan?
No to se ne bi mogli isprogramirati pa se sjetih nečeg mnogo zanimljivijeg:
Koliko ima prostih između a(n) i a(n+1) (provjerite za,recimo,n=1,2,3,...,50).
Možda se uoči neka pravilnost? :thankyou: :thankyou:
Mersenneovi brojevi su prosti brojevi oblika 2^n - 1 a Fermatovi brojevi su...prosti brojevi oblika 2^(2^n) + 1 ((i mislim da su samo 4 prosta otkrivena i to prva 4).
Added after 19 minutes:
Bilo bi zanimljivo pokušati utvrditi da li je red kojem je opći član 1/a(n) konvergentan ili divergentan?
No to se ne bi mogli isprogramirati pa se sjetih nečeg mnogo zanimljivijeg:
Koliko ima prostih između a(n) i a(n+1) (provjerite za,recimo,n=1,2,3,...,50).
Možda se uoči neka pravilnost?
|
|
[Vrh] |
|
goranm Forumaš(ica)
Pridružen/a: 12. 11. 2002. (20:09:12) Postovi: (906)16
Spol:
|
Postano: 13:44 pet, 25. 7. 2008 Naslov: |
|
|
[quote="Luuka"]Ja imam nešto ovakvo, probaj to ukalupit u mathematicu...
[code:1]niz[0]=1;
for (int i=1;i<9;i++)
niz[i]=10*niz[i-1]+i+1;
for (int i=9;i<99;i++)
niz[i]=100*niz[i-1]+i+1;
for (int i=99;i<999;i++)
niz[i]=1000*niz[i-1]+i+1;
[/code:1]
Dakle, pazi koliko znamenkasti broj 'dodaješ'. ;)
Ja sam testiro do n=99 (prve dvije petlje) i nema prostih.[/quote]
Uspio sam izmijeniti da ih zapisuje kako treba. Neda mi se zapisivati novi uvjet svaki put kada se treba dodavati broj veći od 99 ili 999 ili 9999 itd. Možda postoji elegantnija opcija, trebao bih wolframu poslati mail sa sugestijom da doda u FromDigits opciju da se {10,11,10} zapiše kao 101110, a ne 1120
Luuka (napisa): | Ja imam nešto ovakvo, probaj to ukalupit u mathematicu...
Kod: | niz[0]=1;
for (int i=1;i<9;i++)
niz[i]=10*niz[i-1]+i+1;
for (int i=9;i<99;i++)
niz[i]=100*niz[i-1]+i+1;
for (int i=99;i<999;i++)
niz[i]=1000*niz[i-1]+i+1;
|
Dakle, pazi koliko znamenkasti broj 'dodaješ'.
Ja sam testiro do n=99 (prve dvije petlje) i nema prostih. |
Uspio sam izmijeniti da ih zapisuje kako treba. Neda mi se zapisivati novi uvjet svaki put kada se treba dodavati broj veći od 99 ili 999 ili 9999 itd. Možda postoji elegantnija opcija, trebao bih wolframu poslati mail sa sugestijom da doda u FromDigits opciju da se {10,11,10} zapiše kao 101110, a ne 1120
_________________ The Dude Abides
|
|
[Vrh] |
|
Veky (d'oh!) Gost
|
Postano: 2:15 sub, 3. 1. 2009 Naslov: |
|
|
[quote]Možda postoji elegantnija opcija, trebao bih wolframu poslati mail sa sugestijom da doda u FromDigits opciju da se {10,11,10} zapiše kao 101110, a ne 1120[/quote]
Naravno da postoji... dva su načina. Ili se baciš u stringove...
[code:1]StringJoin@@ToString/@Range@n//FromDigits[/code:1]
ili ostaneš na listi znamenaka (ali onda, naravno, 12 nije _jedna znamenka_, kao što ti uporno pokušavaš, već dvije:)
[code:1]Join@@IntegerDigits@Range@n//FromDigits[/code:1]
Mma je užasno moćan programski jezik, i gotovo da nema toga što se ne može elegantno zapisati. Samo treba znati što se hoće. :-)
Inače, kad već pišem, a ove captche su zamorne:-) : gore je navedeno pitanje o konvergenciji... odgovor je naravno totalno trivijalan: D'Alambertov kriterij, lambda=0.1 :-)
Citat: | Možda postoji elegantnija opcija, trebao bih wolframu poslati mail sa sugestijom da doda u FromDigits opciju da se {10,11,10} zapiše kao 101110, a ne 1120 |
Naravno da postoji... dva su načina. Ili se baciš u stringove...
Kod: | StringJoin@@ToString/@Range@n//FromDigits |
ili ostaneš na listi znamenaka (ali onda, naravno, 12 nije _jedna znamenka_, kao što ti uporno pokušavaš, već dvije:)
Kod: | Join@@IntegerDigits@Range@n//FromDigits |
Mma je užasno moćan programski jezik, i gotovo da nema toga što se ne može elegantno zapisati. Samo treba znati što se hoće.
Inače, kad već pišem, a ove captche su zamorne:-) : gore je navedeno pitanje o konvergenciji... odgovor je naravno totalno trivijalan: D'Alambertov kriterij, lambda=0.1
|
|
[Vrh] |
|
krcko Forumaš nagrađen za životno djelo
Pridružen/a: 07. 10. 2002. (15:57:59) Postovi: (18B3)16
|
|
[Vrh] |
|
|