Užitečné komponenty pro Delphi a C++ Builder, díl 50.

Dnešní díl bude pro ty, kteří mají rádi matematiku. Představíme si malou nevizuální komponentu, která slouží jako interpret výrazů.

CalcExpress

Někteří z vás se možná někdy snažili naprogramovat nějaký výpočetní program. Ať už jako příklad do školy a nebo pro vlastní potřebu pro nějaké specifické výpočty. Jistě, program pro konkrétní úlohu je dobrá věc, ale často je třeba podmínky výpočtu upravit, přidat více proměnných či funkci a předělávat pokaždé program není moc pohodlné. Chtělo by to zkrátka nějaký "interpret příkazů", kterému pošlete řádek s matematickým výrazem, který je plný proměnných, funkcí, závorek a operátorů a tento interpret správně výraz rozluští a vypočítá. A přesně k tomu slouží naše dnešní komponenta.

Jak již bylo řečeno, komponenta je nevizuální a po jejím umístění na formulář zjistíte, že má vlastně na první pohled velmi málo vlastností a dokonce nemá žádnou událost. V seznamu vlastností je kromě názvu vlastně již jen seznam proměnných, které budou ve výrazu vystupovat a samotný řešený výraz. Celá práce s komponentou pak vypadá asi tak, že si vytvoříte seznam názvů proměnných, které uložíte do k tomu vhodné struktury (v demoaplikaci je k tomu použita dokonce komponenta Memo). Jedná se o obyčejné libovolné textové řetězce, tedy názvy jednotlivých proměnných, které jsou na jednotlivých řádcích. Do druhé podobné struktury (opět klidně Memo) zase uložíte jejich hodnoty, tedy čísla. Samozřejmě musíte zachovat vzájemné pořadí. Nakonec do textového pole (EditBox) uložíte samotný matematický výraz a pošlete jej příslušné metodě komponenty, která vrátí výsledek.

Zbývá nám zmínit výčet funkcí, se kterými můžete pracovat. Tak tedy, kromě základních operátorů sčítání, odčítání, násobení a dělení můžete používat i mocninu, odmocninu, goniometrické funkce, logaritmy a několik dalších (podle jejich zkratek se mi je nepodařilo identifikovat). Celkem je to 18 funkcí. Pro své výpočty můžete používat prakticky neomezené množství svých vlastních proměnných.

I když je komponenta relativně jednoduchá, obsahuje základní funkce a při troše dobré vůle a snahy si díky dostupnosti zdrojového kódu můžete doprogramovat i funkce další. Pokud si chcete vytvořit nějaký vlastní malý výpočetní program, který má být nezávislý a variabilní, pak je tato komponenta slušný základ.

www
verze: 2.1
Delphi: 4 - 7
C++ Builder: 4 - 6
Kylix: 2.0

Diskuze (3) Další článek: MSI a Tablet PC s cenou pod 1000 USD

Témata článku: Software, Programování, Slušné číslo, Díl, Textový řetězec, Komponenta, Základní struktura, Základní věc

Určitě si přečtěte


Aktuální číslo časopisu Computer

Zachraňte nefunkční Windows

Jak nakupovat a prodávat kryptoměny

Otestovali jsme konvertibilní notebooky

Velký test 14 herních myší