Matematické Fórum


1. 8. 2026 (L) Fórum bude brzy uzavřeno 😿

Nejste přihlášen(a). Přihlásit

#1 09. 08. 2011 18:21

tomas85
Zelenáč
Příspěvky: 2
Reputace:   
 

Zvýšenie desatinného miesta v jazyku C.

Zdravím Vás. Potreboval by som poradiť. Píšem jeden program v jazyku C, v ktorom počítam istú funkčnú závislosť a nechávam ju vypisovať do súboru .txt ako stĺpce x, f(x). Problém je, že presnosť výpočtu  za desatinnou čiarou je nepostačujúca pre mňa. Deklaroval som to na typ double tam mi to poskytlo 9 des. miest, ale potreboval by som viac, aspoň 15. Keď som sa pokúsil deklarovať long double vypisovalo mi to nezmysli. Vedeli by ste mi poradiť ako dosiahnuť väčšiu presnosť výpočtu ? Totiž s programovaním mám min. skúsenosti, ale zistil som že ku riešeniu  niektorých fyz. problémov je nevyhnutné vedieť naklepať si program :).

Offline

 

#2 09. 08. 2011 19:34

Oxyd
Příspěvky: 614
Škola: MFF UK, teoretická informatika
Pozice: Student
Reputace:   31 
 

Re: Zvýšenie desatinného miesta v jazyku C.

Do souboru to zřejmě vypisuješ funkcí fprintf, že? Pro vypisování typu long double se používá specifikátor %Lf -- ty nesmysly, které to vypisuje můžou být způsobené tím, že ses pokoušel vypsat typ long double pomocí specifikátoru %f.

Každopádně, s přesností desetinných čísel je vždy trošku problém. Možná bude vhodné použít nějakou knihovnu pro práci s vyšší přesností -- například GMP.


Mýlím se častěji, než bych chtěl. Pokud vám v mém příspěvku něco nehraje, neváhejte se zeptat.
Jsem stále mlád a je mi příjemnější tykání. :)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson