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

Size: px
Start display at page:

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

Transcription

1 Lucrarea 1 SDA 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, dupa introducerea unui grup de k numere, elementele nou introduse, in ordine inversa. Se cer 2 variante: una cu implementarea statica si a doua cu implementarea dinamica a structurilor de date necesare. Comentati variantele. Indicatie: Se creaza o stiva in care se introduc cite k elemente. Dupa introducerea celor k elemente se descarca stiva. 2. Creaza un arbore binar de cautare perfect echilibrat cu un numar dat de elemente naturale distincte, citite de la tastatura. Indicatie : Se citesc elemente de la tastatura si se numara aceste elemente. Fie numarul de elemente N. Se creaza arborele binar de cautare corespunzator celor N elemente. Se parcurge arborele (LDR) si se stocheaza intr-un vector elementele (care vor fi sortate). Se interschimba elementul de rang 0 cu elementul de rang N/2 in acest vector. Cu vectorul astfel modificat se creaza un arbore binar de cautare care respecta proprietatea de echilibrare in radacina. Se aplica recursiv, la stinga si la dreapta, pentru N/2 si N-N/2-1 noduri, acest algoritm. Conditia de iesire din recursivitate este N<=2... Pentru ambele programe se cer: - descrierea prin organigrama sau pseudocod - justificarea utilizarii structurilor de date alese - explicatii (desene explicative) despre realizarea functiilor din program

2 D:\sorin\sda 2017\p1_1\p1\p1.cpp #include "stdafx.h" #include <conio.h> #include <stdio.h> 1 struct node int data; node* next; ; int k; int key=-1; // k este numarul de elemente ce vor fi inversate // caracterul de la intrare int * stack; // stiva (static) int top=0; // virful stivei int del_stack(); // extrage element din stiva void add_stack(int a); //adauga element in stiva node* ptop = NULL; // virful stivei (dinamic) int del_stack1(); // extrage element din stiva (dinamic) void add_stack1(int a); //adauga element in stiva (dinamic) int n; // numar de elemente int _tmain(int argc, _TCHAR* argv[]) printf("introduceti numarul de elemente de inversat: "); scanf("%d", &k); // varianta stiva statica printf("\nstiva STATICA\n"); stack = new int[k+1]; while (key!=0) // citeste un caracter de la intrare scanf("%d", &key); // adauga element in stiva if (key!=0) add_stack(key); // daca nr. de elemente este k atunci descarca stiva if (top==k) while (top!=0) printf("%d ", del_stack()); delete[] stack; // varianta stiva dinamica printf("\nstiva DINAMICA\n"); n = 0; key = -1; while (key!= 0) // citeste un caracter de la intrare scanf("%d", &key); // adauga element in stiva if (key!= 0) n++; add_stack1(key);

3 D:\sorin\sda 2017\p1_1\p1\p1.cpp // daca nr. de elemente este k atunci descarca stiva if (n == k) while (ptop!= NULL) printf("%d ", del_stack1()); n--; 2 return 0; void add_stack(int a) top++; stack[top]=a; int del_stack(void) int b; b=stack[top]; top--; return b; void add_stack1(int a) node* v; if (ptop == NULL) ptop = new node; ptop->data = a; ptop->next = NULL; else v = new node; v->data = a; v->next = ptop; ptop = v; int del_stack1(void) node* v; int a; if (ptop!= NULL) v = ptop; ptop = ptop->next; a = v->data; delete v; return a; return (-1);

