Kalkulu-orri

[thumb|300px|[OpenOffice.org Calc]]
**Kalkulu-orria** zenbakizko datuekin kalkuluak egiteko editore espazialduna da. Aurrekontuak, fakturak, grafikoak... egiteko prestaturiko bulegotika programa da.

Kalkulu-orrietan errenkada eta zutabe ugariz osatutako taula edo matrizea dugu oinarri, non, zutabe eta errenkada bakoitzaren arteko intersekzioari gelaxka deituko diogun. Bakoitzak bere izena izango du; orri, errenkada eta zutabeen izenen elkarketaz sortua berau. Adibidez “D6”, itsasontzien jokoa bezala.

## Jatorria 
1960ko hamarkadan kalkulu-orri elektroniko baten kontzeptua sortu zen Richard Mattessichen *Budgeting Models and System Simulation* artikuluan. Pardok eta Landauk horrelako programen kredituaren zati bat merezi dute, eta 1970ean algoritmo batzuk patentatzen saiatu ziren (4.398.249 zenbakiko patentea AEBn). Patentea ez zuen patenteen bulegoak eman asmakuntza matematiko hutsa zelako. Pardok eta Landauk kasu bat irabazi zuten gortean "zerbait patentagarria da berritasunaren puntua algoritmo bat delako" esanez. Kasu honek software-patenteen hasieran lagundu zuen.

Dan Bricklin kalkulu-orrien asmatzaile onartua da.

## Gelaxkak 
thumb|Lau zelda, horizontalean lerroka edo bertikalean zutabeka, eta euren notazioa.
Datuak sartzeko edo kalkuluak egiteko lekua da kalkulu-orri baten gelaxka. Oro har, laukizuzen formakoak dira, eta ilara eta zutabe baten elkargunean eratzen dira; izen batekin identifikatzen dira, adibidez, `C4`; C zutabearen izena da, eta 4 ilararen zenbakia.

Lerroak horizontalak dira eta zenbakiek identifikatzen dituzte goranzko sekuentzian. Aldiz, zutabeak alfabetoko letrekin identifikatuta daude eta bertikalki doaz kalkulu-orrian.

Gelaxketan edozein informazio mota sartzen da, hala nola testua, datak edo zenbakiak, bai eta kalkulu edo ataza jakin bat egiteko formulak edo jarraibideak ere.

## Oinarrizko operazioak 
Kalkulu-orri batean, formulak eta funtzioak izan aurretik, oinarrizko operazioak egin ditzakegu: batuketa, kenketa, biderketa eta zatiketa. Honela, A1 gelaxkan eta B1 gelaxkan dagoena gehitu nahi badugu C1 gelaxkan, `=A1+B1` idatziko dugu. Ez dugu zertan gelaxketan dagoena batu behar. Adibidez, biderkatu dezakegu A1 gelaxkan dagoena, sinpleki `=A1*2` jarrita beste gelaxka batean. 

**Oinarrizko lau eragiketak: batuketa, kenketa, biderketa eta zatiketa** 

Kalkulu-orri bateko oinarrizko eragiketak aritmetika ezagunak dira: batuketa, kenketa, biderketa eta zatiketa. 

Garrantzitsua da aipatzea ataza gauzatzeko beharrezkoa dela idazkera berdineko zeinu batekin (=) edo gehi zeinu batekin (+) hastea, kalkulu-orriaren bertsioaren arabera.

Biderketa operadorearen* bidez egiten da (izartxo gisa bistaratzen da). Adibidez = b1* c3, biderkatu b1 eta c3 gelaxketan dauden balioak. Bi gelaxka baino gehiago biderkatu daitezke.

Zatiketa operadorearen bidez egiten da. Adibidez = b1/c3, zatitu b1 gelaxkan dagoen balioa c3 gelaxkarekin.

Gelaxka baten balioa n adierazlera igo nahi izanez gero, ikur zirkunfleboa (^) erabili behar da. Adibidez, c4 gelaxkatik kubora edukia igotzeko, = c4 windo3 formula idazten da.

Batura gelaxka gutxikoa bada, zuzenean batzea komeni da: = a1+a2+a3. Gauza bera egin daiteke kendu behar bada: = a1-b1-c1.

