Új hozzászólás Aktív témák
-
axioma
veterán
válasz
Neil Watts #5701 üzenetére
Irsz egy BCD-s aritmetikat
De reg lattam, me'g IBM4361-nel emlegette'k... jo, javitok: a BCD az ket felbyte-on 1-1 tizes szamjegy, de utana az osszeadasa ugyanaz.
Amugy megteheted, hogy egyszerre x decimalis szamjegyet konvertalsz... osszeadsz, maradekot kepzel. Ekkor mondjuk 2^30-ba belefer 10^9, 9 szamjegyenkent egy darab egeszet tarolsz, amit nem is kell igy ascii kavarassal konvertalni, minimum masolassal (bocs, en regen hasznaltam C-t, lehet hogy kozvetlen indexek megadasaval) beolvastathatod szamkent. -
buherton
őstag
válasz
Neil Watts #5701 üzenetére
Szia!
Jó gondolat a karaktertömb és jó a probléma felvetés! Fél siker.
Egy struktúrát használnék pl.:
typedef struct
{
char isMinus;
unsigned int len;
char *number;
} number_sA fájlban ASCII-ként van letárolva, így amikor letárolnám a struktúrámba, akkor kivonnám az offsetet és egyszerű számként tárolnám, hogy később a műveletek során már ne kelljen ezzel foglalkozni.
A műveletek kicsit összetettebbek, de valóban a papíron való számolásra érdemes visszavezetni. Amiből kindulhatsz, hogy összeadásnál a leghosszabb szám hossza vagy plusz egy lesz az összeg hossza. Kivonásnál maximum a leghosszabb szám hossza.
Amit viszont ne kövess el, hogy konstans értékeket használsz! Ha ismerkedsz még csak a nyelvvel, akkor a prototípus lehet fix számú és akkor a logikát ki lehet próbálni, de utána illik generálissá tenni. Ehhez pedig melegen ajánlom a malloc/free függvényt. A struktúrában sem véletlenül van tömb pointer
.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Mos, főz, takarít ez a furcsa figura
- exHWSW - Értünk mindenhez IS
- CASIO órák kedvelők topicja!
- iPhone topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen belső merevlemezt vegyek?
- Battlefield 6
- Építő/felújító topik
- Poco F7 – bajnokesélyes
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA -Kártyafüggetlen, MS3604
- HPE Apollo 4200 Gen9 2U rack szerver, 1x E5-2620v4, 64GB RAM, 24x3.5" 2U-ban! ÁFA-s számla, garancia
- GYÖNYÖRŰ iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3338
- Kezdő Gamer PC-Számítógép! Csere-Beszámítás! I5 7500 / GTX 1050Ti / 16GB DDR4 / 128SSD+1TB HDD
- PS Plus előfizetések
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest