Documente online.
Username / Parola inexistente
  Zona de administrare documente. Fisierele tale  
Am uitat parola x Creaza cont nou
  Home Exploreaza
Upload




























FoxPro - Laborator nr. 1

Informatica




FoxPro - Laborator nr. 1

Tematica laboratorului :

1. Comenzi de bază ; Aplicații ;

2. Date, tipuri de date - tipul șir de caractere, funcții pentru prelucrarea șirurilor de caractere ; Aplicații ;




1.   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   Comenzi de bază

Comenzi referitoare la crearea/adăugarea/ afișarea informațiilor într-o tabelă:

·   &nbs 19419u207t p;    Crearea unei tabele:

CREATE nume_tabelă

Specificarea structurii unei tabele(Table Structure) presupune precizarea fiecărui câmp component al acestuia, împreună cu caracteristicile sale. Prin urmare trebuie precizate:

-   &nbs 19419u207t p;    numele câmpului (Name), reprezentând identificatorul prin care se va realiza accesul la acesta;

-   &nbs 19419u207t p;   &nbs 19419u207t p; tipul câmpului (Type), tipul datelor care vor fi memorate în câmpul respectiv. Ex: Character(șir de caractere), Numeric, Float(real), Date(dată calendaristică), Logical(logic), Memo, General, Imagine;

-   &nbs 19419u207t p;   &nbs 19419u207t p; lungimea câmpului (Width), specificând numărul maxim de caractere pe care îl pot ocupa datele memorate în câmpul respectiv;

-   &nbs 19419u207t p;   &nbs 19419u207t p; numărul de zecimale, (de cifre de după punctul zecimal), pentrul câmpurile de tip numeric;

OBS. Există o serie de câmpuri care au o lungime prestabilită, cum ar fi : data calendaristică - 8 caractere, logic - 1 caracter, memo și general - 10 caractere.

După specificarea structurii se cere confirmarea pentru introducerea înregistrărilor (Input dada records now?).

·   &nbs 19419u207t p;   &nbs 19419u207t p;  Adăugarea de înregistrări într-o tabelă;

APPEND

APPEND BLANK-> determină adăugarea unei înregistrări goale la sfârșitul tabelei.

Comanda determină deschiderea unei ferestre în care pot fi completate rând pe rând datele corespunzătoare noilor înregistrări ale tabelei.

·   &nbs 19419u207t p;   &nbs 19419u207t p;  Modificarea informațiilor din câmpul înregistrărilor

EDIT

BROWSE--> afișează conținutul tabelei pe verticală, ca o tabelă obișnuită;

·   &nbs 19419u207t p;    Activarea unei tabele

OBS. Pentru a se lucra cu o tabelă aceasta trebuie mai întâi să fie activată.

USE nume_tabelă

·   &nbs 19419u207t p;    Afișarea informațiilor ditr-o tabelă

LIST -> determină afișarea conținutului tabelei curente (toate înregistrările), într-un format tabelar, pe ecranul monitorului; dacăse dorește listarea la imprimantă, la comandă se adaugă clauza TO PRINTER; dacă se dorește trimiterea conținutului într-un fișier, la comandă se adaugă clauza TO FILE nume_fișier.

LIST FOR condiție -> afișează doar acele înregistrări care îndeplinesc condiția; dacă înregistrările trebuie să îndeplinească mai multe condiții, acestea sunt enumerate folosind operatorul logic AND.

LIST expresie1, expresie2 -> afișează valoarea expresie1, expresie2 (o expresie poate fi un câmp dintr-o tabelă, o variabilă sau o combinație între ele). In acest mod pot fi afișate selectiv numai anumite câmpuri ale unei tabele, eliminându-le din formatul de afișare pe acelea care nu prezintă interes momentan pentru utilizator.

DISPLAY -> afișează doar înregistrarea curentă;

OBS. La aceste două comenzi se va reveni !

APLICAȚII:

1.   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   a.)Să se creeze o tabelă numită Fructe, cu următoarele câmpuri:Nume_fruct (C10), Gust (C10), Culoare (C15), Forma (C15). S\ se adauge 10 articole în această tabelă.Să se afișeze fructele care au forma alungită.

b.)Să se creeze o tabelă cu numele aprozar cu următoarele câmpuri:Nume_fruct(C10), Cantitate (C10), Preț_kg (N5), Furnizor (C12). Să se adauge 10 înregistrări în această tabelă. Să se afișeze numele fructelor și prețul pe kg. pentru acele fructe pentru care pretul pe kg. este mai mare de 5000 lei.

c.)Sa se afișeze toate fructele care au culoarea "galbenă" și gustul "dulce".

2.   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;    Date. Tipuri de date - tipul șir de caractere. Funcții pentru tipul șir de caractere.



Tipul șir de caractere reprezintă o mulțime ordonată de caractere tratată ca un tot unitar.

Fiecărui caracter din și i se asociază o cifră reprezentând poziția acestuia în cadrul șirului (primul caracter poziția 1 ș.a.m.d.).

Numărul caracterelor dintr-un șir reprezintă lungimea șirului.

Un subșir al șirului dat reprezintă o porțiune dintr-un șir , începând de la o poziție specificată și de luncime dată.Constantele de tip șir de caractere se specifică prin mulțimea caracterelor ce le compun , încadrate între apostrofuri sau ghilimele (la ambele capete trebuie să avem același tip de delimitatori).

OPERATORI SPECIFICI ȘIRURILOR DE CARACTERE:

·   &nbs 19419u207t p;    operatori de concatenare:

-   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;   &nbs 19419u207t p;    operator de concatenare simplu, "+", face ca din două șiruri de caractere să se obțină un al treilea, prin alipirea celui de-al doilea la sfârșitul primului.

Ex: "strada_" + "George_Coșbuc" -> "strada_George_Coșbuc";

- operator de concatenare special, "-", asemănător cu operatorul de concatenare simplu cu deosebirea că blancurile de la sfârșitul primului șir sunt trecute la sfârșitul șirului al doilea.

Ex: "Salut " - " prieteni!" -> "Salut prieteni! " (Se obs. că spațiile de la începutul sirului 2 își păstrează poziția).

·   &nbs 19419u207t p;    operatori relaționali:

$ inclus în; ->returnează TRUE dacă primul șir este conținut de al doilea șir, altfel returnează FALSE. Ex: "calcul"$"calculator" returnează TRUE.

< mai mic decât;->returnează TRUE dacă expresia din stânga, de tip șir de caractere, este mai mică decât expresia din dreapta, de același tip.

OBS. Compararea a două șiruri se face astfel: se ia primul caracter din fiecare șir și se compară codurile ASCII corespunzătoare. Dacă primul caracter al primului șir va avea un cod ASCII mai mic decât codul ASCII al primului caracter din al doilea șir, atunci primul șir este mai mic decât al doilea șir.In caz de egalitate, se compară codurile ASCII ale caracterelor de pe poziția a doua a fiecărui șir, urmându-se același algoritm.

Dacă lungimea celor două șiruri diferă, șirul mai mic se completează cu caracterul cu codul ASCII 0 până la egalitatea lungimilor.

> mai mare decât;

<>, #, != diferit de;

<= mai mic sau egal;

>= mai mare sau egal;

== identic

Pentru operatorii de mai sus se aplică același algoritm de calcul.

Funcții pentru prelucrarea șirurilor de caractere.

·   &nbs 19419u207t p;    funcția LEN ( ) -> arată lungimea unui șir de caractere.

EX. ? LEN(,'București')

9

·   &nbs 19419u207t p;    funcția SUBSTR ( ) -> realizează extragerea unui subșir dintr-un șir.

Această funcție primește ca prim argument șirul din care se extrage subșirul.

Al doilea argument este un număr care indică poziția din cadrul șirului de bază de la care începe extragerea subșirului (indică prima poziție a subșirului).

Al treilea argument indică lungimea șirului ce se extrage.

Ex. ? SUBSTR(,'ABCDEF', 2,3)

BCD

? SUBSTR(,'Ziua bună' , 6)

bună,