4 D:\sorin\sda 2017\arbori_1\arbori\arbori.cpp /* creare arbore binar de cautare si perfect echilibrat */ 1 #include "stdafx.h" struct bnode int data; bnode* left; bnode* right; ; bnode* abc_pe(bnode *r, int n); perfect echilibrat cu radacina r bnode* build_abc(bnode *r, int a); radacina r void ldr_store(bnode* r, int* s); info din nod void ldr(bnode* r); info din nod void ldr1(bnode* r); void ldr2(bnode* r); int balance_factor(bnode* r); // adauga un nod cu cheia a in arborele binar de cautare si // adauga un nod cu cheia a in arborele binar de cautare cu // parcurge in ordine arborele cu radacina r si memoreaza // parcurge in ordine arborele cu radacina r si tipareste // parcurge si numara nodurile // parcurge si afiseaza diferenta dintre numarul de noduri // calculeaza diferenta dintre numarul de noduri bnode* root=null; int index = 0; int N = 0; int _tmain(int argc, _TCHAR* argv[]) int key=-1; // elementul curent de la tastatura while (key!=0) // citeste elementele de la tastatura si construieste arborele abc original printf("element nou = "); scanf("%d",&key); if (key!= 0) N++; root = build_abc(root, key); printf("parcurgerea LDR\n"); ldr(root); printf("factorii de balans\n"); ldr2(root); // modifica abc a.i. sa fie si arbore perfect echilibrat root = abc_pe(root, N); printf("parcurgerea LDR\n"); ldr(root); printf("factorii de balans\n"); ldr2(root); return 0; bnode* abc_pe(bnode*r, int n) int i, tmp; int* store; bnode* t=null;

5 D:\sorin\sda 2017\arbori_1\arbori\arbori.cpp if (n <= 2) return r; 2 store = new int[n]; index = 0; ldr_store(r, store); tmp = store[0]; radacina) store[0] = store[n / 2]; store[n / 2] = tmp; // parcurge abc si stocheaza elementele in store[] // inverseaza primul element cu elementul din centru (care devine for (i = 0; i < n; i++) t = build_abc(t, store[i]); // reconstruieste abc cu radacina elementul din mijloc delete[] store; t->left = abc_pe(t->left, n / 2); t->right = abc_pe(t->right, n - n / 2-1); return t; bnode* build_abc(bnode*r, int a) if (r==null) r=new bnode; r->data=a; r->left=null; r->right=null; else if (a < r->data ) r->left=build_abc(r->left,a); if (a > r->data ) r->right=build_abc(r->right,a); return r; void ldr_store(bnode* r, int* s ) if(r!=null) ldr_store(r->left,s); s[index] = r->data; index++; ldr_store(r->right,s); void ldr(bnode* r) if (r!= NULL) ldr(r->left); printf("%d, ",r->data); ldr(r->right); void ldr1(bnode* r) if (r!= NULL) ldr1(r->left); index++; ldr1(r->right);

6 D:\sorin\sda 2017\arbori_1\arbori\arbori.cpp 3 int balance_factor(bnode* r) int nl, nr; index = 0; ldr1(r->left); nl = index; index = 0; ldr1(r->right); nr = index; return(nl - nr); void ldr2(bnode* r) if (r!= NULL) ldr2(r->left); printf("%d, ", balance_factor(r)); ldr2(r->right); Observatie: Functiile malloc si free au fost inlocuite cu new si respectiv delete

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

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

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

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

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

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

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

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

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

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

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

GHID DE UTILIZARE A APLICAȚIEI MINISTRA PLAY PE SMART TV

GHID 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 information

Arbori. 5 aprilie Utilizarea şi programarea calculatoarelor. Curs 16

Arbori. 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 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

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

Laborator 5 Sisteme Lindenmayer. Temă

Laborator 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 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

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

[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

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

Binary Search Tree 1.0. Generated by Doxygen Mon Jun :12:39

Binary Search Tree 1.0. Generated by Doxygen Mon Jun :12:39 Binary Search Tree 1.0 Generated by Doxygen 1.7.1 Mon Jun 6 2011 16:12:39 Contents 1 Binary Search Tree Program 1 1.1 Introduction.......................................... 1 2 Data Structure Index 3

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

Fisa de lucru șiruri de caractere 02

Fisa de lucru șiruri de caractere 02 Problema 01 Fisa de lucru șiruri de caractere 02 char s[100],s1[100]; strcpy(s1,s); strcpy(s1+x,""); Problema 02 char s[100]; coutx>>y; strcpy(s1,s+y);

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

Tipuri structurate de date definite de utilizator

Tipuri structurate de date definite de utilizator Tipuri structurate de date definite de utilizator Problema 1. Jucarii Scrieti o aplicatie care il ajuta pe Mos Craciun sa tina evidenta: Jucariilor: idjucarie, denumirejucarie, dimensiunejucarie Copiilor:

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

Operatii pop si push-stiva

Operatii 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 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

HMP7001 Manual de utilizare

HMP7001 Manual de utilizare www.philips.com/welcome HMP7001 Manual de utilizare Interface are trademarks or registered trademarks of HDMI licensing LLC in the United States and other countries. Manufactured under license from Dolby

More information

Proprietati CSS pentru margini - BORDER

Proprietati 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 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

PNI SmartCAM. versiune Android. - manual de utilizare-

PNI 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 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

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

Probleme consultații 25 noiembrie 2017 Șiruri (tablouri unidimensionale)

Probleme consultații 25 noiembrie 2017 Șiruri (tablouri unidimensionale) Probleme consultații 25 noiembrie 2017 Șiruri (tablouri unidimensionale) Problema 1 Enunț Twin primes. Se citesc mai multe numere naturale, până la introducerea numărului 0 și se memorează într-un șir.

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

Laborator 4. Rezolvări

Laborator 4. Rezolvări Programare Delphi Exerciţiul 1. Quicksort cu pivotul pe stânga program Rezoli_1; {$APPTYPE CONSOLE} n = 13; Laborator 4. Rezolvări a: vector = (1, 51, 2, 4, 9, 100, 15, 6, 0, 8, 19, 10, 11); procedure

More information

Nivelul inferior de prelucrare a fişierelor

Nivelul inferior de prelucrare a fişierelor 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

More information

C13. INTERFATA PARALELA PROGRAMABILA (PPI) I8255A (PIO)

C13. 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 information

Laborator 1 Recursivitate

Laborator 1 Recursivitate Recursivitate 1. Fie ecuaţia x - Sx + P = 0 cu S, P R si x1, x rădăcinile ecuaţiei. Să se calculeze Sn=, n N. n n x 1 x Căutăm relaţia de recurenţă pentru Sn, ştiind că x1, respectiv x sunt rădăcinile

More information

Verilog Lecţia 1. Primitive porţi. Primitive porţi de transmisie. Sintaxa generală de instanţiere a porţilor:

Verilog Lecţia 1. Primitive porţi. Primitive porţi de transmisie. Sintaxa generală de instanţiere a porţilor: Verilog Lecţia 1 Primitive porţi Sintaxa generală de instanţiere a porţilor: [nume_instanta] (iesire, intrare1, intrare2,...); tip_poarta ::= and nand or nor xor xnor Poartă Descriere Sintaxă

More information

#include <stdio.h> #include <math.h> int shownum(int digits[], int digitcount);

#include <stdio.h> #include <math.h> int shownum(int digits[], int digitcount); Problem 1: Programming in C [20 Points] Write a C program that takes as input a positive integer number and converts it to base 4. Some examples of input and output of this program are as follow: Example

More information

11. STIVE ŞI COZI Consideraţii privind structurilor de date de tip stivă şi coadă

11. STIVE ŞI COZI Consideraţii privind structurilor de date de tip stivă şi coadă 11. STIVE ŞI COZI 11.1 Consideraţii privind structurilor de date de tip stivă şi coadă O stivă, stack în limba engleză, este o structură de tip LIFO (Last In First Out =ultimul intrat primul ieşit) şi

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

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

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

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

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 3 Aplicatii Java

Laborator 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 information

13. ARBORI B Arbori B. Definiţie. Proprietăţi.

13. 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 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

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

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

Hierarchical organization of information, in relational databases

Hierarchical organization of information, in relational databases Hierarchical organization of information, in relational databases Demian Horia University of Oradea, Faculty of Economics, No 1, University Street, 410087, Bihor, Tel. 0259 408 796 email: horia_demian@yahoo.com

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

Design activities. Session III. 1. Topology. - Selecting and placing devices - Interconnecting devices

Design activities. Session III. 1. Topology. - Selecting and placing devices - Interconnecting devices Design activities Session I 1. Topology - Selecting and placing devices - Interconnecting devices 2. Providing connectivity between directly connected devices - Configuring addresses for servers and hosts

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

Lucrarea nr. 7 Conversia Analog Numerică Modulul ANALOG TO DIGITAL CONVERTER (A/D)

Lucrarea nr. 7 Conversia Analog Numerică Modulul ANALOG TO DIGITAL CONVERTER (A/D) Lucrarea nr. 7 Conversia Analog Numerică Modulul ANALOG TO DIGITAL CONVERTER (A/D) Acest modul permite conversia unui semnal de intrare analogic într-un număr pe 10 biți. Modulul este controlat prin intermediul

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

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

Circuite integrate digitale. Curs 10 Automate finite

Circuite integrate digitale. Curs 10 Automate finite Circuite integrate digitale Curs 10 Automate finite Cuprins Proiectarea automatelor Descrierea automatelor în Verilog Exemple 2014 CID curs 10 2 Etapele proiectării unui automat (1) se porneşte de la descrierea

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

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

Probleme la metoda Divide et Impera

Probleme la metoda Divide et Impera Probleme la metoda Divide et Impera 1. a) Calculaţi suma numerelor de la 1 la n, cu metoda D&I. b) Calculaţi produsul numerelor de la 1 la n, cu metoda D&I. c) Calculaţi suma numerelor dintre a şi b, cu

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

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Transmisia datelor multimedia in retele de calculatoare 28. O scurta istorie a compresiei audio: MPEG-1, MPEG-2, MPEG-

More information

Curs 11. Cautare locala Euristici

Curs 11. Cautare locala Euristici Curs 11 Cautare locala Euristici Cautare locala problema P o intrare (instanta) x U(x) = spatiul solutiilor candidat doua solutii candidat si sunt vecine daca se obtine din (si reciproc) printr-un set

More information

Lecture (03) x86 programming 2

Lecture (03) x86 programming 2 Lecture (03) x86 programming 2 By: Dr. Ahmed ElShafee ١ TOC The 80x86 Registers The Flag Register 80x86 Modes of operation ٢ Types of instruction set Complex instruction set computer (CISC): Large instruction

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

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

Quartz. ArcGIS Runtime SDK for Android

Quartz. 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 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

Capitolul IC.06. Arbori

Capitolul IC.06. Arbori Capitolul Cuvinte-cheie Arbori, reprezentări, inserare, căutare, parcurgere, ștergere, Echilibrare AVL, arbori binari optimali, arbori heap, sortare heap IC.06.1 Noţiuni generale Definiţie 1: Un arbore

More information

CS 223: Data Structures and Programming Techniques. Exam 2

CS 223: Data Structures and Programming Techniques. Exam 2 CS 223: Data Structures and Programming Techniques. Exam 2 Instructor: Jim Aspnes Work alone. Do not use any notes or books. You have approximately 75 minutes to complete this exam. Please write your answers

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

Convertor Binar -> Zecimal Rosu Alin, Calculatoare, An2 Mod de Functionare: Am creat un program, in Windows Form Application, care converteste un

Convertor Binar -> Zecimal Rosu Alin, Calculatoare, An2 Mod de Functionare: Am creat un program, in Windows Form Application, care converteste un Convertor Binar -> Zecimal Rosu Alin, Calculatoare, An2 Mod de Functionare: Am creat un program, in Windows Form Application, care converteste un numar binar, in numar zecimal. Acest program are 4 numericupdown-uri

More information

Manual utilizare PNI SmartCAM (Versiune ios)

Manual 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 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

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

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

DEZVOLTAREA APLICATIILOR WEB CURS 1. Lect. Univ. Dr. Mihai Stancu

DEZVOLTAREA APLICATIILOR WEB CURS 1. Lect. Univ. Dr. Mihai Stancu DEZVOLTAREA APLICATIILOR WEB CURS 1 Lect. Univ. Dr. Mihai Stancu S u p o r t d e c u r s suport (Beginning JSP, JSF and Tomcat) Capitolul 1 Introducing JSP and Tomcat notiuni necesare SO Tehnologii Web

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

Expresii lambda (Lambda expressions). Arbori de expresii (Expression trees).

Expresii 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 information

PLC APPLICATION FOR BRUSHLESS MOTOR POSITIONING

PLC APPLICATION FOR BRUSHLESS MOTOR POSITIONING BULETINUL INSTITUTULUI POLITEHNIC DIN IAŞI Publicat de Universitatea Tehnică Gheorghe Asachi din Iaşi Volumul 64 (68), Numărul 2, 2018 Secţia ELECTROTEHNICĂ. ENERGETICĂ. ELECTRONICĂ PLC APPLICATION FOR

More information

These problems are provided to you as a guide for practice. The questions cover important concepts covered in class.

These problems are provided to you as a guide for practice. The questions cover important concepts covered in class. Midterm Written Exam Practice Midterm will cover all concepts covered up to the midterm exam. Concepts of arrays, LL s, pointers (*,**,***), malloc, calloc, realloc, function pointers, Hash tables will

More information

Capitolul 4. Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control)

Capitolul 4. Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control) Capitolul 4 Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control) 1 The Channel Allocation Problem Static Channel Allocation in LANs and MANs Dynamic Channel Allocation in LANs and MANs Alocare

More information

la Microsoft Office Communicator pentru ca modificarea selecţiei dispozitivului telefonic să se actualizeze.

la 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 information

TRANSFORMATOARE DE CURENT

TRANSFORMATOARE 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 information

Orientat in jurul conceptului de cutie Box model

Orientat in jurul conceptului de cutie Box model Curs 5 2017/2018 Capitolul II 3 Orientat in jurul conceptului de cutie Box model 4 5 DOM Document Object Model: structura de tip graf head title html body h1 p ul li li li pagina mea

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

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

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

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

// 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

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

Common Misunderstandings from Exam 1 Material

Common Misunderstandings from Exam 1 Material Common Misunderstandings from Exam 1 Material Kyle Dewey Stack and Heap Allocation with Pointers char c = c ; char* p1 = malloc(sizeof(char)); char** p2 = &p1; Where is c allocated? Where is p1 itself

More information

CSCI-243 Exam 1 Review February 22, 2015 Presented by the RIT Computer Science Community

CSCI-243 Exam 1 Review February 22, 2015 Presented by the RIT Computer Science Community CSCI-243 Exam 1 Review February 22, 2015 Presented by the RIT Computer Science Community http://csc.cs.rit.edu History and Evolution of Programming Languages 1. Explain the relationship between machine

More information

Facultatea de Matematică și Informatică Lecții de pregătire Admitere FMI

Facultatea de Matematică și Informatică Lecții de pregătire Admitere FMI Facultatea de Matematică și Informatică Lecții de pregătire Admitere FMI Graf neorientat: G = (V, E) vârf (nod), muchie gradul unui vârf vârfuri adiacente lanţ ciclu distanță Graf neorientat: G = (V,

More information

Department of Computer Science & Engineering Indian Institute of Technology Kharagpur. Practice Sheet #09. Topic: Structures in C Date:

Department of Computer Science & Engineering Indian Institute of Technology Kharagpur. Practice Sheet #09. Topic: Structures in C Date: Department of Computer Science & Engineering Indian Institute of Technology Kharagpur Practice Sheet #09 Topic: Structures in C Date: 20-03-2017 2- Which languages necessarily need heap allocation in the

More information