Batu nahi dugunean erabili = (1. laukia) + (2. laukia) formula honek hautatutako zenbakiak batzen ditu

Kendu nahi dugunean, aurreko prozedura egiten da, baina "+" ikurraren ordez, "-" ikurra jartzen dugu. Formula horrek hautatutako zenbakiak kentzen ditu.

Biderkatzeko, prozedura bera egingo dugu, baina zeinua "*" botoiarekin aldatuko dugu, eta, formula horri esker, hautatutako zenbaki guztiak biderkatu ahal izango ditugu. Era berean, zatiketen kasuan, zeinua "/" besterik ez dugu aldatuko, eta, formula horri esker, hautatutako zenbakiak zatitu ahal izango ditugu.

**Eragiketak multzokatzeko sinboloak**

Eragiketa konbinatuak egin behar direnean (biderketari gehitzen zaizkion zatiketak, adibidez), parentesiak matematikan bezala erabil daitezke eragiketa bat beste batetik bereizteko. Hala ere, eta matematikan bezala, eragiketek ere eragiketa-lehentasun naturalaren ordena dute: lehenik berredurak eta erroak ebazten dira, gero zatiketak eta biderketak, eta azkenik gehikuntzak eta kenketak.

**Konstanteen eta aldagaien nozioak**

Matematikan berebiziko interesa duten bi kontzeptu konstanteak eta aldagai aldakorrak dira. Terminologia sinple bat erabiltzeko, konstantetzat joko ditugu balio iraunkor guztiak.

Aldagai bat, aldiz, eta izenak iradokitzen duen bezala, beti balio bera izan ez dezakeen datu baten irudikapena da.

Horrela, uraren irakite-tenperatura 100ºC-koa dela diogunean, fenomeno jakin horretarako balio konstante bati egiten diogu erreferentzia. Hala ere, ura berotzeko esperientzia aipatzen badugu, ikusiko dugu denborak aurrera egin ahala tenperaturak hartzen dituen balioak aldatzen joaten direla irakiteraino. Bigarren kasu honetan, tenperatura aldakorra da.

**Eragiketak konstanteekin**

Kalkulu-orriak zuzenean manipula ditzake balio espezifikoak (konstanteak), kalkulagailu baten antzera.

Horrela, a1, a2, a3 eta a4 gelaxketan dauden 12, 13, 12 eta 14 zenbakiak batu nahi izanez gero, nahikoa izango da, adibidez, a5 gelaxkan kokatzea eta = 12+13+12+14 idaztea.

Jarraian ikusiko dugunez, kalkuluak (konplexuak edo ez) egiteko modu hori ez da gomendagarria. Balio baten kargan errore bat egiteak zenbaki okerra zuzentzea ekarriko luke, baita formula bera ere.

**Eragiketak aldagaiekin**

Aurretik azaldutako guztiari gehitu dakioke Konputazio Zientzietan konstantearen eta aldagaiaren interpretazioa matematikakoaren antzekoa dela, baina ikuspegi berezia du aldagaiaren ideiari dagokionez.

Aldagai orok balio bat biltegiratzen du informatikan. Horrela askoz onuragarriagoa izango da aldagai bat manipulatzea, eta ez haren eduki espezifikoa. Kalkulu-orrian aldagaiak manipulatzea gelaxkak manipulatzearen baliokidea da.

Horrela, aurreko adibidean eraginkorragoa izango da a5 gelaxkan "a1+a2+a3+a4" aldagaiak dituen "formula idaztea," konstante "= 12+13+12+14" formula baino. Lehenengoan, "a1" eta "a4" arteko balioak kargatzean errore bat egiten bada, "errore" hori (k) baino ez da zuzenduko. Formula gelaxketan idatzita dagoenez – hau da, aldagaiak manipulatuz –, formulak berak emaitza zuzena birkalkulatuko du, zuzendu beharrik gabe.

#### Eragiketen lehentasun-ordena 
Lehen parentesi arteko azpiesamolde guztiak ebaluatzen dira. Parentesi habiaratuak dituzten azpiesamoldeak erdigunetik muturretarantz ebaluatzen dira.

Adierazpen baten barruan, eragileak honela ebaluatzen dira:

