Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  
AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

Operatori

calculatoare



+ Font mai mare | - Font mai mic



Operatori

Operatorii pot fi impartiti in urmatoarele categorii:



Operatori aritmetici

Operatori de comparatie

Operatori de concatenare

Operatori logici

Operatorii aritmetici sint utilizati in calculele matematice. Acestia sint :

Operatorul ^ este utilizat pentru a ridica un numar la puterea unui exponent. Sintaxa este :

rezultat = numar ^ exponent

numar si exponent pot fi orice expresii numerice si sint obligatorii, iar rezultat orice variabila numerica si este obligatoriu.

Numar poate fi negativ numai daca exponent este o valoare intreaga. Atunci cind se executa mai multe operatii de ridicare la putere intr-o singura expresie, ordinea de executie este de la stinga la dreapta, in ordinea in care este intilnit operatorul ^.

De obicei, tipul rezultatului este Double, sau un variant care contine o valoare de tip Double. Daca numar sau exponent este Null, rezultatul este Null.

Operatorul * este utilizat la inmultirea a doua numere. Sintaxa este :

rezultat = numar1 * numar2

numar1 si numar2 sint expresii numerice si sint obligatorii, rezultat este orice variabila numerica si este obligatoriu.

Tipul de date al rezultatului este in general acelasi cu al celei mai precise expresii. Ordinea preciziei, de la cea mai mica la cea mai mare este : Byte, Integer, Long, Single, Currency, Double si Decimal. Exista si exceptii, si anume :

daca in inmultire sint implicate o valoare de tip Single si una de tip Long, rezultatul este de tip Double

daca tipul de date al rezultatului este un variant care contine o valoare de tip Long, Single sau Date care depaseste domeniul sau de valori, rezultatul este convertit la un variant care contine o valoare de tip Double

daca tipul de date al rezultatului este un variant care contine o valoare de tip Byte care depaseste domeniul sau de valori, rezultatul este convertit la un variant care contine o valoare de tip Integer

daca tipul de date al rezultatului este un variant care contine o valoare de tip Integer care depaseste domeniul sau de valori, rezultatul este convertit la un variant care contine o valoare de tip Long

Daca una dintre expresii este Null, rezultatul este Null. Daca una dintre expresii este Empty, ea este tratata ca fiind 0.

Operatorul / este utilizat la impartirea a doua numere si returneaza un rezultat real. Sintaxa este :

rezultat numar1 numar2

numar1 si numar2 sint expresii numerice si sint obligatorii, rezultat este orice variabila numerica si este obligatoriu.

In general, tipul de date al rezultatului este Double sau un variant care contine o valoare Double, dar exista si exceptii, si anume:

- daca ambele expresii sint de tip Byte, Integer sau Single, rezultatul este de tip Single, iar in caz de depasire se raporteaza eroare

- daca ambele expresii sint varianti de tip Byte, Integer sau Single, rezultatul este de tip Single, iar in caz de depasire rezultatul este un variant care contine o valoare de tip Double

- daca in impartire este implicata cel putin o valoare de tip Decimal, rezultatul este de tip Decimal

- daca in impartire este implicata cel putin o expresie Null, rezultatul este Null

- orice expresie care este Empty este tratata ca 0

Operatorul se utilizeaza la impartirea a doua numere si returneaza un rezultat intreg. Sintaxa este :

rezultat numar1 numar2

numar1 si numar2 pot fi orice expresii numerice si sint obligatorii, iar rezultat este orice variabila numerica si este obligatoriu.

Inainte de impartire expresiile numerice sint rotunjite la expresii de tip Byte, Integer sau Long. De obicei, tipul de date al rezultatului este Byte, variant ce contine o valoare Byte, Integer, variant ce contine o valoare Integer, Long sau variant ce contine o valoare Long.

Daca in impartire este implicata cel putin o expresie Null, rezultatul este Null. Orice expresie care este Empty este tratata ca 0

Operatorul Mod este utilizat pentru a returnata restul returnat de o operatie de impartire, rest care este un numar intreg. Sintaxa este :

rezultat numar1 Mod numar2

numar1 si numar2 sint expresii numerice obligatorii, iar rezultat este orice variabila numerica si este obligatoriu.

