Excel_VBA_manual
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
4. PRIMJER POVEZIVANJA EXCELA SA<br />
PROGRAMSKIM JEZIKOM C++<br />
U programskom jeziku C/C++ programira se dosta novih programa kod kojih ponekad predstavlja<br />
veći problem napraviti suĉelje za unos podataka i ispis rješenja, nego riješiti sam problem. Ako<br />
cilj programiranja nije kreiranje odreĊenog suĉelja, tada je moguće upotrijebiti neku od gotovih<br />
aplikacija za rad sa podacima.<br />
Microsoft <strong>Excel</strong> je jedna od aplikacija koja se može koristiti kao suĉelje za unos podataka i ispis<br />
rezultata proraĉuna, tj. za tabelarni i grafiĉki prikaz rezultata i odgovarajućih izvještaja.<br />
Jedna od najĉešćih varijanti korištenja kombinacije <strong>Excel</strong>a i C/C++ ili nekog drugog programskog<br />
jezika je sluĉaj da odreĊena aplikacija zahtijeva složeni i obimni proraĉunski dio, a ulazni i izlazni<br />
parametri su dani u tabelarnoj i grafiĉkoj formi. U tom sluĉaju takva kombinacija ima za prednost<br />
praktiĉki gotovo korisniĉko suĉelje (poznato velikom broju korisnika), uz mogućnost efikasnog<br />
razvoja proraĉunskog dijela aplikacije i njeno brzo izvršavanje.<br />
MeĊu specifiĉnim primjerima ovakve kombinacije može se navesti upravo primjer starijih<br />
numeriĉkih aplikacija u elektronici (i općenito tehnici) koje su dobre sa stanovišta brzine i<br />
toĉnosti proraĉuna, ali im nedostaje odgovarajuće korisniĉko suĉelje. U tom je sluĉaju opisana<br />
kombinacija sa <strong>Excel</strong>om jedno od najĉešće korištenih rješenja.<br />
Kao ilustracija naĉina povezivanja <strong>Excel</strong>a i C++ (pomoću datoteka i pomoću DLL-a) napravljen<br />
je jednostavan primjer sortiranja podataka u matrici.<br />
4.1 Rješavanje problema u programskom jeziku C++<br />
Potrebno je riješiti problem sortiranja brojeva od najvećeg broja prema najmanjem i obrnuto.<br />
Problem sortiranja riješen je pomoću metode ljusaka (Shells Method).<br />
Općenito, ideja sortiranja pomoću metode ljusaka izgleda sljedeće. Npr. za sortiranje 16 brojeva,<br />
n1 do n16, potrebno je prvo grupirati brojeve u 8 grupa po 2 broja koje treba sortirati (n1, n9),<br />
(n2, n10), ..., (n8, n16). Zatim se sortira svaka od 4 grupe sa 4 elementa (n1, n5, n9, n13), ..., (n4,<br />
n8, n12, n16), pa 2 grupe od 8 elemenata (n1, n3, n5, n7, n9, n11, n13, n15) i (n2, n4, n6, n8, n10,<br />
n12, n14, n16), i na kraju se sortira cijeli niz od svih 16 brojeva.<br />
Za sortiranje elemenata nužno je samo posljednje sortiranje, ali parcijalna sortiranja omogućavaju<br />
puno brže i efikasnije sortiranje brojeva, zbog toga što se pomoću njih brojevi efikasno pomiĉu na<br />
poziciju koja je bliža njihovoj krajnjoj poziciji.<br />
Odnos izmeĊu brojeva koji se sortiraju u svakoj sljedećoj ljusci (8, 4, 2, 1 u ovom primjeru)<br />
naziva se inkrement, a metoda ljusaka se ponekad naziva metoda opadajućeg inkrementa.<br />
45