Lasse Liehu
2004-11-30 14:00:34 UTC
Niin. Tarkotus olis tehä alkulukuja etsivä ohjelma (harrastus). Kaikki menee
muuten hyvin, mutta nopeus on liian hidas. Ohjelmasta pitäisi saada
nopeampi.
Siis minun käsitykseni mukaan ohjelman pitäisi pystyä etsimään alkulukuja
mahdollisimman pienillä laskutoimitusmäärillä. Osuinko oikeaan? No,
kuitekin. Onko kenelläkään ideoita? Kaikki ideat ovat tervetulleita.
Tiedän tällä hetkellä jo muutamia nopeuttavia asioita:
Testaamalla tutkittavaa arvoa vain luku/2 pienempiä (tai yhtä
suuria) olevia alkulukuja. Samalla voidaan nopeutta saada paremmaksi
testaamalla vain parittomat luvut, koska kaikki parilliset (paitsi 2) eivät
ole koskaan alkulukuja.
Myös katsomalla tutkittavan luvun jakojäännöstä voidaan päätellä tietojeni
mukaan jotain.
Onko siis lisäideoita?
Ohjelmointikieli on C++.
Terveisin,
Lasse Liehu
***@kolumbus.fi
PS: En ole erityisesti koodin optimoimisen kannalla, vaan tekniikan
parantamisen kannalla.
muuten hyvin, mutta nopeus on liian hidas. Ohjelmasta pitäisi saada
nopeampi.
Siis minun käsitykseni mukaan ohjelman pitäisi pystyä etsimään alkulukuja
mahdollisimman pienillä laskutoimitusmäärillä. Osuinko oikeaan? No,
kuitekin. Onko kenelläkään ideoita? Kaikki ideat ovat tervetulleita.
Tiedän tällä hetkellä jo muutamia nopeuttavia asioita:
Testaamalla tutkittavaa arvoa vain luku/2 pienempiä (tai yhtä
suuria) olevia alkulukuja. Samalla voidaan nopeutta saada paremmaksi
testaamalla vain parittomat luvut, koska kaikki parilliset (paitsi 2) eivät
ole koskaan alkulukuja.
Myös katsomalla tutkittavan luvun jakojäännöstä voidaan päätellä tietojeni
mukaan jotain.
Onko siis lisäideoita?
Ohjelmointikieli on C++.
Terveisin,
Lasse Liehu
***@kolumbus.fi
PS: En ole erityisesti koodin optimoimisen kannalla, vaan tekniikan
parantamisen kannalla.