Tablouri si Colectii. Definire tablou. Tablouri unidimensionale, multidimensionale, de lungimi variabile (jagged arrays).
|
|
- Clement Gray
- 5 years ago
- Views:
Transcription
1 Tablouri si Colectii Definire tablou. Tablouri unidimensionale, multidimensionale, de lungimi variabile (jagged arrays). Colectii nongenerice Colectii generice Colectii specializate Clasificare colectii Spatiile de nume: System.Collections; System.Collections.Generic; System.Collections.Specialized;
2 Tablouri - Arrays Tablourile au lungimea fixata. Primul element are indexul = 0 (zero). Exemplu declarare tablou unidimensional: int[] numbers = new int[3]; numbers[0] = 1; numbers[1] = 2; numbers[2] = 3; Initializare in momentul crearii: int[] nums = new int[3] { 1, 2, 3 }; string[] orase = new string[2] { "Iasi", "Botosani" }; Stabilire dimensiune: int n = 10; int[] sir = new int[n]; // class Persoana { } Persoana[] persoana = new Persoana[2];
3 Tablouri multidimensionale Tablou bidimensional (matrice cu 2 linii si 3 coloane = 6 elemente): int[,] nums = new int[2,3]; Tablou cu 3 dimensiuni: 2*3*4 = 24 elemente: int[,,] nums3 = new int[2,3,4];
4 Tablouri de tablouri (jagged arrays) Poate fi vazut ca un tablou cu o dimensiune in care fiecare element este la randul lui un tablou cu o dimensiune. Exemplu: int[][] nums = new int[2][] {new int[2], new int[3]}; // elementul nums[0] contine un tablou cu dimensiunea 2, etc. Reprezentarea vizuala ar putea fi aceasta: * * * * * Forma de apel: nums[0][1] = 10; int x = nums[0][1];
5 Definitie colectii Colectiile contin o grupare de articole. Colectiile contin obiecte (tipurile valoare sunt convertite la tipuri referinta boxing). Element = un articol al colectiei.
6 Clasificare colectii Dupa continut: Liste de elemente; Liste de perechi (cheie, valoare). Dupa proprietati ex: Sortate Nesortate Sau Colectii non-generice Colectii generice Colectii specializate
7 Colectii non-generice Spatiul de nume: System.Collections Clase de baza: CollectionBase: clasa de baza abstracta pentru o colectie puternic tipizata. DictionaryBase: clasa de baza abstracta pentru o colectie puternic tipizata de perechi (key, value). ReadOnlyCollectionBase: clasa de baza abstracta pentru colectii non-generice, readonly si puternic tipizate.
8 Colectii non-generice Lista de elemente ArrayList: implementeaza interfata IList. Foloseste un tablou a carui dimensiune este modificata in mod dinamic. ArrayList al = new ArrayList(); al.add( Colectie"); al.add( ArrayList"); al.add( in.net"); // scanare elemente foreach(object o in al) Console.Write( {0}, o);
9 Colectii non-generice: ArrayList Metode uzuale consultati MSDN pentru sintaxa completa: Add, AddRange, Clear, Contains, Insert, InsertRange, Remove, ToArray, Reverse.
10 Colectii non-generice: BitArray BitArray: zona compacta de valori pe biti, reprezentati ca Boolean (true = bitul este 1; false = bitul este 0). Elementele pot fi accesate folosind un index (0 indexul primului element). int[] nums = new int[3] { 1, 2, 3 }; BitArray ba = new BitArray(nums); foreach (object o in ba) Console.Write("{0} ", o);
11 Rezultat la BitArray Citeste de la drepta la stanga True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False True True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False
12 Modificare BitArray int[] nums = new int[3] { 1, 2, 3 }; BitArray ba = new BitArray(nums); ba[3] = true; foreach (object o in ba) Console.Write("{0} ", o);
13 Rezultat BitArray: ba[3] = true; Citeste de la drepta la stanga True False False True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False True True False False False False False False False False False False False False False False False False False False False False False False False False False False False False False False
14 Colectii non-generice: BitArray Metode uzuale consultati MSDN pentru sintaxa completa: And, CopyTo, Get, Not, Or, Set, SetAll.
15 Colectii non-generice: Queue Queue: colectie de obiecte si respecta FIFO (First In, First Out). Implementeaza colectia ca un tablou circular. Coada de mesaje din Windows respecta aceasta structura. Queue q = new Queue(); q.enqueue( Mesaj:Desenare fereastra"); q.enqueue( Mesaj:Afisare fereastra"); q.enqueue( Mesaj:Inchide fereastra");
16 Colectii non-generice: Queue Metode uzuale consultati MSDN pentru sintaxa completa: Clear, Contains, Enqueue, Dequeue, Peek, CopyTo, etc.
17 Clase non-generice: Stack Stack: colectie de obiecte si respecta LIFO (Last In, First Out). Este implementat ca un buffer circular. Stack ms = new Stack(); ms.push( 1"); ms.push( 0"); ms.push( 1");
18 Clase non-generice: Stack Metode uzuale consultati MSDN pentru sintaxa completa: Clear, Contains, CopyTo, Peek, Pop, Push.
19 Colectii non-generice Lista perechi (key, value): Hashtable: colectie de perechi (key,value), bazate pe codul hash al cheii. SortedList: colectie de perechi (key,value) sortate dupa valoarea cheii si accesibile prin cheie sau index.
20 Colectii non-generice: HashTable Fiecare element este o pereche (key,value) memorat intr-un obiect DictionaryEntry. Cheia nu poate fi null, valoarea poate fi. Obiectele folosite in cheie trebuie sa suprascrie metodele Object.GetHashCode (sau interfata IHashCodeProvider) si Object.Equals (sau interfata IComparer). Obiectele folosite in cheie trebuie sa fie immutable. Un obiect este immutable daca starea acestuia nu poate fi modificata dupa ce a fost creat. Clasa System.String este immutable. var imutabil = new { A = 2, B = 3 }; // creaza un obiect immutable imutabil.a = 11; // eroare la compilare Error 1 Property or indexer 'AnonymousType#1.A' cannot be assigned to -- it is read only
21 Colectii non-generice: HashTable Exemplu Hashtable ht = new Hashtable(); ht.add( IS", Iasi"); ht.add( BT", Botosani"); ht.add( SV", Suceava"); ht.add( RegiuneaNE", Iasi"); ht[ BC ] = Bacau ; // proprietatea Item Parcurgerea colectiei se face astfel: foreach( DictionaryEntry de in ht ) { Console.WriteLine("Key = {0}, Value = {1}", de.key, de.value); } Observatie: cheile sunt unice, valorile pot fi duplicate.
22 Colectii non-generice: HashTable Obtinerea valorilor ICollection values = ht.values; Obtinerea cheilor ICollection keys = ht.keys; Observatie: Tipul pentru values si keys este cel folosit la crearea ht. Parcurgere colectie keys: foreach (string s in keys){ }
23 Colectii non-generice: HashTable Metode uzuale consultati MSDN pentru sintaxa completa: Add, Clear, ContainsKey, ContainsValue, CopyTo, Remove.
24 Colectii non-generice: SortedList Reprezinta o colectie de perechi (key, value) ce sunt sortate dupa cheie si sunt accesibile prin cheie sau index. Intern exista doua tablouri: unul pentru chei si altul pentru valori. Exemplu SortedList sl = new SortedList(); sl.add( Z", Trei"); sl.add( Y", Doi"); sl.add( X", Unu");
25 Colectii non-generice: SortedList Parcurgere lista: for ( int i = 0; i < sl.count; i++ ) { } Console.WriteLine( "\t{0}:\t{1}", sl.getkey(i), sl.getbyindex(i) );
26 Colectii non-generice: SortedList Metode uzuale consultati MSDN pentru sintaxa completa: Add, Clear, Contains, GetKeyList, GetValueList, Count, Item, Keys, etc.
27 Colectii generice Spatiul de nume System.Collections.Generic Colectie tip lista de elemente: HashSet<T>: o multime de obiecte fara elemente duplicate SortedSet<T> : obiecte ordonate LinkedList<T> : lista dublu inlantuita LinkedListNode<T> : un nod in LinkedList<T> List<T> Queue<T> Stack<T> SynchronizedCollection<T>: colectie thread safe. SynchronizedReadOnlyCollection<T>: RO, thread safe T reprezinta tipul din colectie
28 Colectii generice - Exemple List<int> li = new List<int>(); li.add(2); li.add(10); List<Persoana> lp = new List<Persoana>(); Persoana p1 = new Persoana(); lp.add(p1); Analog pentru Queue<T> si Stack<T>.
29 Colectii generice: LinkedList<T> Lista dublu inlantuita. Fiecare nod in obiectul LinkedList <T > este de tipul LinkedListNode <T >. Implementeaza interfata generica ICollection<T> Operatii Adaugare: ((ICollection<T>)lista).Add(T) AddAfter(LinkedListNode<T>, T) AddAfter(LinkedListNode<T>, LinkedListNode<T>) AddBefore(LinkedListNode<T>, T) AddBefore(LinkedListNode<T>, LinkedListNode<T>) AddFirst(T), AddFirst(LinkedListNode<T>) AddLast(T), AddLast(LinkedListNode<T>) Eliminare element: Clear, Remove, RemoveFirst, RemoveLast Cautare: Find(T), FindLast(T) Proprietati: Count, First, Last Cererei booleene: Contains(T)
30 Colectii generice: LinkedList<T> Metode extinse (consultati MSDN): All<T>, Any<T>(), AsParallel(), AsParallel<T>(), AsQueryable(), AsQueryAble<T>(), Concat<T>, Contains<T>(T), Distinct<T>(), First<T>(), GroupBy
31 Colectii generice: LinkedList<T> - Exemple LinkedList<int> lst = new LinkedList<int>(new int[5] { 4, 2, 5, 9, 7 }); ((ICollection<int>)lst).Add(8); // trebuie cast lst.addfirst(1); lst.addlast(99); lst.addlast(100); var query = lst.asqueryable<int>(); var max = lst.max<int>(); var items = from x in query //lst este de asemenea corect where (x%2 == 1 /*&& x > 10*/) orderby x select x; Console.WriteLine("\nNumere impare: Valoarea maxima in sir = {0}", max); foreach (int k in items) Console.WriteLine("{0} ", k); var itemc = lst.contains<int>(99); // returneaza True sau False Console.WriteLine("Exista valoarea 99 in sir? {0}", itemc);
32 Colectii generice KeyedByTypeCollection<TItem> Colectie in care articolele sunt tipuri ce servesc drept chei. Colectii tip perechi (key, value) Dictionary<T,U> SortedList<T,U> SortedDictionary<T,U>
33 Colectii generice : Dictionary<T,U> Dictionary<string, string> di = new Dictionary<string, string>(); di.add( Z", Trei"); di.add( Y", Doi"); di.add( X", Unu"); Iterarea elementelor: foreach( KeyValuePair<string, string> kvp in di ) { Console.WriteLine("Key = {0}, Value = {1}", kvp.key, kvp.value); }
34 Colectii generice : Dictionary<T,U> : Operatii Adaugare: Add Stergere: Clear, Remove Cautare: ContainsKey, ContainsValue
35 Colectii generice : SortedList<T,U>, SortedDictionary<T,U> Colectie perechi (key, value) bazate pe implementarea interfetei IComparer<T>. Diferenta consta in timpul de regasire al articolelor si al memoriei ocupate. SortedList permite regasirea informatiei si pe baza de index.
36 Colectii generice: SortedList<T,U> SortedList<string, string> sl = new SortedList<string, string>(); sl.add( Z", Trei"); sl.add( Y", Doi"); sl.add( X", Unu"); Iterarea elementelor: foreach( KeyValuePair<string, string> kvp in sl) { Console.WriteLine("Key = {0}, Value = {1}", kvp.key, kvp.value); } Iterarea valorilor: IList<string> slvalues = sl.values; foreach( string s in slvalues ) { Console.WriteLine("Value = {0}", s); } Regasire valoare prin index: String s = sl.values[2];
37 Colectii generice: SortedDictionary<T,U> SortedDictionary<string, string> sd = new SortedList<string, string>(); sd.add( Z", Trei"); sd.add( Y", Doi"); sd.add( X", Unu"); Iterarea elementelor: foreach( KeyValuePair<string, string> kvp in sd) { Console.WriteLine("Key = {0}, Value = {1}", kvp.key, kvp.value); } Iterarea valorilor: SortedDictionary<string, string>.valuecollection sdvalues = sd.values; foreach( string s in sdvalues ) { Console.WriteLine("Value = {0}", s); } SortedDictionary<string, string>.keycollection sdkeys = sd.keys; Etc.
38 Exercitii Se doreste sa se sorteze cheile si/sau valorile continute intr-o colectie generica Dictionary si sa se afiseze in ordine crescatoare sau descrescatoare.
39 Exercitii In cadrul aplicatiei Dv. memorati date in colectii de tip ArrayList, List<T>, Hashtable sau Dictionary<T,U>. Folositi aceste date pentru a personaliza aplicatia (de ex. aplicatia va sti la relansare punctul unde a fost oprita ultima data). Scrieti codul necesar pentru a realiza acest lucru, precum si o aplicatie de test. Indicatie: Vedeti documentatia din MSDN pentru serializarea obiectelor - SerializableAttribute.
40 Exercitii Se considera urmatorul tip: public class Info { public Info(int n) { this.n = n; } public int n = 0; } In cadrul unei aplicatii construiti o lista de obiecte de tip Data: List<Info> numere = List<Info>(); Populati aceasta lista minim 5 elemente. Fara a crea o alta lista scrieti codul ce va aduna la fiecare element din lista valoarea 10. Testati. Veti afisa elementele adaugate in lista si apoi elementele modificate. Afisati elemetele ce contin numere impare in aceasta lista. Indicatie: Vedeti Foreach.
41 Exercitii Implementati un tip ce va fi memorat ca elemente intr-un array sau ArrayList si pentru care sa puteti folosi metodele: Array.Sort si ArrayList.Sort pentru a realiza sortarea elementelor din array. Acest tip trebuie implementat astfel incat sa-l puteti folosi in SortedList. Exemplu: class Segment { int x1; int y1; int x2; int y2; // } Acest tip poate fi sortat avand in vedere lungimea segmentului sau poate fi ordonat dupa valorile unei perechi (x1, y1), etc. Indicatie: Interfetele IComparable si IComparer.
42 Exercitii Implementati algoritmul HeapSort pentru colectia List<int>.
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 informationLaborator 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 informationLaborator 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 informationRezolvare 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 informationAplicaț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 informationAlocarea 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 informationFiş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 informationLaborator 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 informationSe 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 informationProgramare avansată Tipuri generice Colecții de date
Programare avansată Tipuri generice Colecții de date Problema Construiți o structură de date: o stivă de date, o listă înlănțuită, un vector, un graf, un arbore, etc. Care este tipul de date pe care îl
More informationUtilizarea 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 informationTehnici avansate de programare
Tehnici avansate de programare Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Adnotarea elementelor Tehnici avansate de programare p.1/1 Cuprins Ce sunt
More informationLaborator 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 informationLaborator 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 informationTipuri 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 informationLaborator 5 Sisteme Lindenmayer. Temă
Laborator 5 Sisteme Lindenmayer. Temă 1. Parcurgerea unui pătrat. Următorul L-sistem Alfabet=F,+,-; Producţii= F -> F-F+F+F+F-F-F-F+F, + -> +, - -> - Axioma= F generează, cu interpretările standard (F
More informationProgramarea Aplicațiilor Windows curs 1
Programarea Aplicațiilor Windows curs 1 Lect. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică Academia de Studii Economice București cristian.ciurea@ie.ase.ro 1 Agenda 1. Structură
More informationBirotică 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 informationError! 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 informationPROGRAMARE 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 informationJavaScript - 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 informationRezolvarea exceptiilor
PL/SQL SECTIUNE 6 Rezolvarea exceptiilor Entering an incorrect username and/or password Forgetting to include the @ in an email address Entering a credit card number incorrectly Entering an expiration
More informationProbleme 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 informationCurs 14 Colectii. Ce sunt colectiile? Interfete ce descriu colectii. Curs 14. Ce sunt colectiile? Interfetele de baza care descriu colectii
Curs 14 Colectii Ce sunt colectiile? Interfetele de baza care descriu colectii o Collection o Set o List o Map o SortedSet o SortedMap Implementari ale colectiilor Folosirea eficienta a colectiilor Algoritmi
More informationArbori. 5 aprilie Utilizarea şi programarea calculatoarelor. Curs 16
Arbori 5 aprilie 2004 Arbori 2 Noţiunea de arbore. Terminologie Arborii ne permit sǎ structurǎm ierarhic o mulţime de elemente structura de directoare şi fişiere într-un calculator arborele genealogic
More informationColectii de date PL/SQL(continuare)
Colectii de date PL/SQL(continuare) 1. Metodele Colectiilor Metodele sunt: COUNT, DELETE, EXISTS, EXTEND, FIRST, LAST, LIMIT, NEXT, PRIOR si TRIM. Metodele colectiilor nu pot fi apelate in comenzi SQL.
More informationDynamic binding vs static binding. Programare Orientată pe Obiecte
Dynamic binding vs static binding Programare Orientată pe Obiecte Ce va afişa următorul program? class TestEgal{ public boolean equals ( TestEgal other ) { System.out.println( "In equals din TestEgal"
More informationProiectarea 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 informationTema 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 informationExpresii lambda (Lambda expressions). Arbori de expresii (Expression trees).
Cuprins Expresii lambda (Lambda expressions). Arbori de expresii (Expression trees). Cuvantul cheie var obiecte si initializarea colectiilor. tipuri anonime, new forma noua. Metode extinse (Extension methods).
More informationCurs 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 informationC13. INTERFATA PARALELA PROGRAMABILA (PPI) I8255A (PIO)
C13. INTERFATA PARALELA PROGRAMABILA (PPI) I8255A (PIO) 1.Descriere PIO 2. Arhitectura PIO 3. Programare PIO 4. PIO in PC 5. Aplicatii http://www.advancedmsinc.com/iocards/8255.htm http://www.eisti.fr/~ga/phy/iitr/ii05/tr.pdf
More informationIngineria 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 information8. 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Ş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 informationIngineria 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 informationColecţii. Programare Orientată pe Obiecte
Colecţii Programare Orientată pe Obiecte Colecţii Ce sunt colecţiile? Interfeţe ce descriu colecţii Implementări ale colecţiilor Folosirea eficientă a colecţiilor Algoritmi polimorfici Tipuri generice
More informationProgramarea 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 informationBibliografie. * * *, Java Development Kit ndex.html
Bibliografie * * *, Java Development Kit http://www.oracle.com/technetwork/java/javase/downloads/i ndex.html Java programming: from problem analysis la program design, D.S. Malik, 2010 Java de la 0 la
More informationScop: Crearea unei aplicatii ce exemplifica paternul MVVM. In plus se creaza si o comanda in WPF.
Laborator MVVM Scop: Crearea unei aplicatii ce exemplifica paternul MVVM. In plus se creaza si o comanda in WPF. Clasele implicate in acest pattern sunt date in figura de mai jos. Mai multe informatii
More informationIntroducere 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 informationCurs 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Î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 informationMetode avansate de programare
Metode avansate de programare Informatică Română, 2017-2018, Curs 1 Noțiuni introductive If builders built houses the way programmers built programs, first woodpecker to come along would destroy civilization.
More informationPNI SmartCAM. versiune Android. - manual de utilizare-
PNI SmartCAM versiune Android - manual de utilizare- Introducere: Acest manual se refera la instalarea si utilizarea aplicatiei PNI SmartCAM, software necesar monitorizarii atat camerei cu IP PNI 631W,
More informationProgramare avansată Introducere
Programare avansată Introducere Desfășurarea cursului Scopul Motivația Modul de lucru Platforma de programare Documentația Evaluarea Laborator: probleme, proiecte, referate ușor Examen: test scris greu
More informationArrays, Strings and Collections
Arrays Arrays can be informally defined as a group of variables containing values of the same type and that in some way or another they are related. An array has a fixed size that is defined before the
More informationLenuta 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 informationClasa Collections Sortarea Căutarea... 31
Curs7 TreeSet... 3 Crearea unui TreeSet... 4 Adăugarea elementelor... 5 Comparatorul... 5 Returnarea elementelor... 6 Folosirea submulţimilor... 7 Sortarea colecţiilor... 8 Interfaţa Comparable... 8 Comparator...
More informationSerializarea. Transformarea datelor în secvenţe de octeţi astfel încât să poată fi transmise pe un flux de ieşire. Deserializare - procesul invers
Serializarea Transformarea datelor în secvenţe de octeţi astfel încât să poată fi transmise pe un flux de ieşire Deserializare - procesul invers Scopul serializării transmiterea datelor la distanţă. RMI
More informationLaborator 1 Aplicatii Java
Laborator 1 Aplicatii Java 1. Introducere in programarea vizuala (Pachetele AWT si Swing. Ferestre) 2. Colectii 3.1. Introduceti urmatorul program JAVA: import javax.swing.*; public class Pv public static
More informationFisiere 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 information1 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 informationLucrarea de laborator nr. 4.NET Remoting 1
Lucrarea de laborator nr. 4.NET Remoting 1 4. Implementarea claselor Well Known (Server Activated) In cadrul acestei lucrari de laborator vom realiza cateva aplicatii care vor exemplifica conceptele fundamentale
More informationla Microsoft Office Communicator pentru ca modificarea selecţiei dispozitivului telefonic să se actualizeze.
QUICK START GUIDE Plug-in de selec ie a telefonului pentru caracteristica de control al apelurilor din Microsoft Office Communicator pentru Cisco Unified Presence versiunea 7.0(3) Prezentare generală 2
More informationAtribute si interfete Facultatea de Informatica Iasi Universitatea Al I. Cuza Iasi Introspectie metadata Reflection. Atribute. Interfete.
Curs 3 1 Cuprins Introspectie metadata Reflection. Atribute. Interfete. Introspectie metadata - Reflection o Clasa Type o Exemple de utilizare Atribute preconstruite; definite de dezvoltator (custom);
More informationProprietati CSS pentru margini - BORDER
Proprietati CSS pentru margini - BORDER Property Values Description border border-bottom border-width border-bottom-width O proprietate pentru setarea celor 3 proprietati intr-o singura linie O proprietate
More informationStiva - 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 informationThe Reuse of the Components on the Java 2 Enterprise Edition Platform
140 The Reuse of the Components on the Java 2 Enterprise Edition Platform Lect.dr. Marian CRISTESCU Catedra de Informatică Economică, Universitatea "Lucian Blaga" Sibiu Reusable components are simply pre-built
More informationOperatori. 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 informationCapitolul 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 informationCapitolul 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 informationProiectarea 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 informationCONFIGURAREA 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 informationGestionarea 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 informationDatabase programming. Instructor Sanda Popescu
Database programming Instructor Sanda Popescu CONSTRANGERI pot fi considerate ca reguli ale bazei de date previn introducerea datelor invalide previn stergerea datelor daca exista dependenta cu alte tabele
More informationProgramare orientată pe obiecte. 1. Clase şi obiecte (continuare) 2. Tablouri
Programare orientată pe obiecte 1. Clase şi obiecte (continuare) 2. Tablouri // Autor : Fred Swartz import javax.swing.*; public class KmToMiles { Metode: cum funcţionează un apel private static double
More informationProgramare orientata-obiect
Programare orientata-obiect Virginia Niculescu vniculescu@cs.ubbcluj.ro www.cs.ubbcluj.ro/~vniculescu 1 Structura cursului Programare orientata-obiect paradigma de programare notiuni de baza concepte principii
More informationCapitolul 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 informationAplicatii 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 informationFisa de lucru: Studiul componentelor calculatorului
11.3.7 Fisa de lucru: Studiul componentelor calculatorului Imprimati si completati aceasta activitate. In aceasta activitate veti folosi Internet-ul, un ziar, sau un magazin local pentru a culege informatii
More information[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 informationIndex. Symbols!= operator 153 overloading 148 #endregion directive 444 #region directive 444.NET remoting infrastructure 396 == operator 153
Symbols!= operator 153 overloading 148 #endregion directive 444 #region directive 444.NET remoting infrastructure 396 == operator 153 overloading 148 [ Serializable ] 357 [ XmlElement ] 357 A alter statement
More informationOverview of the OOA Process...
Object-Oriented Analysis and Modeling Object-oriented analysis (OOA) What are the relevant objects? How do they relate to one another? How do we specify/model a problem so that we can create an effective
More informationOferta speciala Vodafone
Oferta speciala Vodafone PERSOANA DE CONTACT S.N.A.P. MATEI MARIN 0722.615.321 Intre orele 08.30 15.00 Abonamente voce cu terminale in rate: 2 Red Connect Eco 7.5 Minute nelimitate in orice retea nationala
More informationOperatii pop si push-stiva
Operatii pop si push-stiva Aplicatia realizata in Microsoft Visual Studio C++ 2010 permite simularea operatiilor de introducere si extragere a elementelor dintr-o structura de tip stiva.pentru aceasta
More informationQuartz. ArcGIS Runtime SDK for Android
Quartz ArcGIS Runtime SDK for Android Quartz (beta) Ce ofera? Utilizarea OpenGL controale si functionalitati de performanta inalta; utilizarea de Vector Tile Package utilizarea Map Package; biblioteci
More informationTablouri 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 informationGHID DE UTILIZARE A APLICAȚIEI MINISTRA PLAY PE SMART TV
GHID DE UTILIZARE A APLICAȚIEI MINISTRA PLAY PE SMART TV TV Deschide aplicația Ministra Play din bara de jos a interfeței TV. Selectează aplicația Ministra Play utilizând cursorul telecomenzii. Apar 4
More informationLaborator 3 Aplicatii Java
Laborator 3 Aplicatii Java 1. Programarea vizuala Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Fisierul se numeste testschimbareculori.java: import java.awt.*; import java.awt.event.*;
More informationLaboratorul 6 Mediul de dezvoltare Eclipse
Laboratorul 6 Mediul de dezvoltare Eclipse Ce ne propunem astăzi? În laboratorul de astăzi ne propunem familiarizarea cu mediul de dezvoltare Eclipse, crearea unei aplicańii simple de tip Hello World,
More informationLaborator 1 Tehnologia Java
Laborator 1 Tehnologia Java Tehnologia Java este alcatuita dintr-un conglomerat de concepte dintre care amintim: limbajul de programare Java dezvoltat pe baza paradigmei obiect orientate; platforma de
More information1. 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 informationTRANSFORMATOARE DE CURENT
MAK 140/80 TRANSFORMATOARE DE CURENT Aceste transformatoare de curent pot fi utilizate pentru curenţi de la 200 A la 2000 A. Ele sunt transformatoare de curent de tip inel. Sunt fabricate conform standardelor
More informationManual utilizare PNI SmartCAM (Versiune ios)
1 Manual utilizare PNI SmartCAM (Versiune ios) 2 1. Descriere software PNI SmartCAM (versiune ios) este un instrument pentru administrarea camerelor prin retea, ce pot fi adaugate manual sau prin cautare
More information13. ARBORI B Arbori B. Definiţie. Proprietăţi.
13. ARBORI B 13.1 Arbori B. Definiţie. Proprietăţi. În cazul sistemelor de gestiune a bazelor de date relaţionale (SGBDR) este important ca pe lângă stocarea datelor să se realizeze şi regăsirea rapidă
More information1. Clase. Abstractizarea datelor
1. Clase. Abstractizarea datelor Vom face în cursul de Programarea calculatoarelor şi limbaje de programare II o introducere în programarea orientată pe obiecte, cu aplicaţii în limbajul de programare
More informationSTRUCTURI 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 informationinformatii 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 informationOverview of the OOA Process...
Object-oriented analysis (OOA)! What are the relevant objects? How do they relate to one another? Object-Oriented Analysis and Modeling! How do we specify/model a problem so that we can create an effective
More informationDelegates Facultatea de Informatica Iasi Universitatea Al I. Cuza Iasi /51
Facultatea de Informatica Iasi Universitatea Al I. Cuza Iasi 24.11.2014 1/51 Delegates Cuprins Partea a - I - a Ce este un delegate? Definirea unui delegate. Clasele de baza System.MulticastDelegate si
More informationProiectarea bazelor de date
Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Proiectarea bazelor de date Lect.univ.dr. Adrian Runceanu 19.03.2013 Proiectarea bazelor
More informationConcepte fundamentale ale limbajelor de programare. Limbaje de programare orientate pe obiecte Curs 10 conf. dr. ing. Ciprian-Bogdan Chirila
Concepte fundamentale ale limbajelor de programare Limbaje de programare orientate pe obiecte Curs 10 conf. dr. ing. Ciprian-Bogdan Chirila Cuprins programarea orientata pe obiecte mostenire legarea dinamica
More information6. Identificarea vulnerabilităńilor
6. Identificarea vulnerabilităńilor VulnerabilităŃi Eroare de programare sau greşeală de configurare ce poate crea breşe în securitatea sistemelor Dacă nu sunt corectate la timp pot fi exploatate de către
More informationCurs 3 Clase și obiecte. Limbajul de programare C++ Programare orientată obiect
Curs 3 Clase și obiecte Limbajul de programare C++ Programare orientată obiect Limbajul de programare C++ Urmașul limbajului C apărut în anii 80, dezvoltat de Bjarne Stroustrup Bibliografie: B. Stroustup,
More informationLucrarea 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 informationCURS 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 informationLUCRAREA 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 informationProbleme 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 informationProiectarea bazelor de date
Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie şi Dezvoltare Durabilă Departamentul de Automatică, Energie, Mediu şi Dezvoltare Durabilă Proiectarea bazelor de date Lect.dr. Adrian
More information