Középiskolai Matematikai és Fizikai Lapok
Informatika rovattal
Kiadja a MATFUND Alapítvány
Már regisztráltál?
Új vendég vagy?

Fórum: Valaki mondja meg!

  [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]    [11]    [12]    [13]    [14]    [15]    [16]    [17]    [18]    [19]    [20]    [21]    [22]    [23]    [24]    [25]    [26]    [27]    [28]    [29]    [30]    [31]    [32]    [33]    [34]    [35]    [36]    [37]    [38]    [39]    [40]    [41]    [42]    [43]    [44]    [45]    [46]    [47]    [48]    [49]    [50]    [51]    [52]    [53]    [54]    [55]    [56]    [57]    [58]    [59]    [60]    [61]    [62]    [63]    [64]    [65]    [66]    [67]    [68]    [69]    [70]    [71]    [72]    [73]    [74]    [75]    [76]    [77]    [78]    [79]    [80]    [81]    [82]    [83]    [84]    [85]    [86]    [87]    [88]    [89]    [90]    [91]    [92]  

Szeretnél hozzászólni? Jelentkezz be.
[430] cauchy2008-04-08 15:51:53

Sajnos, empirikusan kerestem meg, és nem tudom, mi a módszer. :-( A tiédre tudnék ellenpéldát mondani, de az most lényegtelen.

Előzmény: [428] epsilon, 2008-04-08 09:10:51
[429] jonas2008-04-08 10:39:18

Igen. Hülye hiba volt.

Előzmény: [427] sakkmath, 2008-04-08 09:08:19
[428] epsilon2008-04-08 09:10:51

OK Cauchy, ez az eredmény, de Nekem csak az a<0 jön ki, valamit elveszítek :-( Ha a sejtésd bizonyítható, írhatnál egy pár támpontot! Előre is kösz, üdv: epsilon

Előzmény: [424] cauchy, 2008-04-07 21:27:29
[427] sakkmath2008-04-08 09:08:19

Feltéve, hogy x, y > 0, az azonosság helyesen: log(xy) = logx + logy.

Előzmény: [426] jonas, 2008-04-07 22:55:41
[426] jonas2008-04-07 22:55:41

Logaritmust a Taylor-sorral kell számolni, de úgy, hogy előbb leviszed a számot 1 közelébe (lehet fölötte vagy alatta) a log(xy)=logx.logy azonossággal, ahol y-nak ismered a logaritmusát. Ez számítógépnek praktikus, de ha kézzel akarsz logartimust számolni, általában a táblázat egyszerűbb.

Előzmény: [425] leni536, 2008-04-07 22:22:31
[425] leni5362008-04-07 22:22:31

A gyökvonásra való módszer nagyon tetszik, már el is sajátítottam a "digit by digit"-et. Más függvényekre van módszer a Taylor-soron kívül? Raj lenne papíron logaritmust számolni. Amúgy ha egy fügvénynek könnyebben számoljuk az inverz függvényét és inverz függvényének a deriváltját, a függvény mindenhol konvex, vagy mindenhol konkáv, akkor az alábbi sorozat határértéke tart a függvényünk értékéhez az x0 helyen:

y_{n+1}=y_n+\frac{x_0-f^{-1}(y_n)}{f^{-1}'(y_n)}

Ebből ki is jön n. gyökre a babilóniai módszer.

Előzmény: [411] Sirpi, 2008-04-04 14:19:18
[424] cauchy2008-04-07 21:27:29

a < -\frac14

Még gondolkozom az indokláson.

Előzmény: [423] epsilon, 2008-04-07 19:41:32
[423] epsilon2008-04-07 19:41:32

Helló! Megint van egy kedves feladat, látszatra jámbor:

[422] csewe2008-04-07 19:39:53

kósz az ötleteket már kerezsgélem is a különböző szitaeljárásokat

sziasztok

Előzmény: [421] Sirpi, 2008-04-07 18:38:22
[421] Sirpi2008-04-07 18:38:22

Nem megy máshogy. A kettő teljesen ekvivalens: ha mondasz k-t és l-et, én megmondom x-et és y-t, és fordítva.

Ha nagy számokat akarsz felbontani, akkor amire rákereshetsz, mert sokkal jobban működnek, minthogy \sqrt n-ig megnézünk minden prímet, hogy osztja-e n-t:

Pollard \rho-módszere és Pollard p-1-módszere, vagy a kvadratikus szita. Mondjuk egyiket se lehet 10 sorban leprogramozni, szóval így állj hozzájuk.

Előzmény: [418] csewe, 2008-04-07 14:59:55
[419] rizsesz2008-04-07 15:14:17

Vagy euklideszi szitával.

Előzmény: [418] csewe, 2008-04-07 14:59:55
[418] csewe2008-04-07 14:59:55

tulajdonképpen amint látom nekem n - et fel kel lbontanom "fejben/papiron" két szám szorzatára.

akkor viszont nem igen jutottam elöbre , mert ez nagyob számoknál már gondot okozhat. nincs más megoldás?

mert n felbontása csak találgatással megy.

Előzmény: [420] Sirpi, 2008-04-07 13:42:32
[420] Sirpi2008-04-07 13:42:32

Oké, hogy csak páratlanra kell, de pl. a 10-et vagy a 42-t írd fel ilyen szorzat alakban, nem fog menni. Ahogy írtam, a 4-gyel oszthatók mennek, a csak 2-vel, de 4-gyel nem oszthatóak pedig nem.

Páratlanra meg úgy megy, ahogy írtam: n-et felbontod k.l-re, és innen x=\frac{k+l}2, y=\frac{k-l}2.

Példa: n=91=7.13, ekkor x=\frac{13+7}2=10, y=\frac{13-7}2=3, és tényleg: 91=(10+3).(10-3)

Előzmény: [417] csewe, 2008-04-07 12:50:16
[417] csewe2008-04-07 12:50:16

ismételten bocs

amire én használnám,ott

n mindíg páratlan pozitív egész

de nem értem miért nem lehet párosra felbontani hiszen

ha behejettesítem,akkor van olyan eset is

(6 + 2) * (6 - 2) = 32

de végül is ez mindegy mert nekem kimondottan páratlan

n - re kell a megoldás

a levezetést értem "azt hiszem", de még mindíg nem tudom

számszerüsíteni.

Előzmény: [416] Sirpi, 2008-04-07 10:31:03
[416] Sirpi2008-04-07 10:31:03

Igazából az előző kérdésed után most nem vagyok egész biztos abban, hogy mire is vagy kíváncsi :-)

Ennek a feladatnak két része van, egy bazinehéz, meg egy könnyű. A bazinehéz az, hogy hogy bontsuk fel n-et két szám szorzatára (na jó, mondjuk tizensok jegytől tud ez már problémás lenni). Mivel x+y és x-y paritása azonos, ezért vagy mindkettő páros, vagy mindkettő páratlan. így n-et két azonos paritású szám szorzatára kell felbontani. Ha n páratlan, akkor nem is lehet máshogy, viszont ha n páros, akkor két páros szorzatára kell (egy 4k+2 alakú számot nem lehet így felbontani).

Ha ez megvan, vagyis n=k.l, ahol k\geql, akkor x+y=k, x-y=l, és innen triviálisan x=\frac{k+l}2, y=\frac{k-l}2.

Előzmény: [415] csewe, 2008-04-07 05:35:20
[415] csewe2008-04-07 05:35:20

bocs de azt hiszem nem jól adtam meg az értéktartományt

x és y értéktartománya

2 < x , x pozitív egész

0 <= y < x - 2 , y pozitív egész

n pozitiv egész

talán így korrektebb

[414] csewe2008-04-06 18:26:23

heló mindenkinek

ismét segítséget kérnék

(x + y) * (x - y) = n

ha ezt valaki levezetné nekem nagyon megköszönném

n értékét mindíg ismerem x vagy y értékét kellene megállapítenom x és y értéktartománya 2 < x , 0 <= y

már egy napja lógok a neten hogy találjak valami mrgoldás,sőt előkotortam a régi matekkönyveimet is de semmire sem jutottam.

köszi

[413] rizsesz2008-04-04 16:14:51

szerintem Sirpi első válasza lett volna az, ami az eredeti kérdésre a helyes válasz kellett volna, hogy legyen.

Előzmény: [412] csewe, 2008-04-04 15:13:47
[412] csewe2008-04-04 15:13:47

mindenkinek kösz a segítséget a wikipédiás oldal angol,ugyhogy ez nálam kilőve

a gyökvonásból nemsokat értettem, mert éphogy hármas voltam matekból, és már az sem most volt

mivel ez az egyenlet amire itt megoldást kértem ,csupán a program gyorsítását szolgálta volna, így arra az elhatározásra jutottam, hogy más megoldást keresek

ti jók voltatok, csak ez már nekem magas

sziasztok

Előzmény: [411] Sirpi, 2008-04-04 14:19:18
[411] Sirpi2008-04-04 14:19:18

Rákerestem a wikipédián, itt van egy csomó módszer gyökvonásra.

Előzmény: [410] Róbert Gida, 2008-04-04 13:58:23
[410] Róbert Gida2008-04-04 13:58:23

Van egyébként osztásmentes verziója is a négyzetgyök kiszámolásának (ott szorozni kell). Továbbá a legjobb programok természetesen nem teljes pontossággal számolnak, mint te például 14 jeggyel, hanem mindig kb. megduplázzák az értékes jegyek számát az ak-ban.

Előzmény: [409] Sirpi, 2008-04-04 12:42:14
[409] Sirpi2008-04-04 12:42:14

Ha már felmerült a téma, és azt állítottam, hogy a pontos jegyek száma iterációs lépésenként duplázódik, akkor kicsit pontosítanék, meg bizonyítanám is az állításomat. Tehát a rekurzió a_{k+1}= \frac{a_k+n/a_k}2

A számtani-mértani közepek közti egyenlőtlenség szerint ez mindig legalább \sqrt{n}, így tegyük fel, hogy x=\sqrt{n}+c (tehát x-nek c(\geq0) a hibája), és nézzük meg, hogy x-re alkalmazva az iterációt, mekkora lesz a következő tag, azaz \frac{x+n/x}2 hibája.

\frac{x+n/x}2 - \sqrt n = \frac{\sqrt n + c + \frac n{\sqrt n + c}}2 - \sqrt n = \frac{-\sqrt n + c + \frac n{n-c^2} \cdot (\sqrt n - c)}2=

=\frac{(\frac{n}{n-c^2}-1)\cdot (\sqrt n - c)}2=\frac{\frac{c^2}{n-c^2}\cdot (\sqrt n - c)}2=\frac{c^2}{2(\sqrt n + c)}

Ebből már pár dolog kiolvasható. Ha x nagy \sqrt n-hez viszonyítva, akkor a hiba nagyjából feleződik: x=tn, ekkor c is hasonló nagyságrendű, és \frac{c^2}{2(\sqrt n + c)} \approx \frac {t^2n^2}{2tn} = x/2

Viszont ha már c<1, akkor a következő hiba már kisebb, mint c2, vagyis valóban igaz a lépésenkénti duplázódó pontosság.

* * *

Ha gyorsítani akarunk az eljáráson, akkor annyit még érdemes megtenni, hogy a \sqrt n-re adunk egy körülbelüli becslést, hogy az algoritmusnak ne kelljen az n,n/2,n/4... lépéseken végigmennie. Ha d alapú számrendszert használunk, akkor keressük meg a legkisebb k-t, amire n\leqd2k, és ilyenkor indítsuk az algoritmust dk-ból, ezzel az első jó pár lépést megspóroljuk.

Egy példa a \sqrt 2 kiszámolására, a1=2 indulóértékkel:

2,00000000000000 --- 1,50000000000000 --- 1,41666666666667 --- 1,41421568627451 --- 1,41421356237469 --- 1,41421356237309 --- 1,41421356237309

Vagyis a 6. érték már 14 jegyre pontos.

Előzmény: [406] Sirpi, 2008-04-03 10:40:19
[408] Hajba Károly2008-04-04 00:18:51

Hallgass Sirpire, meglásd megéri!

Mivel a Sirpi javasolta rekurziós gyökvonás pontossága hatványozottan nő, így nagy számok esetén is gyors eredményt adhat. Talán nagyobb problémád lesz a nagy számok kezelésével, mint ezzel az eljárással.

Előzmény: [407] csewe, 2008-04-03 14:48:10
[407] csewe2008-04-03 14:48:10

tulajdonképpen a szummát (remélem jól fogalmazok" szeretném visszafejteni n = (1 + 2 + 3 + 4 + ...végtelen) az egyenlettel megkapom ,hogy hányadik lépésnél éri el az n -et az összedás.

ehhez tudnotok kell hogy az eredeti képletem n = x * (x + 1 ) / 2 volt ezzel a képlettel megkaptam hogy hány számot kell összeadnom ,hony n -hez jussak.

reményeim szerint egy prímszitához tudom majd felhasználni a képletet , amivel néhányszáz esetleg néhányezer digites számokrol mondanám meg hogy prím e

a gyökvonás hosszú időtrabló folyamat, és nekem gyors algoritmus kellene

de sajnos nem ez az egyetlen probléma , hanem a nagy számok programozása is úgyhogy egyenlőre csak akkora számokra írom meg a rutint amekkorát a programnyelv alapból kezelni tud ,és ha sikeres akkor rátérek a nagyobb feladatra

ez nekem csak kedvtelés , de nagyon megköszönném, ha segitenétek.

Előzmény: [406] Sirpi, 2008-04-03 10:40:19
[406] Sirpi2008-04-03 10:40:19

Igazából mire és milyen környezetben kell Neked erre megoldást adni? Mert amit írtam (a másodfokú egyenlet megoldóképlete szerinti megoldást), az a megoldás, és más nincs, szóval nem lehet gyökjel nélkül felírni. Programmal akarod esetleg csinálni? (Mert ott elvileg van gyökvonás.) Meg milyen nagyságrendű az n? Ha ezekre választ adsz, akkor jobban segíteni tudunk talán abban, amire szükséged van.

* * *

A gyökvonást mi magunk is implementálhatjuk, alapműveletekkel, ha épp nem akarunk beépítettet használni. Legyen mondjuk a1=1 (vagy a \sqrt{n} bármilyen közelítése, ha tudunk jobbat), majd a_{k+1}= \frac{a_k + n / a_k}2. Ez a rekurzió nagyon gyorsan tart a \sqrt{n}-hez, ak+1-nek kétszer annyi jegye pontos, mint ak-nak. Csak be kell állítani valami leállási paramétert, hogy a program ne fusson a végtelenségig (pl. \left|a_{k+1}-a_k\right| < 10^{-10}, vagy amilyen pontosság nekünk kell).

Előzmény: [405] csewe, 2008-04-03 08:42:26

  [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]    [11]    [12]    [13]    [14]    [15]    [16]    [17]    [18]    [19]    [20]    [21]    [22]    [23]    [24]    [25]    [26]    [27]    [28]    [29]    [30]    [31]    [32]    [33]    [34]    [35]    [36]    [37]    [38]    [39]    [40]    [41]    [42]    [43]    [44]    [45]    [46]    [47]    [48]    [49]    [50]    [51]    [52]    [53]    [54]    [55]    [56]    [57]    [58]    [59]    [60]    [61]    [62]    [63]    [64]    [65]    [66]    [67]    [68]    [69]    [70]    [71]    [72]    [73]    [74]    [75]    [76]    [77]    [78]    [79]    [80]    [81]    [82]    [83]    [84]    [85]    [86]    [87]    [88]    [89]    [90]    [91]    [92]