Nivelul inferior de prelucrare a fişierelor

Size: px
Start display at page:

Download "Nivelul inferior de prelucrare a fişierelor"

Transcription

1 INTRĂRI ŞI IEŞIRI Operaţiile de I/E în limbajul C se realizează prin intermediul unor funcţii din biblioteca standard a limbajului. Majoritatea operaţiilor de I/E se realizează în ipoteza că datele sunt organizate în fişiere. Prin fişier întelegem o colecţie ordonată de elemente, numite înregistrări, care sunt păstrate pe diferite suporturi externe. Cele mai utilizate suporturi pentru fişiere sunt cele magnetice (discuri, benzi magnetice); ele se numesc suporturi reutilizabile deoarece zona utilizată pentru a păstra înregistrările unui fişier poate fi ulterior reutilizată pentru a păstra înregistrările altui fişier. Datele introduse de la tastatura unui terminal, se consideră că formează un fişier de intrare. Înregistrarea în acest caz, de obicei este formată din datele tastate la terminal pe un rând, deci caracterul de rând nou (newline) este terminator de înregistrare. Analog, datele care se afişează pe terminal formează un fişier de ieşire. Înregistrarea, şi în acest caz, poate fi formată din caracterele unui rând. Datele care se scriu la imprimantă formează şi ele un fişier de ieşire. Un rând scris la imprimantă este o înregistrare. Un fişier are o înregistrare care marchează sfârşitul de fişier. În cazul fişierului de intrare de la tastatură sfârşitul de fişier se generează prin secvenţa: <Ctrl> Z De obicei, prin intrare standard se întelege tastatura terminalului de la care s-a lansat programul şi ieşirea standard este ecranul aceluiaşi terminal. Limbajul C permite operarea cu fişiere: de tip text ; un astfel de fişier este o succesiune de linii, separate prin Newline ( \n ) şi de tip binar ; un astfel de fişier conţine o succesiune de octeţi, fără nici o structură

2 Prelucrarea unui fişier presupune asocierea acestuia cu un canal de I/E (numit flux sau stream). Există două canale predefinite, care se deschid automat la lansarea unui program: stdin fişier de intrare, text, intrarea standard (tastatura) stdout fişier de ieşire, text, ieşirea standard (ecranul) Prelucrarea fişierelor implică operaţii specifice: deschiderea (orice fişier înainte de a fi prelucrat, trebuie deschis); închiderea (terminarea prelucrării unui fişier); crearea unui fişier, citirea (consultarea) înregistrărilor unui fişier, actualizarea unui fişier, adăugarea de înregistrări într-un fişier, poziţionarea într-un fişier, ştergerea unui fişier. Toate aceste operaţii pot fi realizate prin funcţii standard existente în biblioteca limbajului C. Tratarea fişierelor se poate face la două niveluri: - primul nivel face apel direct la SO, acesta este nivelul inferior de prelucrare a fişierelor, iar -al doilea nivel se realizează prin intermediul unor proceduri specializate de prelucrare a fişierelor care utilizează structuri speciale de tip FILE (fişier). Acesta este nivelul superior de prelucrare a fişierelor. Până acum am utilizat funcţii pentru prelucrarea la nivel superior a fişierelor standard de intrări /ieşiri la terminalul de la care s-a lansat programul. De exemplu, pentru a citi un şir de caractere (o înregistrare) am folosit funcţia gets, pentru a afişa o

3 înregistrare am folosit funcţia puts, iar pentru conversii din format intern în cel extern şi invers, am utilizat funcţiile scanf şi printf. Nivelul inferior de prelucrare a fişierelor Înainte de a face orice prelucrare asupra unui fişier, acesta trebuie deschis. Deschiderea unui fişier se realizează cu ajutorul funcţiei open. La revenirea din funcţie se returnează descriptorul de fişier, care este un număr întreg pozitiv. El identifică în continuare fişierul respectiv în toate operaţiile realizate asupra lui. Funcţia open are prototipul: int open (const char * cale, int acces); unde cale este un pointer spre un şir de caractere care defineşte calea spre fişierul care se deschide şi acces este o variabilă de tip întreg care poate avea una din următoarele valori: O_RDONLY ne arătă că fişierul se deschide numai în citire (read only); O_WRONLY indică faptul că fişierul se deschide numai în scriere (write only); O_RDWR determină deschidea fişierului în citire/scriere; O_APPEND determină deschiderea fişierului pentru adăugarea de înregistrări la sfârşitul lui; O_BINARY ne indică faptul că fişierul se prelucrează binar; O_TEXT arată că fişierul se prelucrează pe caractere, adică este de tip text. Aceste valori se pot combina cu ajutorul operatorului sau logic pe biţi ( ) De exemplu, O_RDWR O_BINARY va indica faptul că fişierul este deschis în citire/scrierea binară. În modul implicit se consideră că un fişier este de tip text, deci O_TEXT se poate

4 omite. Utilizarea funcţiei open în programe implică includerea fişierelor io.h şi fcntl.h: #include <io.h> #include <fcntl.h> Argumentul cale al funcţiei open trebuie să respecte convenţiile SO: MS DOS şi anume: numefişier.extensie dacă fişierul se află în directorul curent sau litera:\nume_1\nume_2\...\nume_k unde litera defineşte discul (A, B, C, D,...), iar nume_i reprezintă numele subdirectoarelor spre fişierul de lucru. Observaţii: Deoarece calea se include între ghilimele, caracterul \ se dublează. Dacă unul din parametrii este eronat, deschiderea eşuează; în acest caz funcţia open returnează valoarea -1. Apelul funcţiei open se realizează astfel: df = open (lista_par); unde df este o variabilă de tip întreg, numită descriptorul de fişier. Exemple: 1. char nume[] = fis1.dat ; int df; df = open (nume, O_RDONLY) 2. int d; d = open ( C:\\User\\Test.CPP, O_RDWR); Şirul de caractere ce reprezintă calea se păstrează într-o zonă de memorie specială rezervată şirurilor de caractere. Adresa de început a acestei zone de memorie se atribuie primului parametru al funcţiei open în momentul apelului. 3. int x;