* Ezkerretik eskuinerako adierazpena aztertzen da, eragiketaren berezko lehentasun-ordena errespetatuz.
* Esamoldean parentesirik badago, parentesi horien barruan dagoena ezkerretik eskuinera ebaluatzen da, lehentasun-ordenaren arabera.
* Adierazpenean parentesi pare bat baino gehiago badaude, ebaluazioa adierazpenean ezkerrerago dagoen parentesiarekin hasten da, eskuinerago dagoen adierazpenaren parentesi parera iritsi arte.

## Formulak eta funtzioak 
Kalkulu-orri baten ezaugarri nagusia formulak zehazteko aukera da. Berauen bitartez beste gelaxka batzuetan aurkitzen diren datuak erreferentzia ditzakegu. Gelaxka baten edukia aldatzen denean, orriak, automatikoki, beroni erreferentzia egiten dioten gelaxka guztietako emaitza eguneratuko du. Formulak adierazteko zehaztuta dauden funtzio ugari eskainiko zaizkigu.

Kalkulu-orrien bidez, logika formaleko elementuak erabil daitezke, hala nola , =. Honek aukera ematen digu funtzio konplexuagoak egiteko. Adibidez, eskatu dezaket gelaxka bat biderkatzea, soilik 10 baino gehiago balio badu, honako kodearekin: `=IF(A1>10;A1*2)`. 

Formulen bidez gauza askoz konplexuagoak egin daitezke. `IF` formula bat da, baina badaude ehunka. Adibidez, bi zutabeko lehenengo 10 elementuak gehitu nahi baditut, idatzi dezaket `=SUM(A1:B10)` eta A eta B zutabeetako 1etik 10erako errenkada guztiak batuko ditu.

Formula batean erabil daitezkeen operadore motak honako hauek dira: Operadore aritmetikoak zenbakizko emaitzak sortzeko erabiltzen dira. Adibidez: + - * /«Testu-motako operadorea» testua duten gelaxkak kateatzeko erabiltzen da. Adibidea: & Operadore erlazionalak balioak konparatzeko eta balio logiko bat (egiazkoa edo faltsua) emateko erabiltzen dira, konparazioaren emaitza gisa. Adibidea:  =  =  Erreferentziako operadoreek adierazten dute erreferentziako gelaxkan sortutako balioa formulan erabili behar dela. Kalkulu-orri gehienetan honako hauek izan daitezke: - Bi puntuz adierazitako lerruneko operadorea (:), gelaxka-tarte bat adierazteko erabiltzen da. Adibidea: A1: G5 - Koma (,) batek adierazitako lotura-operadoreak bi gelaxka edo gehiagoren balioak batzen ditu. Adibidea: A1, G5

Adierazpen berean eragiketa bat baino gehiago daudenean, atal bakoitza ebaluatu eta ordena jakin batean ebazten da. Ordena horri operadoreen lehentasuna esaten zaio. Parentesiak erabil daitezke lehentasun-ordena aldatzeko eta esamolde baten zati batzuk beste batzuk baino lehenago ebaztea behartzeko.

Parentesi arteko eragiketek oinarrizko hierarkia bat jarraitzen dute: parentesitik kanpo daudenak baino lehenago egiten dira beti. Hala ere, parentesien artean operadoreen lehentasun normalari eusten zaio. Kategoria bat baino gehiagoko operadoreak dituzten adierazpenak daudenean, aurretik eragile aritmetikoak dituztenak ebazten dira, ondoren konparazio-operadoreak dituztenak eta, azkenik, operadore logikoak dituztenak.

Konparazio-operadore guztiek lehentasun bera dute, hau da, ezkerretik eskuinera ebazten dira, agertzen diren ordenan. Hauek dira: Konparazioa Berdintasuna (=) Desberdintasuna () Txikiagoa baino () Txikiagoa edo berdina ( =).

