Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


TIPURI DE DATE IN FOX

fox pro



+ Font mai mare | - Font mai mic



TIPURI DE DATE

Informatiile prelucrate de calculator vor fi numite date.

Un tip de date reprezinta o caracteristica a datelor care stabileste ce operatii se pot executa asupra lor, modul de codificare a datelor in memoria calculatorului, semnificatia acestor date. Exemple de tipuri de date: numeric, logic, sir de caractere, etc.



In limbajul FoxPro vom avea urmatoarele tipuri de date:

-Tipul logic

-Tipul numeric

-Tipul sir de caractere

-Tipul data calendaristica

-Tipul memo.

Tipul logic

Acest tip este caracteristic datelor ce nu pot lua decat doua valori, adevarat (true) sau fals (false).

Pentru a specifica valoarea adevarat a unei variabile de tip logic se foloseste constructia .T. iar pentru valoarea fals se foloseste .F.

O expresie de tip logic reprezinta o combinatie de operanzi si operatori, realitate dupa anumite reguli sintactice, pentru a forma o constructie corecta, a carei evaluare va avea ca rezultat o valoare logica.

Operanzii ce intra in componenta expresiilor logice sunt de urmatoarele tipuri:

-campuri de tip logic ale unei baze de date

-functii ce returneaza valori logice

-variabile de tip logic

-alfa expresii logice

Operatori logici in ordinea prioritatii de evaluare sunt sintetizati in urmatorul tabel:

Operator

Semnificatie

Grupeaza expresiile logice

!, NOT

Negatie logica

AND

Si logic

OR

Sau logic

De asemenea rezultatul unei expresii care contine operatori relationali (<,>,=,<=, >=) este tot de tip logic.

Exemple:

? NOT (1=3) *afiseaza valoarea true ? (1<=4) AND (5<3)

.T. .F.

Tipul numeric

Tipul numeric este implementat astfel incat sa realizeze majoritatea operatiilor matematice intalnite in practica. De asemenea sunt prevazute o serie de functii matematice elementare cum ar fi exponentiala, logaritmul, functiile trigonometrice, etc. putandu-se astfel realiza calcule matematice mai complexe cu efort minim.

Operanzi numerici care intervin in expresii pot fi:

-campuri numerice ale unei baze de date

-functii care returneaza valori numerice

-varibile de tip numeric

-constante numerice

Operatorii care se aplica unor operanzi numerici, avand ca rezultate tot valori numerice, sunt prezentati in tabelul urmator, in ordinea prioritatilor de evaluare.

Operator

Semnificatie

Paranteze pentru gruparea expresiile

Ridicare la putere

Inmultire, impartire, modulo(restul impartirii)

Adunarea si scaderea

Prioritatea in acest tabel scade de sus in jos, pe acelasi nivel de prioritate evaluarea facandu-se de la stanga la dreapta, in ordinea aparitiei operatorilor in expresie.

Astfel o expresie de tipul: (2*3)^2 - 4 + 7%3*2 se evalueaza dupa cum urmeaza:

Intre doua expresii numerice se pot aplica de asemenea operatori relationali, obtinandu-se astfel expresii logice. Aceeasi operatori sunt prezentati in urmatorul tabel:

operator

relatie

<

Mai mic decat

>

Mai mare decat

Egal cu

<>, #, !=

Diferit de

<=

Mai mic sau egal cu

>=

Mai mare sau egal cu

Functia MOD(), avand sintaxa:

MOD (expN1, expN2)

Returneaza restul obtinut prin impartirea expresiei numerice expN1 la expresia expN2, rezultatul fiind de tip intreg.

Exemple:

? mod (38,6)

? mod (44.44, 11.11)

Afisarea numerelor este controlata de comanda set decimals care are urmatoarea sintaxa:

SET DECIMALS TO EXPN

Acesta comanda determina numarul minim de cifre zecimale ce sunt afisate daca nu se specifica un format explicit de afisare. Implicit acest numar este 2 dar acesta se poate schimba cu comanda SET DECIMALS specicificandu-se un alt numar prin expN.

Exemplu:

0.67

SET DECIMALS 4

? 2/3

0.6667

Observatie

Numarul de cifre cu care FoxPro lucreaza intern nu este afectat de comanda SET DECIMALS, acesta comanda controland doar aspectul exterior al rezultatului.

Functii referitoare la semnul datelor numerice

ABS(expN) - returneaza valoarea absoluta a expresiei expN

SIGN(expN) - returneaza:

+1 daca expresia expN este pozitiva