5 x= open ( c:\\text\\text.h, O_APPEND); 4. int c; c = open ( exemplu.c, O_WRONLY); În acest caz, în directorul curent trebuie să existe fişierul exemplu.c; prin deschiderea lui numai în scriere, acesta se crează din nou, vechiul conţinut al fişierului se pierde. Pentru crearea unui fişier nou, se utilizează funcţia creat în locul funcţiei open. Acesta are prototipul: int creat (const char * calea, int mod); unde calea este un pointer spre un şir de caractere care defineşte calea spre fişierul care se deschide în creare, iar mod reprezintă un întreg care poate fi definit folosind următoarele constante simbolice: S_IREAD în acest caz, proprietarul poate citi fişierul; S_IWRITE în acest caz, proprietarul poate scrie în fişier; S_IEXE în acest caz, proprietarul poate executa programul conţinut în fişierul respectiv Aceşti indicatori pot fi combinaţi folosind operatorul sau logic pe biţi ( ) De exemplu, S_IREAD S_IWRITE Funcţia creat returnează descriptorul de fişier sau -1 în caz de eroare. Utilizarea funcţiei creat implică următoarele includeri de fişiere standard: #include <io.h> #include <stat.h> În cazul în care funcţia creat se foloseşte pentru a deschide un fişier existent, atunci acesta se va şterge, urmând ca în locul lui să se creeze fişierul nou. Fişierul de intrare/ieşire standard se deschide automat la lansarea programului în execuţie (deci ele nu trebuie deschise prin program de către programator). Descriptorul de fişier reprezentat de intrarea standard are valoarea zero (0), iar cel

6 reprezentat de ieşirea standard are valoarea unu (1) În plus, există o ieşire standard destinată afişării erorilor, care are ataşat un fişier cu descriptorul de fişier egal de doi (2). Nici acest fişier nu trebuie deschis de programator. O altă operaţie asupra unui fişier este operaţia de citire a informaţiilor dintr-un fişier. Citirea dintr-un fişier se realizează cu ajutorul funcţiei read, aceasta va returna numărul de octeţi citiţi din fişier sau -1 în caz de eroare. Prototipul funcţiei de citire este: int read (int df, void * zona, unsigned lung); unde df este descriptorul de fişier returnat de funcţia open la deschiderea fişierului respectiv; zona este un pointer spre zona de memorie în care se păstrează înregistrarea citită din fişier şi lung reprezintă lungimea în octeţi a înregistrării citite. La fiecare apel al funcţiei read, se citeşte înregistrarea curentă. La un apel al funcţiei read se citesc cel mult lung octeţi. La întâlnirea sfârşitului de fişier funcţia read returnează zero. Dacă lung = 1, atunci la apelul funcţiei read se citeşte un singur octet din fişier (acest lucru nu este avantajos); o valoare utilizată frecvent pentru lung este 512. Funcţia read poate fi folosită pentru a citi caracterele de la intrarea standard. Astfel, descriptorul de fişier are valoarea 0 la apelul funcţiei read. Utilizarea funcţiei read implică includerea fişierului io.h Scrierea într-un fişier se realizează cu ajutorul funcţiei write. Pentru a putea scrie într-un fişier, acesta trebuie să fie în prealabil deschis cu funcţia open sau creat. Funcţia write este asemănătoare cu funcţia read, diferenţa constă în modul de transfer al datelor, adică din zona de memorie spre care pointează cel de-al doilea parametru al ei, în fişier. Funcţia write returează numărul de octeţi scrişi în fişier,

7 adică o valoare care coincide cu valoarea celui de-al treilea parametru al ei. Dacă funcţia returnează o altă valoare decât valoarea celui de-al treilea parametru din apel, înseamnă că scrierea a fost eronată. Prototipul funcţiei write este: int write (int df, void * zona, unsigned lung); Funcţia write poate fi folosită pentru a scrie la cele două ieşiri standard, folosind descriptorii de fişier de valoare 1 sau 2. Operaţiile de I/E se execută secvenţial. Înregistrarile se scriu una după alta pe suportul fişierului, iar la citire, se citesc în aceeiaşi ordine în care au fost scrise la crearea fişierului, acest mod de acces la datele unui fişier poartă numele de acces secvenţial. Problema care se ridică acum este modalitatea de poziţionare într-un fişier, pentru a avea acces la o anumită înregistrare. Pentru fişierele care se prelucrează la nivel inferior există posibilitatea poziţionării aleatoare pe suporturile de tip disc magnetic, folosind funcţia lseek; aceasta are prototipul long lseek (int df, long deplasament, int origine); unde df este descriptorul de fişier, deplasament este numărul de octeţi peste care se va deplasa capul de citire-scriere al discului, iar origine are una din valorile: SEEK_SET = 0 ceea ce înseamnă că deplasamentul se consideră de la începutul fişierului SEEK_CUR = 1 înseamnă că deplasamentul se consideră din poziţia curentă a capului de citire/scriere SEEK_END = 2 arată că deplasamentul se consideră de la sfârşitul fişierului. Funcţia returnează poziţia capului de citire-scriere în număr de octeţi, faţă de începutul fişierului. În caz de eroare, se returnează -1L. Utilizarea funcţiei lseek implică includerea fişierului io.h în programul corespunzător. După terminarea tuturor operaţiilor asupra unui fişier acesta trebuie închis.

8 Închiderea unui fişier se realizează prin funcţia close. Închiderea unui fişier se realizează automat dacă programul se termină prin apelul funcţiei exit. Fişierele corespunzătoare intrărilor şi ieşirilor standard nu se închid de către programator. Funcţia close are prototipul: int close (int df); unde df este descriptorul de fişier ce identifică fişierul care se închide. La o închidere normală a fişierului, funcţia returnează 0, în caz de eroare ea va returna -1. Utilizarea funcţiei close implică includerea fişierului io.h. Exemplu de utilizare a funcţiilor prezentate: Să se scrie un program care citeşte un şir de numere de la intrarea standard şi creează două fişiere: fis1.dat şi fis2.dat, primul conţine numerele de ordin impar citite, iar cel deal doilea conţine numerele de ordin par citite. Să se afişeze conţinutul fişierelor astfel create. #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <fcntl.h> #include <io.h> #include <sys\stat.h> int main() union unr float nr; char tnr[sizeof(float)]; ; union unr nrcit;

9 int df1,df2; int i,j; /* se deschid fisierele fis1.dat si fis2.dat in creare cu acces in citire-scriere */ if((df1=creat("fis1.dat",s_iwrite S_IREAD))==-1) printf("nu se poate deschide fisierul fis1.dat in creare \n"); if((df2=creat("fis2.dat",s_iwrite S_IREAD))==-1) printf("nu se poate deschide fisierul fis2.dat in creare \n"); /* se citeste sirul de numere si se depune in fisiere */ j=1; printf("tastati nr. separarte prin caractere albe \n"); while((scanf("%f",&nrcit.nr))==1) if(j&1) if(write(df1,nrcit.tnr,sizeof(float))!=sizeof(float)) printf("eroare la crearea fisierului fis1.dat \n"); else /* j este par */ if(write(df2,nrcit.tnr,sizeof(float))!=sizeof(float))

10 printf("eroare la crearea fisierului fis2.dat \n"); j++; /* s-a terminat crearea, se inchid fisierele */ if(close(df1)<0) printf("eroare la inchiderea fisierului fis1.dat \n"); if(close(df2)<0) printf("eroare la inchiderea fisierului fis2.dat \n"); /* se deschide fis1.dat si se afiseaza continutul */ if((df1=open("fis1.dat",o_rdonly))==-1) printf("nu se poate deschide fisierul fis1.dat \n"); while((i=read(df1,nrcit.tnr,sizeof(float)))>0) printf("%g\t",nrcit.nr); if(i<0) printf("eroare la citirea fisierului \n");

11 close(df1); printf("\n"); getch(); /* la fel pentru fis2.dat */ if((df2=open("fis2.dat",o_rdonly))==-1) printf("nu se poate deschide fisierul fis2.dat \n"); while((i=read(df2,nrcit.tnr,sizeof(float)))>0) printf("%g\t",nrcit.nr); if(i<0) printf("eroare la citirea fisierului \n"); close(df2); printf("\n"); return 0;

Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct.

Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct. Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct. Avantajul lucrului cu fisiere este evident, datele rezultate în urma

More information

Laborator 5 Instrucțiunile repetitive

Laborator 5 Instrucțiunile repetitive Laborator 5 Instrucțiunile repetitive Instrucțiunea for Instrucțiunea for permite repetarea unei secvențe de instrucțiuni atâta timp cât o condiție este îndeplinita. În plus, oferă posibilitatea execuției

More information

1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului n.

1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului n. Observatii: Codul de mai jos a fost realizat si testat pe pagina online: https://www.tutorialspoint.com/compile_pascal_online.php 1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului

More information

Alocarea memoriei în C sub Linux

Alocarea memoriei în C sub Linux Costel Aldea Alocarea memoriei în C sub Linux Sunt trei funcţii C standard care se pot folosi pentru a aloca memorie: malloc(), calloc(), si realloc(). Prototipurile lor, după cum sunt definite în stdlib.h:

More information

Probleme consultații 20 ianuarie 2018

Probleme consultații 20 ianuarie 2018 Algoritmi elementari Probleme consultații 20 ianuarie 2018 Problema 1: zerouri factorial Enunt Fiind dat un numar natural n, sa se determine numarul de cifre 0 cu care se termină factorialul numărului

More information

Rezolvare fişă de laborator Java Iniţiere în limbajul Java

Rezolvare fişă de laborator Java Iniţiere în limbajul Java Rezolvare fişă de laborator Java Iniţiere în limbajul Java Ex 1: Scrie următorul program Java folosind JCreator apoi încercă să-l înţelegi. public class primulprg System.out.println("Acesta este primul

More information

Operații de intrare/ieșire în C++

Operații de intrare/ieșire în C++ Operații I/O în limbajul C++ Operații de intrare/ieșire în C++ Mihai Gabroveanu Limbajul C++ moștenește de la C funcțiile de I/O Dezavantaj: permit manipularea doar a tipurilor de bază Limbajul C++ introduce

More information

Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte

Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte Probleme rezolvate: Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Programul urmator (LotoConstante.java)

More information

Capitolul 8 Funcţii în limbajul C

Capitolul 8 Funcţii în limbajul C Obiectiv: stabilirea avantajelor pe care le aduce în programarea structurată folosirea funcţiilor. Activităţi: - Prezentarea funcţiilor definite de utilizator - Descrierea parametrilor formali şi a parametrilor

More information

Siruri de caractere. 1.1 Folosirea şirurilor

Siruri de caractere. 1.1 Folosirea şirurilor Informatica clasa a X-a 1 Siruri de caractere 1.1 Folosirea şirurilor Cea mai comună utilizare a tabloului unidimensional în limbajul C/C++ este şirul (de caractere). Spre deosebire de multe alte limbaje

More information

Utilizarea formularelor in HTML

Utilizarea formularelor in HTML Utilizarea formularelor in HTML Formulare Un formular este constituit din elemente speciale, denumite elemente de control (controls), cum ar fi butoane radio, butoane de validare, câmpuri text, butoane

More information

Se cer 2 variante: una cu implementarea statica si a doua cu implementarea dinamica a structurilor de date necesare. Comentati variantele.

Se cer 2 variante: una cu implementarea statica si a doua cu implementarea dinamica a structurilor de date necesare. Comentati variantele. Lucrarea 1 SDA 03.04.2017 Sa se realizeze urmatoarele programe, in limbaj C: 1. Se primesc de la intrarea standard: un numar k si un sir infinit de numere naturale a i. Se afiseaza la iesirea standard,

More information

Memorator funcţii predefinite C++ Funcţii matematice

Memorator funcţii predefinite C++ Funcţii matematice Funcţii matematice Funcţia Prototipul funcţiei Fişierul pow(x,y) double pow (double x,double y); long double pow ( long double x, long double y); float pow (float x,float y); double pow (double x, int

More information

Fisiere text in Java.

Fisiere text in Java. Fisiere text in Java. Doru Anastasiu Popescu Prelucrarea fisierelor text in Java Aspecte teoretice: http://cursuri.cs.pub.ro/~poo/wiki/index.php/input/output http://upm.ro/intranet/ecalin/cd_educational/cd/javac/cap3.htm

More information

Operatii IO simple. Fisiere. Sisteme de fisiere. Continut

Operatii IO simple. Fisiere. Sisteme de fisiere. Continut Operatii IO simple Continut 1 Fisiere. Sisteme de fisiere 2 Operatii pe fisiere 3 Operatii pe fisiere în Linux 3.1 Crearea, deschiderea si închiderea fisierelor 3.1.1 open 3.1.2 creat 3.1.3 close 3.2 Scrierea

More information

Controlul intreruperilor (semnalelor) in Shell

Controlul intreruperilor (semnalelor) in Shell Controlul intreruperilor (semnalelor) in Shell In mod normal o procedura Shell se termina daca primeste o intrerupere de la terminal ( de regula prin CTRL-C). Comanda trap Scop: Controleaza modul de comportare

More information

Capitolul IB.03. Funcţii de intrare/ieşire în limbajul C

Capitolul IB.03. Funcţii de intrare/ieşire în limbajul C Capitolul Cuvinte-cheie Funcţii de intrare/ieşire caractere, funcţii de intrare/ieşire şiruri de caractere, citire/scriere cu format IB.03.1 Funcţii de intrare/ieşire în C În limbajul C, nu există instrucţiuni

More information

Lucrarea nr.9 SUPRAÎNCĂRCAREA OPERATORILOR

Lucrarea nr.9 SUPRAÎNCĂRCAREA OPERATORILOR Lucrarea nr.9 SUPRAÎNCĂRCAREA OPERATORILOR Ca şi în C, limbajul C++ are posibilitatea supraîncărcării funcţiilor şi operatorilor. Mai exact, unei funcţii (metode) i se conferă posibilitatea de a înţelege

More information

Ingineria Sistemelor de Programare. UML Diagrama Cazurilor de Utilizare 2016

Ingineria Sistemelor de Programare. UML Diagrama Cazurilor de Utilizare 2016 Ingineria Sistemelor de Programare UML Diagrama Cazurilor de Utilizare mihai.hulea@aut.utcluj.ro 2016 Introducere UML UML UML = Unified Modeling Language Dezvoltat in cadrul Object Management Group In

More information

Tablouri de date. Tablouri unidimensionale(siruri de date sau vectori)

Tablouri de date. Tablouri unidimensionale(siruri de date sau vectori) Tablouri de date Tablouri unidimensionale(siruri de date sau vectori) I. Operaţii asupra şirurilor de date monodimensionale Definiţie Tablou = succesiune de locaţii de memorie recunoscute prin acelaşi

More information

Laborator 1 Java. Citirea datelor de la tastatura si afisarea datelor pe ecran

Laborator 1 Java. Citirea datelor de la tastatura si afisarea datelor pe ecran Laborator 1 Java Citirea datelor de la tastatura si afisarea datelor pe ecran In limbajul Java nu exista instructiuni specializate pentru citirea/scrierea datelor. Aceste operatii se realizeaza prin intermediul

More information

Gestionarea memoriei dinamice. Tablouri şi şiruri de caractere. Conversii de date. Operaţii de intrare / ieşire

Gestionarea memoriei dinamice. Tablouri şi şiruri de caractere. Conversii de date. Operaţii de intrare / ieşire Lucrarea 3 Gestionarea memoriei dinamice. Tablouri şi şiruri de caractere. Conversii de date. Operaţii de intrare / ieşire Cuprins Simbolul this...1 Colectorul de reziduuri (Garbage Collector)...4 Transmiterea

More information

Introducere in AutoCAD 3D

Introducere in AutoCAD 3D Introducere in AutoCAD 3D Eu obisnuiesc sa spun ca diferenta dintre AutoCAD 2D si AutoCAD 3D este doar de 15 minute deoarece totul se reduce doar la a intelege cum functioneaza acest 3D si sistemul de

More information

Laborator 10. SGBD-ul MySQL (partea I)

Laborator 10. SGBD-ul MySQL (partea I) Laborator 10 SGBD-ul MySQL (partea I) 1. Introduceţi următoarea secvenţă PHP: $dbh = mysql_connect("localhost", "Costica", "mypass") or die("unable to connect to MySQL"); $selectdb = mysql_select_db('lucrudb');

More information

STRUCTURI DE DATE SI ALGORITMI LABORATOR 2 STIVA I. ASPECTE TEORETICE

STRUCTURI DE DATE SI ALGORITMI LABORATOR 2 STIVA I. ASPECTE TEORETICE STIVA I. ASPECTE TEORETICE O stiva este o lista simplu inlantuita gestionata conform principiului LIFO (Last In First Out). Conform acestui principiu, ultimul nod pus in stiva este primul nod care este

More information

Şirurile de caractere sunt de fapt succesiuni de caractere. Am învăţat deja să memorăm succesiuni de caractere cu ajutorul tablourilor.

Şirurile de caractere sunt de fapt succesiuni de caractere. Am învăţat deja să memorăm succesiuni de caractere cu ajutorul tablourilor. 3. Şiruri de caractere 3.1. Declararea şi memorarea vectorilor de caractere Şirurile de caractere sunt de fapt succesiuni de caractere. Am învăţat deja să memorăm succesiuni de caractere cu ajutorul tablourilor.

More information

Programarea calculatoarelor

Programarea calculatoarelor Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Programarea calculatoarelor Lect. dr. Adrian Runceanu Curs 10 13.11.2013 Programarea

More information

1. Funcţii referitoare la o singură înregistrare (single-row functions)

1. Funcţii referitoare la o singură înregistrare (single-row functions) Laborator 4 Limbajul SQL 1. Funcţii referitoare la o singură înregistrare (single-row functions) 2. Funcţii referitoare la mai multe înregistrări (multiple-row functions) 1. Funcţii referitoare la o singură

More information

Şiruri de caractere System.String string Verbatim verbatim verbatim Exemplu

Şiruri de caractere System.String string Verbatim verbatim verbatim Exemplu Şiruri de caractere Pentru reprezentarea şirurilor de caractere, în limbajul C#, tipul de date utilizat este clasa System.String (sau aliasul string). Se definesc două tipuri de şiruri: regulate de tip

More information

1. Citirea datelor de la tastatura si afisarea datelor pe ecran

1. Citirea datelor de la tastatura si afisarea datelor pe ecran Laborator 6 Java 1. Citirea datelor de la tastatura si afisarea datelor pe ecran In limbajul Java nu exista instructiuni specializate pentru citirea/scrierea datelor. Aceste operatii se realizeaza prin

More information

Fișiere de comenzi (BAT) sub DOS

Fișiere de comenzi (BAT) sub DOS L3 Fișiere de comenzi (BAT) sub DOS Un fișier de comenzi este un fisier text care conține una sau mai multe comenzi si / sau directive care se execută succesiv, fară intervenția directă a utilizatorului.

More information

Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect).

Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect). Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect). Supraîncărcarea numelui de funcţii (overloading) In C nu este permisa