Eragile logiko eta aritmetikoak honako lehentasun-hurrenkera honetan ebazten dira (handienetik txikienera): Aritmetiko logikoak Esponentziazioa (-) Not Ukapena (-) And Biderketa (*) eta Zatiketa (/) Or Gehitzea (+) eta Ostea (-) Karaktereen kateatzea (&) Adierazpen berean biderkadura eta zatiketa daudenean, eragiketa bakoitza agertu ahala ebazten da, ezkerretik eskuinera. Era berean, adierazpen berean gehikuntzak eta kenketak agertzen direnean, eragiketa bakoitza agertzen den ordenan ebazten da, ezkerretik eskuinera. Karaktere-kateen kateatze-operadorea (&) ez da benetan eragile aritmetikoa, baina lehentasunezkoa da konparazio-operadore guztiekiko. UE () Txikiagoa edo berdina ( =).

**Funtzioak**

Funtzio bat aurrez definitutako formula bat da, eta kalkuluak egiten ditu, balio espezifikoak ordena jakin batean erabilita. Funtzio guztiek sintaxi bat jarraitu behar dute, eta hori errespetatzen ez bada, programak errore-mezu bat erakutsiko digu. 1) Sarrerako argudioak edo balioak parentesi artean doaz beti. Ez utzi tarterik parentesi bakoitzaren aurretik edo ondoren. 2) Argudioak balio konstanteak (kopurua edo testua), formulak edo funtzioak izan daitezke. 3) Argudioak puntu eta koma batez banandu behar dira ";". Adibidea: = BATURA (A1: B3) funtzio hau = A1+A2+A3+B1+B2+B3 da.

**Erreferentzia erlatiboak**

Formula bat idazten dugunean, edozein dela ere, ez dugu askotan idazten autozigilatze-puntuaren bidez, zeina behean eskuinaldean hautatutako gelaxkan baitago. Formula duen gelaxkan kokatzen bagara, eta sagua puntu horretara hurbiltzen badugu erakuslea gurutze finitu eta beltz bihurtzen den arte, botoia saka daiteke askatu gabe, eta formula gainerako gelaxketara "arrastatu".

**Erreferentzia absolutuak**

Askotan, gelaxka bateko balio batek beste gelaxka-multzo batean dauden balio batzuei eragin behar die. Adibidez, gelaxka batean beste gelaxka batzuetan dauden hainbat kantitate biderkatu behar dituen prezio bat egon daiteke; edo ehuneko batek (deskontukoak edo gehikuntzakoak) beste gelaxka-tarte batean dauden hainbat zenbateko biderkatu behar ditu. Prezioen gelaxka erabili ahal izateko, adibidez, biderketak egiteko, ezingo genuke biderketa formula bete gelaxka guztietarako. Zergatik? Izan ere, ilararen zenbakia handitu egiten denez (erlatiboa da), prezioaren gelaxkak ez lituzke zenbaki guztiak biderkatuko. Orduan, gelaxka batean zenbaki bat beste gelaxka batzuetan dauden zenbakiekin biderkatu behar denean, prezioa duen gelaxka ibilgetzea komeni da. Horri ziega edo erreferentzia absolutu bat egitea esaten zaio. Bi modu daude hau egiteko. Lehenengoa kurtsorea (saguarekin edo helbide-teklekin) ezarri nahi den gelaxkaren aurrean jartzea da, eta F4 tekla sakatzea. Demagun gure prezioa b1 gelaxkan dagoela eta c5 gelaxkan dagoen lehenengo artikulu-kopuruaz biderkatu nahi dugula. Lehen formula hori idazten dugunean = b1* c5 geratuko da. Prezioa artikuluko duen b1 gelaxka ezartzeko, kurtsorea b1 gelaxkaren aurrean jarriko dugu (hau da, "=" eta "b" b1 zeinuen artean), eta F4 tekla sakatu ondoren, formula hau geratuko da: = $b $1* c5. Beraz, b1 gelaxka ezarria dago eta betetzean, zutabeko "b" letra eta errenkadako 1 zenbakia ez dira aldatuko. Hau egin ondoren, zenbaki guztiak c5, c6, c7. B1ean dagoenarekin biderkatuko dira.

Hori egiteko beste modua $ zeinua b ikurraren aurrean eta 1 zenbakiaren aurrean zuzenean tindatzea da, formula idaztean. Aurreko modu berean, formula gainerako gelaxkak ahal izango dira.

## Erreferentziak 
## Ikus, gainera 
* LibreOffice.
* Testu-prozesadorea.

## Kanpo estekak