Kezdőoldal » Tudományok » Természettudományok » Hogyan lehet egy elég pontos...

Hogyan lehet egy elég pontos tizedes törtet felírni két-nem túl nagy- egész szám hányadosaként? Pl. : A/B = 0,33277215908794856. A, B "kicsi" egész számok.

Figyelt kérdés

Hogyan lehet ezt hatékonyan megkeresni?

Beszorzom 2,3,4,5,... és figyelem, hogy mikor lesz

xxx.00000000... vagy xxx.99999999... ?

Ennél biztosan van jobb módszer, főleg ha "B" 6-8 számjegyű!



2013. jún. 16. 18:01
1 2
 11/16 anonim ***** válasza:

Ja, hogy max. 7-8 jegyű. Hát sok szerencsét hozzá. 20 tizedesjegyet hasraütésszerűen felírva 10^20 féle sorrendet kaphatsz, amiből te egy mondjuk 8 jegyű nevezős törttel és egy legfeljebb ugyanilyen hosszúságú számláló változtatgatásával lefedsz nagyságrendileg 10^8-10^9 darabot, vagyis az arány kb. 10^(-12). Ennyi az esélye, hogy a feladatod megoldható.


És azt honnan veszed, hogy a törted racionális?

2013. jún. 18. 16:30
Hasznos számodra ez a válasz?
 12/16 anonim ***** válasza:
Persze ha valami miatt optimista vagy, és ennél kisebb számokat is el tudsz képzelni, akkor nem csak 8 jegy hosszú számokkal kell számolni, hanem odáig bezárólag mindegyikkel, vagyis ez kb. (10^8)^2/2 lehetőség. Ebből kiszemezgetni azt az egyet, ami jó, elég nehéz, és még mindig csak kb. 10^(-4) esélye annak hogy egyáltalán van megoldás.
2013. jún. 18. 16:36
Hasznos számodra ez a válasz?
 13/16 A kérdező kommentje:

A feladatom MINDIG megoldható, mert TUDOM, hogy olyan számaim vannak, hogy N=A/B ahol A,B<10^8 , de sajnos tizedestört formában kaptam őket, 20 jegyre kerekítve.

És meg is tudom oldani, - ld. nyitó kérdés - csak nagyon lassan. B osztó megtalálásához B-1 szorzásra, és vizsgálatra (egész számhoz nagyon közeli?) van szükségem.

Jobb módszert kesesek. Hasonlat: próbaosztó módszerem van, de kvadratikus szitát szeretnék!

2013. jún. 18. 17:08
 14/16 A kérdező kommentje:

Példák GYORS megoldásra: nem lesz belőle algoritmus, program :-(


N=0,33277215908794856163 picit < 1/3-nál

1-3N = 0,00168352273615431511 reciproka:593,99257...

...-1/594 = 0,0000000210526526316 recip:~47499952,5

Ezért: B'= 594 * 2 * 47499952,5 = 56429943570

A'= N * B'= 18778314159

lnko(A',B')=29403 ezzel egyszerűsítve:638653/1919190

... és valóban 20 tiz.jegyre


N=0,90064236838430386817

N-0,9=0,00064236838430386817 rec:1556,739...

...-1/1557=0,00000010762643617389 rec:~9291397,5

B'= 10 * 1557 * 2 * 9291397,5 = 289334118150

A'= 260586565425 ,lnko(A',B')=20202075 ezzel egyszerűsítve:

12899 / 14322


N=0,14863266814486326681 kb.:1/7

7N-1=0,04042867701404286767 hasonlít 4/99-re (,040404...)

...-4/99=0,000024636610002463 recip:~40590

B'= 99 * 40590 = 4018410

A' = 597267 ,lnko(A',B')=297 ezzel egyszerűsítve:

2011/13530


Logikus és szerencsés választások, a milliónyi variációból.

Látszik..., hasonlít... - ezekkel kezdj valamit! :-)

2013. jún. 18. 23:39
 15/16 Tom Benko ***** válasza:
Igen, mindig megoldható, de a megoldás rosszul definiált lesz, pont a kerekítés miatt.
2013. jún. 19. 07:37
Hasznos számodra ez a válasz?
 16/16 anonim ***** válasza:

Én közelíttetéssel keresném. (20 jegy pontossággal számolunk)

Pl.: 0.33277215908794856

1/3 = 0.33333333333333333333 <-- Ez nagyobb, kisebb számláló kell a nevezőhöz képest arányában

1/3 = 2/6 --> 2/5 = 0.4 <-- ez meg már túl sok

15 / 50 = 0.3 <-- kevés

15 / 46 = 0.32608695652173913043 <-- kevés

64 / 190 = 0.33684210526315789474 <-- sok

127 / 380 = 0.33421052631578947368 <-- sok

253 / 760 = 0.33289473684210526316 <-- sok, (de legalább 3 jegyre megegyezik)

505 / 1520 = 0.33223684210526315789 <-- kevés

505 / 1518 = 0.33267457180500658762 <-- kevés

505 / 1517 = 0.33289386947923533289 <-- sok

1010 / 3035 = 0.33278418451400329489 <---sok , (de legalább 4 jegyre megegyezik)

... stb

Valahogy így keresném, menet közben nem baj ha nem egyszerűsített alakba van a tört. Pl. Ha sok akkor bővítem a törtet és a számlálót csökkentem vagy a nevezőt növelem, az hogy mikor melyiket érdemes nem tudom csak hasra ütés szerűen csináltam, több módszert is kidolgoznék és ezeket versenyeztetném hogy melyik a gyorsabb, a következtetések levonása után finomítani ... Kapásból az egyik a számláló és a nevező növelését és csökkentését is megcsinálnám értelem szerűen és azt venném amelyik jobban közelíti a tizedestört értékét.

Úgy kell csinálni hogy egy bizonyos iterációtól kezdve ha n tizedes jegyig egyezik akkor ezután is minden becslés legalább n tizedesig egyezzen.

2014. jan. 17. 12:56
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!