Posted By: Jovo () on 'CZprogram' Title: Ad: Problemy s floaty Date: Wed May 8 14:41:38 2002 Ahoj. Ja uz jsem tu jednou zadal o pomoc s podtekanim, zaokrouhlovanim a podobne. Pokud mas specialni pripad, coz je pouziti napriklad casu, meny (penez) a podobne, tak nelez do float/decimal/extended. Napis si vlastni objekt, ktery bude mit neco jako int koruny, halire; Pokud potrebujes ciste non-object veci, pak neni jina moznost nez to nahradit typedef struct + spoustou samostatnych funkci. Na druhou stranu pokud to udelas bez objektu, pak se objekt da vytvorit jedna basen :-) Neco podobneho jsem uz 2x delal. Ja vzdycky, kdyz mam nejaky problem, tak se ho snazim ze svych zdrojaku vyhnat tim, ze ho 'vyvezu' mimo (unita, objekt, knihovna). To ma tu vyhodu, ze jakmile se objevi nejaky problem, pak to opravujes jen na jednom miste. Napriklad v tvem pripade by ti nemusel typ INT stacit. To se da vyresit pridanim dalsiho INTu, treba ve stylu int nad_miliardy, miliardy, miliony, tisice, halire, setiny_haliru; No a pokud te ani tohle neuspokoji (nejaky blbecek prijde s tim, ze chce triliony :), pak doporucuji prejit na aritmetiku reprezentovanou stringy. Treba 123456 nebude int ale char[]. Sice se aritmetika strasne zpomali a cisla zaberou obrovsky prostor, ale navic ziskas jednoduchou zpracovatelnost (muzes na ne postvat scripty - perl a podobne), absolutni kontrolu a nemoznost podteceni/preteceni. Existuji implementace desetinnych cisel pres celociselne typy - onehda jsem si prohlizel zdrojaky Allegra (http://www.talula.demon.co.uk/) a pokud hledas inspiraci nebo zaklady implementace, pak se mrkni tam. Jovo. PS: Zkusil jsem hledat nejakou knihovnu, co ma string-based aritmetiku, ale ani po 10 minutach googleovani jsem nic pouzitelneho nenasel. Nevite nekdo kde by se podobny soft dal stahnout? Zrovna ho nepotrebuju, ale jeden nikdy nevi :-)