Arduino nagy számok?
Szükségem lenne egy olyan megoldásra, amivel tényleg nagy számokat el tudnék tárolni illetve ezekkel műveleteket is lehessen végezni. A "gyári" legnagyobb változó típus ha jól láttam a float, de ebben is csak 10 számjegyű számot lehet tárolni. Az uint_64t-t nem próbáltam, de még igazából ez is kevés lenne. Tízes számrendszerben tudnom kellene dolgozni minimum 100, de inkább 150 számjegy nagyságú számokkal. Valamint ugyanennyi tizedes résszel is. Ez ha jól számoltam 665-998 bit nagyságot jelent egy számnál.
Ez valahogy megoldható?
Leszedtem hozzá egy BigNumber nevű könyvtárat ami már majdnem meg is felelt a számomra, csak egy baj volt, hogy az ebben a formában eltárolt változókkal korlátoltan lehetett műveleteket végezni. Például hatványozni csak egész számokkal lehetett, vagyis a 123^234 elvégezhető volt, de a 123^234,1 már nem.
Mivel elég összetett műveletek épülnének rájuk, ezért lenne jó, ha egy változóban lehetne ekkora szám és nem kellene szétdarabolni. De mivel az alap float, double változótípusokkal ez kivitelezhető, ezért úgy vélem hogy reálisak az elvárásaim. Csak nem tudom, hogy ezt már megalkotta-e valaki és ha igen, akkor honnan érhető el.
Legjobb, ha saját magad csinálod meg. Direkt memóriával
kellene dolgoznod, és megírni a számításokat.
Viszont arduinonál figyelj oda, mert elég karcsú a memó-
riája, lehet nem árt majd mellétolni valami i2c sramot,
mert gyorsan elfogy az operatív memória.
Nekem más platformon más okból kellett olyan, hogy többe-
zer számjegyes számokkal tudjak dolgozni különböző szám-
rendszerekben, kénytelen voltam megírni magamnak a kódot.
Köszönöm a választ.
Akkor lehet tényleg magamnak kell majd megcsinálni, de ahhoz meg még sajnos nem értek hozzá eléggé :(
Ez kell neked, a google csodákra képes:
Bocs, neked float kellene... olyan sajnos nincs.
Egyébként mihez kell neked ilyen arduinora? Csak érdekelne...
Igen, ezt ismerem, írtam is hogy ezt próbálgatom. Nem feltétlenül kell float, ez is alapvetően teljesen jó, csak pár súlyos probléma van vele (pl. a hatványozásnál).
Különböző számítási feladatok elvégzésére kellene. Kompakt eszközre van szükségem, ami a fentebb leírt tulajdonságok mellett pár külön bevitt érték alapján elvégez pár számítást. Egy másik eszközre lesz továbbítva róla a végeredmény kb. 100 számjegy pontossággal. Ez valahol 10^95 és 10^-30 közé fog esni (ezért is lenne jó, ha 150 karakter pontossággal tudna számolni, ha 10^-30-nál is szeretném azt a 100 számjegyet, akkor annak a vége valahol 10^-130 körül lesz).
Közben keresgettem ilyen "Calculator projekt"-eket (mert végülis ez is majdnem az) és Arduino alapon egyet sem találtam ami megfelelt volna a számomra, úgyhogy félek tőle hogy nem lehet egyszerűen kivitelezni. Viszont Raspberry Pi-al találtam olyat, amit fel tudnék használni, viszont az meg már anyagilag húzós egy kicsit.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!