·   &nbs 19419u207t p;    funcțiile LEFT ( ), RIGHT ( ) -> primesc doar un argument numeric, argument care indică numărul de caractere de extras din șir.

Funcția LEFT ( ) extrage un subșir din partea stângă a sirului de bază (începând cu primul caracter).

Functia RIGHT ( ) extrage un subșir din partea dreaptă a sirului de bază (începând cu ultimul caracter).

Ex. ? LEFT (,'O noapte furtunoasă' , 8)

O noapte

? RIGHT (,'O zi ploioasă' , 8)



ploioasă

·   &nbs 19419u207t p;    funcțiile REPLICATE ( ) și SPACE ( )

Funcția REPLICATE ( ) -> returnează un șir de caractere obținut prin repetarea șirului primit ca argument de un număr de ori, număr specificat ca al 2-lea argument.

Ex. ? REPLICATE (,'la ', 3)

la la la

Funcția SPACE ( ) -> returnează un șir de blancuri cu lungime egală cu numărul transmis ca parametru.

Ex. ? " "==SPACE (6)

.T.

funcția ALLTRIM ( ) -> elimină blancurile de la începutul și sfârșitul șirului de caractere .

funcția LTRIM ( ) -> elimină blancurile de la începutul șirului de caractere .

funcția TRIM ( ) și RTRIM ( ) -> elimină blancurile de la sfârșitul șirului de caractere .

Ex. ? ALLTRIM(,'   Teza ,')== Teza

.T.

? ,'Mă numesc ' + RTRIM (,'Ionescu ,') + ,' Daniel ,'

Mă numesc Ionescu Daniel

·   &nbs 19419u207t p;   funcțiile PADR( ), PADL( ), PADC( )-> au efect de adăugare de blancuri sau alte caractere la dreapta, la stânga sau la ambele capete a șirului specificat

Ex. ? PADC ('Centrata',20, ,'-')

------Centrata------

·   &nbs 19419u207t p;   funcția LOWER ( ) -> transformă toate majusculele în litere mici, restul caracterelor rămânând neschimbate.

·   &nbs 19419u207t p;   funcția UPPER ( ) -> transformă toate caracterele mici în majusculele corespunzătoare, restul caracterelor din șir rămânând neschimbate.

·   &nbs 19419u207t p;   funcția PROPER ( ) -> transformă primul caracter dintr-un șir în majusculă (dacă este literă) , iar următoarele în litere mici.

Ex.? PROPER (,'iONescu dANiel')

Ionescu Daniel

·   &nbs 19419u207t p;    funcția AT ( ) -> caută poziția unui subșir dintr-un șir dat, începând cu primul caracter și continuând cu următoarele (face diferență între majuscule și minuscule).

Ex. ? AT (,"Daniel","Cu Daniel")

4

·   &nbs 19419u207t p;   funcția OCCURS ( ) -> arată numărul de apariții ale subșirului în cadrul șirului respectiv.

Ex. ? OCCURS ("el", "Azi am vorbit cu Daniel la telefon.")

2

APLICAȚII:

a.)   &nbs 19419u207t p; Să se creeze o tabelă cu numele Personal cu următoarele câmpuri:Nume(C12), Prenume(C12), Pren_tata(C12), Nume_Pren(C25), Funcția(C10), Funcția(C10),Data_ang(D8). Să se introducă 7 înregistrări fără a se completa câmpul Nume_Pren. Să se completeze, printr-o singură comandă câmpul Nume_Pren pentru toți angajații, astfel încât acesta să conțină numele angajatului, inițiala tatălui și prenumele angajatului, separate printr-un spațiu. Numele și prenumele vor începe cu majusculă restul literelor fiind mici. Inițiala tatălui va fi scrisă cu majusculă. Ex. Florea T Ion.

b.)   &nbs 19419u207t p; Să se verifice efectul comenzilor:

? LEN (REPLICATE ("ALFA", 3)

? SUBSTR( "combinărilor",4,5)

? LTRIM(PROPER(PADL("la mulți ani",30,' ,'))+"!"










Document Info


Accesari: 1412
Apreciat:

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site

Copiaza codul
in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate




Copyright © Contact (SCRIGROUP Int. 2021 )