-1 daca expresia expN este negativa

daca expresia este nula.

Functii de aproximare a datelor numerice

INT (expN) - returneaza partea intrega a expresiei expN

Partea fractionara a unui numar se obtine astfel expN- INT(expN)

CEILING(expN) - returneaza cel mai apropiat intreg mai mare sau egal cu expN

FLOOR(expN) - returneaza cel mai apropiat intreg mai mic sau egal cu expN

ROUND(expN1, expN2) - aproximeaza expN1 cu un numar fix de zecimale dat de expN2.


Exemple:

? INT(14.46)    ? CEILING(8.32)

9

? CEILING(-4.23) ? FLOOR(8.32)

8

?FLOOR(-4.23)

Functii matematice elementare

EXP (expN) - calculeaza exponentiala epresiei expN adica eexpN

LOG(expN) - calucleaza logaritmul natural din expN

LOG10(expN) - calculeaza logaritmul zecimal din expN

SQRT(expN) - calculeaza radical din expN

Functii trigonometrice

PI() - returneaza valorea lui Pi adica unghiul de 180 grade exprimat in radiani

DTOR(expN) - face conversia din grade in radiani a expN

RTOD(expN) - face conversia din radiani in grade a expN

SIN(expN) - calculeaza sinusul expresiei expN in radiani

COS(expN) - calculeaza cosinusul expresiei expN in radiani

TAN(expN) - calculeaza tangenta expresiei expN in radiani

ASIN(expN) - calculeaza arcsinusul expresiei expN

ACOS(expN) - calculeaza arccosinusul expresiei expN

ATAN(expN) - calculeaza arctangenta expresiei expN

Functii referitoare la calcule financiare

In aceasta categorie de functii intra trei functii FoxPro si anume:

Payment(expN1, expN2, expN3)

PV(expN1, expN2, expN3)

FV(expN1, expN2, expN3)

Unde cele trei expresii numerice au semnificatii deosebite pentru fiecare functie in parte.

Exemplu:Sa presupunem ca avem de returnat un imprumut de 500000 unitati

monetare, suma pe care o avem depusa intr-o banca ce practica o rata a dobanzii de 1% lunar, adica la sfarsitul fiecarei luni la suma de bani pe care o avem momentan in banca se adauga l% din aceasta suma ca dobanda. Sa presupunem ca imprumutul trebuie returnat in rate lunare in 24 de luni.Ne intereseaza ce suma trebuie sa achitam lunar pentru a returna imprumutul in perioada de timp precizata.

Aceasta problema se rezolva cu functia Payment() avand urmatoarele corespondente:

ExpN1 - reprezinta valoarea imprumutului (500000)

ExpN2 - reprezinta rata dobanzii (0.01)

ExpN3 - reprezinta numarul de rate pentru achitarea imprumutului (24 rate lunare)

Valoarea returnata de functie reprezentand valoarea ce trebuie achitata lunar pentru a acoperi imprumutul.

Exemplu:

N1=500000

N2=0.01

N3=24

? PAYMENT(N1,N2,N3)

Urmatorul exemplu va ilustra folosirea functiei FV() in calculele financiare astfel:

Presupunem ca am deschis un cont la o banca ce practica o rata a dobanzii de 1% lunar. Initial contul este gol, dar ne propunem sa depunem o suma de 3000 unitati monetare. Ne intereseaza ce suma va avea in cont dupa un numar de 36 de luni de la deschiderea contului.

Aceasta valoare este returnata de functia FV() folosind ca parametrii

ExpN1 - suma ce se va depune lunar in cont

ExpN2 - rata dobanzii practicata de banca

ExpN3 - numarul de depuneri dupa care se calculeaza suma din cont (egal cu numarul de luni in cazul in care se face o singura depunere lunar)

Exemplu:

N1=3000

N2=0.01

N3=36

? FV(N1,N2,N3)

Exemplu: Presupunem ca avem un cont la o banca de practica o rata a dobanzii de

1%lunar. Propunandu-ne ca in curs de 48 de luni platind lunar din cont cate 4000 de unitati monetare ne intereseaza ce suma am putea acoperi din acest cont, presupunand ca dupa achitarea sumei contul va fi gol. Acesta valoare este returnata de functia PV() care are parametrii:

ExpN1 - suma ce se scoate lunar din cont (N1=4000)

ExpN2 - rata dobanzii practicata de banca (N2=0.01)

ExpN3 - numarul de luni in care se scot banii din banca (N3=48)

? PV(N1,N2,N3)



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1494
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