Tipul de date al rezultatului poate fi Byte, un variant ce contine o valoare de tip Byte, Integer, un variant ce contine o valoare de tip Integer, Long, un variant ce contine o valoare de tip Long.

Daca una dintre expresii este Null, rezultatul este Null. Daca una dintre expresii este Empty, ea este tratata ca fiind 0.

Operatorul + este utilizat pentru a aduna doua numere. Sintaxa este:

rezultat expresie1 expresie2

expresie1 si expresie2 sint expresii numerice obligatorii, iar rezultat este orice variabila numarica si este obligatoriu.

Daca cel putin una dintre expresii nu este Variant, se aplica urmatoarele reguli :

daca ambele expresii sint de tip numeric ( Byte, Boolean, Integer, Long, Single, Double, Date, Currency, Decimal ) se face adunare

daca ambele expresii sint de tip String, se face concatenare de siruri

daca una dintre expresii este numerica si cealalta este orice variant, cu exceptia Null se face adunare

daca una dintre expresii este sir si cealalta este orice variant, cu exceptia Null se face concatenare de siruri

daca una dintre expresii este un variant care contine Empty, se returneaza cealalta expresie nemodificata

daca una dintre expresii este numerica si cealalta este sir, apare o eroare ( Type mismatch )

daca una dintre expresii este Null, rezultatul este Null

Daca ambele expresii sint de tip Variant, se aplica urmatoarele reguli :

daca ambele expresii sint varianti ce contin numere, se face adunare

daca ambele expresii sint varianti ce contin siruri, se face concatenare

daca una dintre expresii este un variant numeric si altul sir, se face adunare

In cazul adunarilor care implica numai expresii numerice, tipul de date al rezultatului este, de obicei, acelasi cu cel al celei mai precise expresii. Exista citeva exceptii :

daca se aduna o valoare de tip Single si una de tip Long, rezultatul este de tip Double

daca rezultatul este un variant ce contine o valoare de tip Long, Single sau Date, care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Double

daca rezultatul este un variant ce contine o valoare de tip Byte care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Integer

daca rezultatul este un variant ce contine o valoare de tip Integer care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Long

Daca una dintre expresii este Null, rezultatul este Null. Daca ambele expresii sint Empty, rezultatul este de tip Integer.

Operatorul - este utilizat pentru calcula diferenta a doua numere, sau pentru a indica valoarea negativa a unei expresii numerice. Sintaxa este:

rezultat numar1 numar2 sau

- numar

numar1, numar2 si numar sint expresii numerice obligatorii, iar rezultat este orice variabila numarica si este obligatoriu.

Tipul de date al rezultatului este, de obicei, acelasi cu cel al celei mai precise expresii. Exista citeva exceptii

daca scaderea implica o valoare de tip Single si una de tip Long, rezultatul este de tip Double

daca rezultatul este un variant ce contine o valoare de tip Long, Single sau Date, care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Double

daca rezultatul este un variant ce contine o valoare de tip Byte care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Integer

daca rezultatul este un variant ce contine o valoare de tip Integer care depaseste domeniul sau, el este convertit la un variant ce contine o valoare de tip Long

daca scaderea implica doua expresii de tip Date, rezultatul este de tip Double

Daca una dintre expresii este Null, rezultatul este Null. Daca una dintre expresii este Empty, ea este tratata ca zero.

Operatorii de comparatie sint utilizati in compararea expresiilor. Sintaxa este :

rezultat = expresie1 operatorcomparatie expresie2

rezultat = obiect1 Is obiect2

rezultat = sir Like model

expresie1, expresie2 sint expresii obligatorii, rezultat este orice variabila numerica obligatorie, operatorcomparatie este orice operator de comparatie. obiect1, obiect2 sint nume de obiecte, sir este orice expresie de tip string, iar model este orice expresie de tip string.

Tabelul urmator afiseaza operatorii de comparatie si conditiile care determina daca rezultatul este True, False sau Null.

Operator

True daca



False daca

Null daca

<

Expresie1 < expresie2

Expresie1>=expresie2

Expresie1 sau expresie2 = Null

<=

Expresie1<= expresie2

expresie1 > expresie2

Expresie1 sau expresie2 =Null

>

Expresie1> expresie2

Expresie1<= expresie2

Expresie1 sau expresie2 =Null

>=