More information

Programare orientată obiect

Programare orientată obiect UNIVERSITATEA BABEŞ-BOLYAI Facultatea de Matematică şi Informatică Programare orientată obiect Curs 12 Laura Dioşan Operaţii de intrare/ieşire (IO) Fişiere de I/O Biblioteci standard Biblioteca Standard

More information

LUCRAREA NR. 6 POINTERI

LUCRAREA NR. 6 POINTERI LUCRAREA NR. 6 POINTERI Un pointer este o variabilă care păstrează adresa unui obiect de tip corespunzător. Forma generală pentru declararea unei variabile pointer este: tip * nume_variabila; unde tip

More information

Programarea calculatoarelor

Programarea calculatoarelor Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Programarea calculatoarelor Lect. dr. Adrian Runceanu Curs 10 05.05.2014 Programarea

More information

Stiva - continuare. Implementare prin listă înlănţuită. Lect. dr. Gabriela Trimbitas

Stiva - continuare. Implementare prin listă înlănţuită. Lect. dr. Gabriela Trimbitas Stiva - continuare Implementare prin listă înlănţuită 1 head T O R head T O R head NEW head O D R head O R D O R Ştergerea/Inserarea unui nod într-o stivă 2 Acest cod implementează TAD STIVĂ prin listă

More information

Lenuta Alboaie Reţele de calculatoare

Lenuta Alboaie Reţele de calculatoare Programarea in retea - OOB- Lenuta Alboaie adria@info.uaic.ro 1 Cuprins Trimiterea si receptarea datelor in regim 2 Ideea: in timpul unei conexiuni cind sunt transmise date ( inband data ), si daca la

More information

Tipuri de date structurate

Tipuri de date structurate Tipuri de date structurate Problema 1 Să se citească un șir A de la tastatură, citirea șirului se termina la introducerea valorii 0. Să se construiască și să se tipărească șirul B de perechi (element,

More information

PROGRAMARE ORIENTATĂ PE OBIECTE

PROGRAMARE ORIENTATĂ PE OBIECTE Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu PROGRAMARE ORIENTATĂ PE OBIECTE Lector dr. Adrian Runceanu 03.01.2014 1 Curs 15 Limbajul

More information

Laborator 3 Java. Introducere in programarea vizuala

Laborator 3 Java. Introducere in programarea vizuala Laborator 3 Java Introducere in programarea vizuala 1. Pachetele AWT si Swing. 2. Ferestre 3.1. Introduceti urmatorul program JAVA: public class Pv public static void main(string args[ ]) JFrame fer=new

More information

Lucrarea nr. 2. Funcţii şi structuri în C++

Lucrarea nr. 2. Funcţii şi structuri în C++ Lucrarea nr. 2 Funcţii şi structuri în C++ Pe măsură ce programele cresc in complexitate şi dimensiune, ele trebuiesc împărţite în fragmente mai mici şi mai uşor de gestionat numite funcţii. Funcţiile

More information

Operatori. Comentarii. Curs 1

Operatori. Comentarii. Curs 1 Operatori atribuirea: = operatori matematici: +, -, *, /, % Este permisa notatia prescurtata de forma lval op= rval (ex: n += 2) Exista operatorii pentru autoincrementare si autodecrementare (post si pre)

More information

GDB. Rulare gdb. Comenzi de bază GDB GDB. GDB poate fi folosit în două moduri pentru a depana programul:

GDB. Rulare gdb. Comenzi de bază GDB GDB. GDB poate fi folosit în două moduri pentru a depana programul: GDB GDB Rulare gdb GDB poate fi folosit în două moduri pentru a depana programul: rulându-l folosind comanda gdb folosind fişierul core generat în urma unei erori grave (de obicei segmentation fault) Cea

More information

1.Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare apeluluif(121,1)? void f(long n, int i) { if(n!=0) if(n%3>0) { cout<<i;

1.Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare apeluluif(121,1)? void f(long n, int i) { if(n!=0) if(n%3>0) { cout<<i; 1.Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare apeluluif(121,1)? void f(long n, int i) { if(n!=0) if(n%3>0) { cout

More information

Laborator 4 Java Colectii

Laborator 4 Java Colectii Laborator 4 Java Colectii Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Urmatorul exemplu foloseste diferite clase de colectii si adauga cate un element in aceste colectii import

More information

Introducere în C B. Kernighan, D. Richie-Limbajul C 1. Despre C. Primul program

Introducere în C B. Kernighan, D. Richie-Limbajul C 1. Despre C. Primul program B. Kernighan, D. Richie-Limbajul C 1. Despre C. Primul program 2. Variabile şi expresii aritmetice 3. Instrucțiunea for 4. Constante simbolice 5. Citirea şi scrierea caracterelor 6. Tablouri 7. Funcții

More information

Programarea calculatoarelor. C++ Siruri de caractere # 10. Adrian Runceanu

Programarea calculatoarelor. C++ Siruri de caractere # 10. Adrian Runceanu Programarea calculatoarelor # 10 C++ Siruri de caractere 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 10 21.11.2016 Programarea calculatoarelor 2 Capitolul 8. Şiruri de caractere 8.1. Formă generală.

More information

Probleme propuse pentru Testul de Laborator Semestrul I

Probleme propuse pentru Testul de Laborator Semestrul I Probleme propuse pentru Testul de Laborator Semestrul I Problema 1: Scrieti un program in C pentru rezolvarea ecuatiei de gradul 1 cu coeficienti reali. Valorile coeficientilor se citesc de la tastatura.

More information

Proiectarea bazelor de date. PL/SQL Proceduri în PL/SQL(partea II-a) # 9. Adrian Runceanu

Proiectarea bazelor de date. PL/SQL Proceduri în PL/SQL(partea II-a) # 9. Adrian Runceanu Proiectarea bazelor de date # 9 PL/SQL Proceduri în PL/SQL(partea II-a) 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 9 Proceduri în PL/SQL Proiectarea bazelor de date 2 Cuprins Proceduri în PL/SQL

More information

Programarea Calculatoarelor. Cursul 1: Concepte introductive. Tipuri de date. Funcții de intrare/ieșire

Programarea Calculatoarelor. Cursul 1: Concepte introductive. Tipuri de date. Funcții de intrare/ieșire Programarea Calculatoarelor Cursul 1: Concepte introductive. Tipuri de date. Funcții de intrare/ieșire Ion Giosan Universitatea Tehnică din Cluj-Napoca Departamentul Calculatoare Cadre didactice Curs Ion

More information

JavaScript - Intorducere. Și nu numai...

JavaScript - Intorducere. Și nu numai... JavaScript - Intorducere Și nu numai... Ce facem azi Nu o sa va vină să credeți. Pe foaia albă vă scrieți numele și prenumele ȘI Povestim despre JavaScript Exemple de aplicare discutii și surprize mici

More information

Sfaturi de bună practică

Sfaturi de bună practică Sfaturi de bună practică pentru concurenţii OJI / ONI 2014 Elevii care vor participa la Olimpiada Judeţeană/Naţională de Informatică trebuie să aibă în vedere următoarele: A) Pentru evitarea erorilor la

More information

Birotică Profesională. Cursul 12

Birotică Profesională. Cursul 12 Birotică Profesională Cursul 12 Sumar Visual Basic for Applications (VBA) Tipuri de date Structuri de control Funcţii si proceduri Obiecte si colecţii VBA Mediu de programare destinat in special realizării

More information

Programarea calculatoarelor

Programarea calculatoarelor Programarea calculatoarelor #3 C++ Elemente introductive ale limbajului C++ 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 3 Elemente introductive ale limbajului C++ 02.11.2016 Curs - Programarea calculatoarelor

More information

ELEMENTELE DE BAZA ALE LIMBAJULUI C++ 1. CITIRI, SCRIERI. Implementarea algoritmilor Limbajul C++ Informatică

ELEMENTELE DE BAZA ALE LIMBAJULUI C++ 1. CITIRI, SCRIERI. Implementarea algoritmilor Limbajul C++ Informatică ELEMENTELE DE BAZA ALE LIMBAJULUI C++ Un program scris in C++ este alcatuit din una sau mai multe functii. Fiecare functie are mai multe instructiuni in C++ care codifica algoritmul programului. Instructiunile

More information

Instructiuni de control

Instructiuni de control Instructiuni de control Introducerea caracterelor de la tastatura Instructiuni de selectie (if, switch) Instructiuni repetitive (for, while, dowhile, foreach) Instructiuni de salt (break, continue, goto,

More information

CONFIGURAREA UNUI SERVER IRC IN LINUX. Bica Bogdan *

CONFIGURAREA UNUI SERVER IRC IN LINUX. Bica Bogdan * CONFIGURAREA UNUI SERVER IRC IN LINUX Bica Bogdan * In this exemple i show how to configure an irc server based on ircd dameon named ircu.this is the main file name ircd.conf and the most important.configure

More information

Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP

Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP De ce ebgp? De ce ibgp?

More information

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace

More information

8. Tablouri. 8.1 Tipuri de dată simple şi tipuri de dată structurate

8. Tablouri. 8.1 Tipuri de dată simple şi tipuri de dată structurate 8. Tablouri Tablourile (arrays) reprezintă un tip important de structură de date şi sunt colecţii de obiecte de acelaşi tip reunite sub un singur nume. Uneori este necesar să referim anumite variabile

More information

Operaţii de intrare/ieşire în C++

Operaţii de intrare/ieşire în C++ Cursul 13 Operaţii de intrare/ieşire în C++ In mod obişnuit, un program de calcul citeşte o serie de date de la tastatură sau de pe disc şi le transferă în memoria internă alocată programului, le prelucrează

More information

SECTION 5 L1 - Group By and Having Clauses

SECTION 5 L1 - Group By and Having Clauses SECTION 5 L1 - Group By and Having Clauses Clauza Group By 1. SELECT department_id, AVG(salary),MAX(salary) 2. SELECT job_id, last_name, AVG(salary) GROUP BY job_id; ORA-00979: not a GROUP BY expression

More information

Aplicatii JAVA. JAVA Excepții în Java # 7. Adrian Runceanu

Aplicatii JAVA. JAVA Excepții în Java # 7. Adrian Runceanu Aplicatii JAVA # 7 JAVA Excepții în Java 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 7 Excepții în Java 24.03.2017 Curs - Aplicatii Java 2 Excepții în Java 1. Ce sunt excepțiile? 2. Avantajele excepțiilor

More information

informatii despre exceptia respectiva starea programului în momentul producerii acelei exceptii

informatii despre exceptia respectiva starea programului în momentul producerii acelei exceptii Curs 3 Exceptii Ce sunt exceptiile? Avantajele exceptiilor "Prinderea" si tratarea exceptiilor (Instructiunile try-catch-finally) "Aruncarea" exceptiilor (Clauza throws, Instructiunea throw) Ierarhia claselor

More information

Programarea calculatoarelor

Programarea calculatoarelor Limbajul C CURS 3 Instrucţiuni C continuare curs 2 Alte instrucţiuni C Instrucţiunea break >ieşire forţată din ciclu sau switch Salt după instrucţiunea din care a ieşit Instrucţiunea continue ->continuă

More information

// tip reprezintă tipul de bază al pointerului şi va indica tipul //datei memorate

// tip reprezintă tipul de bază al pointerului şi va indica tipul //datei memorate Pointeri. Şiruri decaractere. Un pointer este o dată care are ca valori adrese de memorie. Pointerii sunt utilizańi în general: în lucrul cu tablouri la transmiterea parametrilor în funcńii pentru accesarea

More information

1 Laborator 3: Liste Circulare si Liste Dublu Inlantuite

1 Laborator 3: Liste Circulare si Liste Dublu Inlantuite 1.1 Obiective În lucrare sunt prezentate principalele operaţii asupra listelor circulare simplu înlănţuite: crearea, inserarea unui nod, ştergerea unui nod şi ştergerea listei. În a ua parte vor fi prezentate

More information

Curs 5. Programare Paralela si Distribuita. Forme de sincronizare - Java. Curs 5 - PPD 1

Curs 5. Programare Paralela si Distribuita. Forme de sincronizare - Java. Curs 5 - PPD 1 Curs 5 Programare Paralela si Distribuita Forme de sincronizare - Java Curs 5 - PPD 1 Monitor in Java Fiecare obiect din Java are un mutex care poate fi blocat sau deblocat in blocurile sincronizate: Bloc

More information

1. C şi C++ un tur de orizont.

1. C şi C++ un tur de orizont. 1. C şi C++ un tur de orizont. 1.1. Structura unui program C foarte simplu Un limbaj de programare reprezintă o interfaţă între problema de rezolvat şi programul de rezolvare. Limbajul de programare, prin

More information

Error! Bookmark not defined.

Error! Bookmark not defined. SEMINAR 06 CONTENTS Enuntul Problemei... 1 Repository... 2 Memory... 2 XML... 3 GUI... 4 Forma Selectie... 4 Forma Programator... 5 Forma Tester... 6 Java... 7 Mecanismul de Transmitere al Evenimentelor

More information

Capitolul 1. Arhitectura Oracle. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 1. Arhitectura Oracle. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 1 Arhitectura Oracle 1 Serverul ORACLE Este un sistem de gestiune a bazelor de date relationale Userul poate lucra: Cu un client pe aceeasi masina cu serverul (de exemplu un client SQL*Plus ruland

More information

Aplicații JAVA. Lect.dr. Adrian Runceanu

Aplicații JAVA. Lect.dr. Adrian Runceanu Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Aplicații JAVA Lect.dr. Adrian Runceanu Curs 6 Colecții în Java 01.04.2015 Curs - Aplicatii

More information

Curs practic de Java

Curs practic de Java Curs practic de Java Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Internaţionalizarea Curs practic de Java p.1/1 Cuprins Introducere Clasa Locale Formatarea

More information

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace

More information

CURS 7. Pointeri. - specifice limbajelor de asamblare

CURS 7. Pointeri. - specifice limbajelor de asamblare CURS 7 Pointeri - tipuri speciale de variabile sau constante care au ca valori adrese ale unor alte variabile sau constante (adrese ale unor locaţii de memorie) - permit calcule cu adrese - specifice limbajelor

More information

Dispozitive de intrare iesire

Dispozitive de intrare iesire Dispozitive de intrare iesire - Curs 8-23.11.2005 Universitatea POLITEHNICA Bucureşti La ce ne referim? dispozitive de intrare/iesire (I/O devices): tastatura, mouse, monitor, imprimanta, placa de retea,

More information

2. Noţiuni pregătitoare sistemul de operare Linux

2. Noţiuni pregătitoare sistemul de operare Linux Noţiuni pregătitoare sistemul de operare Linux 2. Noţiuni pregătitoare sistemul de operare Linux 2.1. Cuprins modul 2. Noţiuni pregătitoare sistemul de operare Linux... 1 2.1. Cuprins modul... 1 2.1. Prezentarea

More information

Variabile predefinite

Variabile predefinite Php(2) Variabile predefinite Variabile predefinite $GLOBALS = pot fi accesate toate variabilele globale care sunt accesibile scriptului PHP curent $_SERVER = contine o serie de variabile ale caror valori

More information

1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea)

1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea) 1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea) 2. Sa se implementeze functia logica data de urmatorul tabel de adevar folosind numai

More information

[LABORATOR DE PROGRAMARE C++] Aritoni Ovidiu. Algoritmi STL

[LABORATOR DE PROGRAMARE C++] Aritoni Ovidiu. Algoritmi STL Algoritmi STL 1. Prezentare generală 2. Clasificare: Algoritmi nechirurgicali ; Algoritmi chirurgicali ; Algoritmi de sortare; Algoritmi generali; 3. Algoritmi nechirurgicali (Non-mutating algorithms)

More information

COLEGIUL TEHNIC VICTOR UNGUREANU CÂMPIA TURZII INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003

COLEGIUL TEHNIC VICTOR UNGUREANU CÂMPIA TURZII INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003 INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003 DNS (Domain Name Service) este un protocol care translateaza numele de domenii in adrese IP. De exemplu numele de domeniu www.google.ro

More information

Thread-uri. Continut. Thread-uri 1

Thread-uri. Continut. Thread-uri 1 Thread-uri Continut 1 Prezentare teoretică 1.1 Introducere 1.1.1 Diferente dintre thread-uri şi procese 1.2 Avantajele thread-urilor 1.3 Tipuri de thread-uri 1.3.1 Kernel Level Threads 1.3.2 User Level

More information

-modificatorul unei interfeţe este public sau abstract (implicit)

-modificatorul unei interfeţe este public sau abstract (implicit) 6.1. Interfeţe Java - interfeţele Java abstractizează complet metodele unei clase (interfaţa clasei) faţă de orice implementare; - folosind cuvântul rezervat interface (în loc de class) specificăm ce poate

More information

Elemente de bază ale limbajului C++

Elemente de bază ale limbajului C++ Elemente de bază ale limbajului C++ 1. Vocabularul limbajului Elementele de bază ale limbajului, numite şi entităţi sintactice sau atomi lexicali, fac parte din următoarele categorii : cuvinte rezervate

More information

UTILIZAREA SISTEMELOR DE OPERARE - LABORATORUL 2. Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare

UTILIZAREA SISTEMELOR DE OPERARE - LABORATORUL 2. Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare Structura de fisiere Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare Comparatie cu comenzile de DOS Adevarata putere a linux-ului sta in comenzi. Acestea, impreuna cu fisierele

More information

Vulnerabilitati Web si securizarea acestora v1.0

Vulnerabilitati Web si securizarea acestora v1.0 Vulnerabilitati Web si securizarea acestora v1.0

More information

Suport curs Web design nivel 1

Suport curs Web design nivel 1 Partea 1 - Ce inseamna HTML? Pentru inceput sa descoperim originea abrevierii HTML - HyperText Markup Language. Acest limbaj este folosit pentru a formata si prezenta documente pe web. HTML adauga tag-uri

More information

Introducere in Maven. Information Type: Working Standard, Disclosure Range:, Information Owner: mihai.hulea, NTT DATA Romania

Introducere in Maven. Information Type: Working Standard, Disclosure Range:, Information Owner: mihai.hulea, NTT DATA Romania Introducere in Maven Build management tools Java build tools: Maven Gradle Ant + Ivy Build tools are programs that automate the creation of executable applications from source code. Building incorporates

More information

Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ

Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ Un sistem dedicat de prelucrare numerică (embedded system) este un ansamblu format din circuite electronice, programe, componente mecanice etc. conceput

More information

Laborator 9. Programare orientată pe obiecte Laborator 9. 1) Să se realizeze o aplicaţie care să rezolve ecuaţii de gradul al doilea.

Laborator 9. Programare orientată pe obiecte Laborator 9. 1) Să se realizeze o aplicaţie care să rezolve ecuaţii de gradul al doilea. Laborator 9 1) Să se realizeze o aplicaţie care să rezolve ecuaţii de gradul al doilea. Interfaţa aplicaţiei va fi următoarea Casetelor text li se vor da denumirile: camp_a, camp_b, camp_c, rez. Evenimentului

More information

Problema apropiat de problema. Limbaj de programare. masina. Program de rezolvare. Calculator. Rezultate

Problema apropiat de problema. Limbaj de programare. masina. Program de rezolvare. Calculator. Rezultate 1. Un tur de orizont în limbajul C. 1.1. Structura unui program C foarte simplu Un limbaj de programare reprezintă o interfaţă între problema de rezolvat şi programul de rezolvare. Limbajul de programare,

More information

Ingineria Sistemelor de Programare

Ingineria Sistemelor de Programare Ingineria Sistemelor de Programare Interfete grafice (Swing) mihai.hulea@aut.utcluj.ro 2017 Scurt istoric AWT: Abstract Windowing Toolkit import java.awt.* Swing Java FX Swing Demo Libraria Swing Swing

More information

Instrucţiuni ale limbajului Java

Instrucţiuni ale limbajului Java P a g e 1 TEHNICI AVANSATE DE PROGRAMARE LUCRARE DE LABORATOR 2 Instrucţiuni ale limbajului Java I. SCOPUL LUCRĂRII Lucrarea de faţă are rolul de a prezenta şi familiariza studentul cu câteva instrucţiuni

More information

Anexa 3 - Sed; awk. Filtrarea pe baza de expresii regulate

Anexa 3 - Sed; awk. Filtrarea pe baza de expresii regulate Anexa 3 - Sed; awk Contents 1 Filtrarea pe baza de expresii regulate 1.1 Similaritati 1.2 Sintaxa 1.3 Mod de rulare 1.4 Structura unui script 1.5 Expresii regulate 1.5.1 Exemple 2 sed 3 awk 3.1 Editarea

More information

Tema 2 PL/SQL. 3. a. Creati o tabela numita emp_dup care să fie duplicata tabelei employees. Create table emp_dup as select * from employees

Tema 2 PL/SQL. 3. a. Creati o tabela numita emp_dup care să fie duplicata tabelei employees. Create table emp_dup as select * from employees Tema 2 PL/SQL 1. Ce va afişa acest bloc? fname varchar2(20); lname varchar2(15) default fernandez ; DBMS_OUTPUT.PUT_LINE(fname lname); a. Va printa fernandez. b. Va returna o eroare deoarece variabila

More information

Limbaje de tipul 3. Gramatici regulate Automate finite. Expresii regulate. Deterministe Nedeterministe. a, a, ε, E 1.E 2, E 1 E 2, E 1*, (E 1 )

Limbaje de tipul 3. Gramatici regulate Automate finite. Expresii regulate. Deterministe Nedeterministe. a, a, ε, E 1.E 2, E 1 E 2, E 1*, (E 1 ) Curs 7 1 Limbaje de tipul 3 Gramatici regulate Automate finite Deterministe Nedeterministe Expresii regulate a, a, ε, E 1.E 2, E 1 E 2, E 1*, (E 1 ) 2 Istoric Paşii compilării Analiza lexicală Descriere

More information

Programare Orientată pe Obiecte în limbajul Java

Programare Orientată pe Obiecte în limbajul Java Curs 4 Programare Orientată pe Obiecte în limbajul Java Programare Orientată pe Obiecte Cuprins Tipul enumerare Clase imbricate Clase şi metode abstracte Excepţii Tipuri de date enumerare enum public class

More information

Fluxuri. Programare Orientată pe Obiecte

Fluxuri. Programare Orientată pe Obiecte Fluxuri Programare Orientată pe Obiecte Fluxuri Ce sunt fluxurile? Clasificare, ierarhie Fluxuri primitive Fluxuri de procesare Intrări şi ieşiri formatate Fluxuri standard de intrare şi ieşire Analiza

More information

Sintaxa definińiei unei funcńii este: tip_rez nume_funcńie (<lista_parametri>) { <declarańii locale> secvenńă de instrucńiuni }

Sintaxa definińiei unei funcńii este: tip_rez nume_funcńie (<lista_parametri>) { <declarańii locale> secvenńă de instrucńiuni } Laboratorul 10. FUNCłII ÎN C/C++ Introducere În limbajul C++ (similar cu limbajul C standard) programul este o colecńie de module distincte numite funcńii, structura generală a programului fiind:

More information

Capitolul 2. Instanta si baza de date. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 2. Instanta si baza de date. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 2 Instanta si baza de date 1 DBA Exista doi utilizatori privilegiati care sunt creati inca de la instalarea Oracle (se cere doar parola pentru ei la instalare): 1. SYS proprietarul (owner) bazei

More information