Expresie1>= expresie2

Expresie1< expresie2

Expresie1 sau expresie2 =Null

=

Expresie1= expresie2

Expresie1<> expresie2

Expresie1 sau expresie2 =Null

<>

Expresie1<> expresie2

Expresie1= expresie2

Expresie1 sau expresie2 =Null

Operatorul Is se utilizeaza pentru a compara doua variabile care contin referinte la obiecte.

obiect1, obiect2 sint nume de obiecte si sint obligatorii, rezultat este orice variabila numerica obligatorie.

Daca obiect1 si obiect2 refera acelasi obiect, rezultat este True, altfel este False.

In urmatorul exemplu, A este setat astfel incit sa refere acelasi obiect ca si B.

Set A = B

Operatorul Like se utilizeaza pentru a compara doua siruri.

sir este orice expresie de tip String, model este orice expresie de tip String care satisface cerintele de mai jos, rezultat este orice variabila numerica obligatorie.

Daca sir se potriveste cu model, rezultatul este True. Daca, fie sir, fie model este Null, rezultatul este Null.

Comportamentul operatorului Like depinde de comanda Option Compare.

Daca aceasta comanda are forma Option Compare Binary, comparatia sirurilor se face pe baza ordinii de sortare care rezulta din reprezentarea interna binara a caracterelor. In exemplul urmator apare o ordine de sortare binara tipica:

A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê < ø

Daca aceasta comanda are forma Option Compare Text, comparatia sirurilor nu tine cont de folosirea literelor mici sau mari. Mai jos apare un exemplu de sortare in acest caz:

(A=a) < (À=à) < (B=b) < (E=e) < (Ê=ê) < (Z=z) < (Ø=ø)

Mai jos apar citeva dintre caracterele ce pot fi folosite in model si semnificatia lor:

? Orice caracter singular.

* Zero sau mai multe caractere.

# Orice cifra singulara (0-9).

Operatorii de concatenare sint utilizati pentru a combina siruri.

Operatorul & realizeaza concatenarea a doua siruri. Sintaxa este :

rezultat = expresie1 & expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila de tip String sau Variant.

Daca una dintre expresii nu este sir, ea este convertita la un variant care contine o valoare de tip String.Tipul de date al rezultatului este String daca ambele expresii sint de tip String, altfel, rezultatul este un variant care contine o valoare de tip String. Daca ambele expresii sint Null, rezultatul este Null. Daca numai una dintre expresii este Null, ea este tratata ca un sir de lungime zero. Orice expresie care este Empty este tratata tot ca un sir de lungime zero.

Operatorii logici sint utilizati la efectuarea operatiilor logice.

Operatorul And se utilizeaza pentru a executa un si logic intre doua expresii. Sintaxa este :

rezultat = expresie1 And expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie1 este

Daca expresie2 este

Rezultat

True

True

True

True

False

False

True

Null

Null

False

True

False

False

False

False

False

Null

False

Null

True

Null

Null

False

False

Null

Null

Null

Operatorul And realizeaza, de asemenea, un si logic intre bitii aflati in aceeasi pozitie in doua expresii numerice si seteaza bitul corespunzator al rezultatului conform tabelei :

Daca bitul din expresie1 este

Daca bitul din expresie1 este

Rezultat

0

0

0

0

1

0

1

0

0

1

1

1

Operatorul Or se utilizeaza pentru a executa un sau logic intre doua expresii. Sintaxa este :

rezultat = expresie1 Or expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie1 este

Daca expresie2 este

Rezultat

True

True

True

True



False

True

True

Null

True

False

True

True

False

False

False

False

Null

Null

Null

True

True

Null

False

Null

Null

Null

Null

Operatorul Or realizeaza, de asemenea, un sau logic intre bitii aflati in aceeasi pozitie in doua expresii numerice si seteaza bitul corespunzator al rezultatului conform tabelei :

Daca bitul din expresie1 este

Daca bitul din expresie1 este

Rezultat

0

0

0

0

1

1

1

0

1

1

1

1

Operatorul Not se utilizeaza pentru a nega logic o expresie :

rezultat = Not expresie

expresie este orice fel de expresie, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie este

Rezultat

True

False

False

True

In plus, operatorul Not inverseaza valoarea bitilor oricarei variabile conform tabelei:

Daca bit in rexpresie este

Bitul in rezultat este

0

1

1

0

Operatorul Xor se utilizeaza pentru a executa un sau exclusiv intre doua expresii. Sintaxa este :

[ rezultat =] expresie1 Or expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie1 este

Daca expresie2 este

Rezultat

True

True

False

True

False

True

False

True

True

False

False

False

Daca una dintre expresii are valoarea Null, rezultatul este Null.

Operatorul Xor realizeaza, de asemenea, un sau exclusiv intre bitii aflati in aceeasi pozitie in doua expresii numerice si seteaza bitul corespunzator al rezultatului conform tabelei :

Daca bitul din expresie1 este

Daca bitul din expresie1 este

Rezultat

0

0

0

0

1

1

1

0

1

1

1

0

Operatorul Imp se utilizeaza pentru a executa o implicatie logica intre doua expresii. Sintaxa este :

rezultat = expresie1 Imp expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie1 este

Daca expresie2 este

Rezultat

True

True

True

True

False

False

True

Null



Null

False

True

True

False

False

True

False

Null

True

Null

True

True

Null

False

Null

Null

Null

Null

Operatorul Imp realizeaza, de asemenea, o implicatie logica intre bitii aflati in aceeasi pozitie in doua expresii numerice si seteaza bitul corespunzator al rezultatului conform tabelei :

Daca bitul din expresie1 este

Daca bitul din expresie1 este

Rezultat

0

0

1

0

1

1

1

0

0

1

1

1

Operatorul Eqv se utilizeaza pentru a executa o echivalenta logica intre doua expresii. Sintaxa este :

rezultat = expresie1 Eqv expresie2

expresie1 si expresie2 sint orice fel de expresii, iar rezultat este orice variabila numerica. Tabela urmatoare determina modul de determinare al rezultatului :

Daca expresie1 este

Daca expresie2 este

Rezultat

True

True

True

True

False

False

False

True

False

False

False

True

Daca una dintre expresii este Null, rezultatul este Null.

Operatorul Eqv realizeaza, de asemenea, o echivalenta logica intre bitii aflati in aceeasi pozitie in doua expresii numerice si seteaza bitul corespunzator al rezultatului conform tabelei :

Daca bitul din expresie1 este

Daca bitul din expresie1 este

Rezultat

0

0

1

0

1

0

1

0

0

1

1

1

Precedenta operatorilor

Atunci cind intr-o expresie apar mai multe operatii , fiecare parte este evaluata si rezolvata intr-o ordine predeterminata numita precedenta opratorilor.

Atunci cind expresiile contin operatori din mai multe categorii, intii se evalueaza operatorii aritmetici, apoi cei de comparatie, iar cei logici sint evaluati ultimii.

Operatorii de comparatie au aceeasi precedenta, ceea ce inseamna ca sint evaluati in orinea in care apar, de la stinga la dreapta. Operatorii aritmetici si logici sint evaluati in ordinea urmatoare:

Operatori aritmetici

Operatori de comparatie

Operatori logici

Ridicare la putere (^)

Egalitate (=)

Not

Negatie (-)

Inegalitate (<>)

And

Inmultire si impartire (*,/)

Mai mic (<)

Or

Impartire intreaga ()

Mai mare (>)

Xor

Modulo ( Mod )

Mai mic egal (<=)

Eqv

Adunare si scadere (+,-)

Mai mare egal(>=)

Imp

Concatenare de siruri (&)

Like

Is

Atunci cind inmultirea si impartirea apar in aceeasi expresie, fiecare operatie este evaluata in ordinea in care apare de la stinga la dreapta. Atunci cind adunarea si scaderea apar in aceeasi expresie, fiecare operatie este evaluata in ordinea in care apare de la stinga la dreapta. Se pot folosi parantezele pentru a schimba ordinea de executie a operatiilor. Operatiile incluse intre paranteze se evalueaza intotdeauna inaintea celor din exterior. In interiorul parantezelor se mentine precedenta operatorilor.

Operatorul concatenare de siruri (&) nu este un operator aritmetic, dar in ceea ce priveste precedenta, urmeaza dupa toti operatorii aritmetici si precede toti operatorii de comparatie.





Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1659
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved