Microsoft Word - CarteC.doc

Mărimea: px
Porniți afișarea la pagina:

Download "Microsoft Word - CarteC.doc"

Transcriere

1 Introducere în limbajul de programare C - C este un limbaj de programare ale cărui caracteristici sunt economia de expresie, structuri moderne de control al fluxului şi de date, precum şi un set bogat de operatori. C nu este un limbaj de nivel "înalt" şi nu este specializat vreunei arii particulare de aplicaţii. - C a fost la început proiectat şi implementat pe sistemul de operare UNIX pe DEC PDP11 de către Dennis Ritchie. Ulterior Brian Kernigham, în cautarea celui mai potrivit limbaj pentru scrierea sistemului de operare a conceput împreună cu Dennis Ritchie, la începutul anilor 1970 un limbaj nou: C. Sistemul de operare, compilatorul C şi în mod esenţial, toate programele de aplicaţii din UNIX sunt scrise în C. - Limbajul C are construcţiile fundamentale pentru controlul fluxului necesare pentru programele structurate: grupare de instrucţiuni; luare de decizii ("if"); repetare cu test de terminare la început ("while", "for") sau la sfârşit ("do"), selectare a unui caz dintr-o mulţime de cazuri posibile ("switch"). - Limbajul C foloseşte pointeri şi are abilitatea de a face aritmetica cu adrese. Argumentele funcţiilor sunt pasate copiind valoarea argumentului şi este imposibil pentru funcţia apelată să modifice argumentul real din apelant. Când se doreşte să se obţină un "apel prin referinţă", se trimite explicit un pointer, iar funcţia poate modifica obiectul la care face referire pointerul. Numele de tablouri sunt trimise ca locaţie a originii tabloului, deci argumentele tablourilor sunt efectiv apeluri prin referinţă. Reprezentarea unui algoritm într-un limbaj de programare poartă numele de program. Un program C conţine una sau mai multe funcţii, dintre acestea una este funcţia principală. Fiecare funcţie are un nume. Funcţia principală se numeşte main; celelalte funcţii au nume date de utilizator. 1

2 Un program C este alcătuit din următoarele elemente constitutive: - directive de preprocesare (precompilare) - declaraţii: - de variabile - de funcţii - definiţii de funcţii - comentarii Fişierul care conţine un program scris în C se numeşte fişier sursă şi are extensia.c. Prin compilarea unui fişier sursă rezultă un fişier obiect, acesta are extensia.obj. Fişier Sursă Fişier obiect Compilator Urmează etapa de editare de legături (link-editare), în urma căreia rezultă un fişier executabil, acesta are extensia.exe. În urma execuţiei unui program sunt obţinute rezultatele (datele finale) programului. Fişier sursă 1 Fişier sursă 2... Fişier sursă n Rutine Editor legături Fişier executabil 2

3 Elementele de bază ale limbajului C Ca şi alte limbaje de programare, C are un alfabet şi reguli pentru scrierea programelor corecte folosind semne de punctuaţie. Aceste reguli formează sintaxa limbajului C. Compilatorul împarte programul sursă în atomi lexicali, care reprezintă vocabularul de bază al limbajului. În ANSI C (American National Standards Institute) sunt şase tipuri de atomi lexicali (care se mai numesc şi elemente lexicale sau unităţi lexicale): 1. cuvinte rezervate (sau cheie); 2. identificatori; 3. constante; 4. siruri constante; 5. operatori; 6. semne de punctuatie. Setul de caractere utilizat în C este cel reprezentat de codul ASCII. (American Standard Code for Information Interchange). Caracterele sunt codificate prin întregi în intervalul [0,127]. Un astfel de întreg poate fi păstrat în binar pe 8 biţi (un octet). Mulţimea caracterelor este împărţită în 3 grupe: caractere negrafice (exceptând caracterul DEL care are codul 127, au codurile ASCII mai mici decât 32, deci aparţin intervalului [1,31]), spaţiu (are codul 32) şi caractere grafice (au codurile ASCII mai mari decât 32, deci sunt din intervalul [33,126]; astfel sunt literele mari au codurile cuprinse în intervalul [65,90], literele mici au codurile cuprinse în intervalul [97,122] şi caracterele speciale, cifrele au codurile cuprinse în intervalul [48,57]). Caracterul cu codul 0, numit şi caracter nul, nu poate fi generat de la tastatură şi nu poate fi tipărit, notat cu '\0' reprezintă finalul unui şir de caractere în memorie Cuvinte cheie Cuvintele cheie(rezervate) sunt cuvinte care au înţeles special pentru compilatorul C: acestea sunt instrucţiuni, tipuri fundamentale sau intră în sintaxa de definire a funcţiilor 3

4 şi a tipurilor de date. auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while Identificatori Un identificator este un atom lexical format dintr-o succesiune de litere şi cifre, primul caracter fiind literă. Se pot utiliza litere mici şi litere mari ale alfabetului englez, precum şi caracterul underscore (semnul de subliniere: _ ). Limbajul C este un limbaj case sensitive, adică literele mici sunt diferite de cele mari. Exemple: x, i, a1, A1, b_1, Maxim, MAXIM, maxim. Identificatorii care încep cu underscore pot fi confundaţi cu numele variabilelor sistem. De exemplu, identificatorul _ctype declarat în biblioteca <ctype.h>, este folosit pentru numele unui vector de atribute. Dacă un programator foloseste un identificator cu acelasi nume, dar pentru alte scopuri, atunci ori se va semnala o eroare aparent necunoscută, ori compilatorul se va comporta ciudat. Se recomandă a nu se folosi identificatori care încep cu underscore. Tipuri de date Prin tip de dată se înţelege o mulţime pentru care se definesc: dimensiunea zonei de memorie asociate unui element; tipul de viaţă asociat datei; mulţimea operaţiilor prin care valorile tipului pot fi modificate sau prelucrate şi semnificaţia acestor operaţii; 4

5 operatorii utilizaţi şi semnificaţia acestora. Se pot face mai multe clasificări pentru datele folosite într-un program C, astfel: - date ca operanzi, acestea sunt: constante (literale şi simbolice) variabile - date ca mod de reprezentare, acestea sunt: întregi cu semn (reprezentate intern în format complement faţă de 2) şi fără semn (reprezentate intern în baza 2) reale (reprezentate intern în format virgulă mobilă) - date ca mod de interpretare, acestea sunt: numerice caractere adrese - date sub aspectul multiplicităţii, acestea sunt: scalare agregate - tablouri, structuri, uniuni, bit-fields (câmpuri de biţi) Tipurile de date pot fi: predefinite (numite şi tipuri de bază) şi definite de utilizator (numite şi derivate). Următorul tabel prezintă tipurile de bază folosite în limbajul C (ANSI). 5

6 Tipul Descriere Dimensiune Interval de valori int Întreg binar reprezentat 16 biţi [-32768, 32767] prin complement faţă de 0 unsigned int Întreg binar reprezentat prin complement faţă de 0 16 biţi [0, 65535] short Întreg binar reprezentat prin complement faţă de 0 16 biţi [-32768, 32767] unsigned short Întreg binar reprezentat prin complement faţă de 0 16 biţi [0, 65535] long Întreg binar reprezentat prin complement faţă de 0 32 biţi [-2^31, 2^31 1] unsigned long Întreg binar reprezentat prin complement faţă de 0-32 biţi [0, 2^32 1] unsigned codul ASCII caracter 8 biţi [0, 255] char signed char codul ASCII caracter 8 biţi [-128, 127] float double Număr reprezentat în virgulă flotantă simplă precizie Număr reprezentat în virgulă flotantă în dublă precizie 32 biţi Valoarea absolută a unei date diferită de 0 [3.4*10^(-38); 3.4*10^(38)] 64 biţi Valoarea absolută a unei date diferită de 0 [1.7*10^(-308); 1.7*10^(308)] long double Număr reprezentat în virgulă flotantă în dublă precizie 80 biţi (10 octeţi) Valoarea absolută a unei date diferită de 0 [3.4*10^(- 4932); 3.4*10^(4932)] Obs. Datele specificate numai prin char au o interpretare implicită: numere fără semn cuprinse în intervalul [0,255]. 6

7 Comentarii Comentariile sunt explicaţii pentru programatori şi nu au nici un efect asupra compilatorului fiind omise la compilare. - comentarii peo line // - comentarii pe mai multe linii : comentariu începe cu secvenţa de caractere /* şi se termină cu */ Exemple: 1. // comentariu pe o linie 2. /* un comentariu */ 3. /* Al treilea comentariu */ Constante Constantele sunt valori fixe reprezentând caractere, şiruri de caractere, numere întregi sau raţionale. O constantă are un tip şi o valoare; valoarea sa nu poate fi schimbată în timpul execuţiei programului în care a fost utilizată. Constantele pot fi: constante întregi, constante flotante şi constante caracter. Constantele întregi pot fi scrise în sistemul de numeraţie cu baza 8, 10 sau 16. O constantă zecimală întreagă este un şir de cifre zecimale care are prima cifră diferită de zero. Constantele zecimale se reprezintă prin complement faţă de doi pe 16 biţi sau pe 32 de biţi. Constantele întregi reprezentate pe 16 biţi sunt de tip int, iar cele reprezentate pe 32 biţi sunt de tip long. O constantă zecimală ce se reprezintă în mod implicit pe 16 biţi, se poate reprezenta şi pe 32 de biţi, punând l sau L la sfârşitul ei. Exemplu: 12345l sau 12345L. O constantă zecimală are tipul unsigned dacă se termină cu litera u sau U. O astfel 7

8 de constantă se reprezintă pe 16 biţi dacă nu este mai mare decât şi pe 32 de biţi în caz contrar. Dacă se doreşte ca o constantă întreagă fără semn mai mică decât să se reprezinte pe 32 de biţi, constanta respectivă se va termina prin una din următoarele succesiuni de litere: ul, lu, LU, UL. O constantă octală întreagă este o succesiune de cifre octale (0-7) precedată de un zero nesemnificativ. Ea se păstrează pe 16 biţi sau pe 32 biţi. Dacă aceasta se termină cu l sau L, atunci ea se reprezintă pe 32 de biţi chiar dacă sunt suficienţi 16 biţi pentru eprezentarea ei. Constantele octale sunt de tip unsigned dacă se reprezintă pe 16 biţi şi unsigned dacă se reprezintă pe 32 biţi. O constantă hexazecimală întreagă este o succesiune de cifre hexazecimale precedată de 0x sau 0X. În rest are aceleaşi proprietăţi ca şi o constantă octală. O constantă flotantă reprezintă un număr raţional. Ea se compune dintr-o parte întreagă, care poate fi şi vidă, dintr-o parte fracţionară, care poate fi şi vidă şi un exponent, care poate fi şi vid. Partea întreagă este o constantă zecimală. Partea fracţionară se compune din caracterul punct după care urmează o succesiune de cifre zecimale. Succesiunea poate fi vidă doar dacă partea întreagă este prezentă. Exponentul începe cu litera e sau E, după care poate fi prezent un semn opţional (plus sau minus) şi un şir de cifre zecimale. Exponentul defineşte un factor care exprimă o putere a lui 10. Constantele flotante se reprezintă în dublă precizie (pe 64 biţi). Pentru a reprezenta o constantă flotantă în simplă precizie trebuie ca aceasta să fie urmată de litera f sau F. O constantă caracter are ca valoare codul ASCII al caracterului pe care-l reprezintă. Ea are tipul int. O constantă caracter este inclusă între caractere apostrof. Exemplu: 'a', 'D', '7', '*'. Excepţie de la această regulă o fac caracterele apostrof ('), backslash (\) şi ghilimele ("). Acestea se reprezintă astfel: - caracterul apostrof '\' ' - caracterul backslash '\\' - caracterul ghilimele '\"' Caracterul backslash se poate utiliza pentru a defini constante caracter şi pentru 8

9 caractere negrafice. Se spune că backslash introduce o secvenţă escape. De exemplu: \n - rând nou \t - tabulator orizontal Şir de caractere O succesiune de zero sau mai multe caractere incluse între ghilimele formează o constantă şir sau un şir de caractere. La scrierea caracterelor din compunerea unui şir de caractere se pot utiliza secvenţe escape. Exemple: "Acesta este un sir de caractere" "Prin aceasta secventa escape \\ se reprezinta backslash" Caracterele unui şir de caractere se păstrează în memorie într-o zonă contiguă, reprezentate fiind de codurile lor ASCII. După ultimul caracter al şirului se păstrează caracterul NUL, adică valoarea zero ( \0 ). Acesta joacă rolul de marcaj de sfârşit al oricărui şir de caractere. Datorită acestui marcaj se face distincţie între o constantă caracter care corespunde unui caracter şi şirul de caractere care este format din acelaşi caracter. Exemplu: Constanta caracter 'A' se păstrează în memorie într-un octet prin valoarea 65, pe când şirul de caractere "A" ocupă o zonă de doi octeţi: în primul octet se păstrează valoarea 65, iar în al doilea caracterul NUL. Variabile Prin variabilă înţelegem o dată a cărei valoare se poate schimba pe parcursul execuţiei programului. Unei variabile i se atribuie patru entităţi: nume (cu ajutorul căruia se va putea referi pe parcursul execuţiei programului), valoare (la un moment 9

10 dat), tip (valorile pe care le poate avea variabila la momente diferite trebuie să aparţină aceluiaşi tip) şi adresa în memorie. Corespondenţa dintre numele şi tipul unei variabile se realizează cu ajutorul unei declaraţii. Declaraţia unei variabile simple tip lista_de_identificatori; unde tipul este un cuvânt cheie pentru tipurile predefinite, iar lista_de_identificatori este o succesiune de nume de variabile separate prin virgulă. Exemple: int a,b,c; char opt; float x,z; double y; long double w; Datele de acelaşi tip pot fi grupate astfel încât să formeze o mulţime ordonată de elemente la care să ne putem referi folosind indici. În acest caz definim tablouri. Un tablou reprezintă un tip structurat care ocupă o zonă de memorie continuă şi conţine elemente de acelaşi tip. Tablourile pot fi unidimensionale, caz în care se utilizează un singur indice pentru a referi elementele tabloului şi multidimensionale, caz în care se folosesc mai mulţi indici. Exemple de tablouri unidimensionale sunt vectorii, iar de tablouri bidimensionale sunt matricele. Ca orice variabilă, un tablou trebuie declarat înainte de a fi utilizat. Declaraţia unui tablou tip nume_tablou[dim_1][dim_2][dim_n]; 10

11 unde tip este un cuvânt cheie pentru tipurile predefinite, nume_tablou este numele variabilei tablou, iar dim_i este dimensiunea superioară a indicelui i, adică el poate lua valorile 0,1,2,...,dim_i-1. Dimensiunile dim_i sunt expresii constante. În limbajul C, numele unui tablou este un simbol care are ca valoare adresa primului său element. La compilare, se alocă o zonă de memorie necesră pentru a reţine elementele sale. Exemple: int a[100]; - un tablou cu 100 elemente de tip întreg. Elementele sale pot fi referite prin a[0],a[1],,a[99]. a[0] are ca valoare valoarea primului element din tablou, iar variabila a are ca valoare adresa acestui element. char m[10]; float x[10], y[10][20]; La elementele matricii y ne referim prin: y[0][0] y[0][1]y[0][19] y[1][0] y[1][1]y[1][19] y[2][0] y[2][1]y[2][19] y[10][0] y[10][1]y[10][19] y are ca valoare adresa elementului y[0][0]. Preprocesare Un program sursă C sau C++ poate fi prelucrat înainte de a fi supus compilării. O astfel de prelucrare se numeşte preprocesare. Ea este realizată automat înaintea compilării. Preprocesarea asigură: - includeri de fişiere cu texte sursă; 11

12 - definiţii şi apeluri de macrouri; - compilare condiţionată. Preprocesarea se realizează prin prelucrarea unor informaţii specifice care au ca prim caracter, caracterul diez (#). În paragraful de faţă vom aborda construcţia #include şi parţial construcţia #define utilizată la substituiri de succesiuni de caractere. Ulterior se vor descrie şi alte facilităţi oferite de preprocesare. Includeri de fişiere cu texte sursă Un fişier cu text sursă poate fi inclus cu ajutorul construcţiei #include. Aceasta construcţie are unul din următoarele formate: #include "specificator_de_fisier" sau #include <specificator_de_fisier> unde: specificator_de_fişier defineşte un fişier cu text sursă păstrat pe disc. În faza de preprocesare, textul fişierului respectiv se substituie construcţiei #include. În felul acesta textul fişierului respectiv ia parte la compilare împreună cu textul în care a fost inclus. Formatul în parantezele unghiulare <...> se utilizează la includerea fişierelor standard, cum sunt cele care conţin prototipuri pentru funcţiile de bibliotecă. În cazul în care se utilizează caracterele ghilimele, fişierul se caută în directorul curent sau conform căii dacă aceasta este prezentă. Exemple: 1. #include <stdio.h> Fişierul stdio.h conţine prototipurile pentru o serie de funcţii ce realizează operaţii de intrare/ieşire. 2. #include "fis1.cpp" Se include textul fişierului fis1.cpp aflat în directorul curent. 12

13 3. #include "c:\\temp\\user\\fis2.c" În acest exemplu este prezentă calea fişierului fis2.c. Substituiri de caractere la preprocesare Construcţia #define se poate folosi la substituţii de succesiuni de caractere. #define nume succesiune_de_caractere unde: nume - este precedat şi urmat de cel puţin un spaţiu. Folosind această construcţie, preprocesarea substituie nume cu succesiune_de_caractere peste tot în textul sursă care urmează construcţiei #define respective, exceptând cazul în care nume apare într-un şir de caractere sau într-un comentariu. Numele definit printr-o construcţie #define substituindu-se prin secvenţa de caractere corespunzătoare nu mai este prezent la compilare. De obicei, un astfel de nume se scrie cu litere mari pentru a scoate în evidenţă faptul că el este definit printr-o construcţie #define. Succesiune_de_caractere începe cu primul caracter care nu este alb. Ea poate fi continuată pe mai multe linii terminând rândul care dorim să se continue cu backslash. #define este folosită frecvent pentru a defini constante; de aceea numele astfel definit se spune că este o constantă simbolică. O construcţie #define începe substituţia pe care o defineşte din punctul în care ea este scrisă şi până la sfârşitul fişierului în care ea este scrisă sau până la întâlnirea unei construcţii #undef care o anulează. Aceasta are formatul: #undef nume La întâlnirea ei, se dezactivează substituirea lui nume cu succesiunea de caractere care i-a fost ataşată în prealabil printr-o construcţie #define. 13

14 Exemple: 1. #define A 10 /* A se substituie prin 10 începând din acest punct al fişierului sursă */ #define MAX 20 #define DIMMAX (A*MAX) char tab[a]; double mat [MAX] [DIMMAX]; După preprocesare se obţin declaraţiile: char tab[10]; double mat[20][10*20]; DIMMAX s-a substituit prin (10*20) şi nu prin valoarea 200 a produsului deoarece preprocesorul nu face calcule, ci numai substituţii. Din această cauză se recomandă ca expresiile utilizate în construcţiile #define să fie incluse în paranteze rotunde. 2. #define A 123 #detine B A+10 x=2*b; // se substituie prin x=2*123+10; 3. #define A

15 #define B (A+12) x=2*b; // se substituie prin x=2*(123+10); 4. #define A 100 int x [A+1] ; // declaraţia devine int x[100+1]; #undef A #define A 1.5 double y; y=a; // y=1.5; Constantele simbolice se utilizează frecvent în locul constantelor obişnuite deoarece ele prezintă următoarele avantaje: permit să se atribuie nume sugestive unor constante. permit realizarea de prescurtări. permit înlocuirea simplă a unei constante printr-o alta. Bibliografie: V. Iordan- Algoritmi si programare in C, Ed.Eurostampa,

Programarea şi utilizarea calculatoarelor

Programarea şi utilizarea 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 3 Elemente introductive ale

Mai mult

Microsoft Word - CarteC.doc

Microsoft Word - CarteC.doc Transmiterea parametrilor unei funcții Parametrii se transmit de la funcţia apelantă la funcţia apelată prin intermediul stivei. La apelul unei funcţii, pe stivă se crează o înregistrare de activare, care

Mai mult

Limbaje de Programare Curs 6 – Functii de intrare-iesire

Limbaje de Programare   Curs 6 – Functii de intrare-iesire Limbaje de Programare Curs 6 Funcţii de intrare-ieşire Dr. Casandra Holotescu Universitatea Politehnica Timişoara Ce discutăm azi... 1 Citire formatată 2 Citirea şirurilor de caractere 3 Citirea unor linii

Mai mult

Slide 1

Slide 1 CURS 4 Structura generală a unui program C Program - ansamblu de instrucţiuni incluse în una sau mai multe funcţii, care specifică operaţiile ce trebuie efectuate asupra unor date pentru a fi prelucrate

Mai mult

E_d_Informatica_sp_SN_2014_bar_10_LRO

E_d_Informatica_sp_SN_2014_bar_10_LRO Examenul de bacalaureat naţional 2014 Proba E. d) Informatică Varianta 10 Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu. Timpul de lucru efectiv este de 3 ore. În rezolvările cerute,

Mai mult

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici Operatii pe biti Operatorul conditional Operatori Logici

Mai mult

Slide 1

Slide 1 1 PROIECTAREA ALGORITMILOR Lect. univ. dr. Adrian Runceanu 1 Curs Alocarea dinamică de memorie în C++ Conţinutul cursului 1. Tipuri de date. Conceptul de pointer 3. Operatori specifici pointerilor 4. Aritmetica

Mai mult

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode]

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode] Detalii de implementare. Declararea variabilelor, transmiterea parametrilor catre subprograme. Declararea variabilelor variabile globale -declarate in afara oricarei functii variabile locale -declarate

Mai mult

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa a două funcţii care au acelaşi nume În C++ acest lucru

Mai mult

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Logică și structuri discrete Limbaje regulate și automate Marius Minea   marius/curs/lsd/ 24 noiembrie 2014 Logică și structuri discrete Limbaje regulate și automate Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 24 noiembrie 2014 Un exemplu: automatul de cafea acțiuni (utilizator): introdu

Mai mult

Microsoft Word - Lab1a.doc

Microsoft Word - Lab1a.doc Sisteme de numeraţie şi coduri numerice 1.1. Sisteme de numeraţie 1.2. Conversii generale între sisteme de numeraţie 1.3. Reprezentarea numerelor binare negative 1.4. Coduri numerice 1.5. Aplicaţii In

Mai mult

L7

L7 Lucrarea de laborator nr. 7 POINTERI 1. Conţinutul lucrării În lucrare se prezintă tipul pointer, operaţiile permise asupra pointerilor, modul de alocare şi eliberare dinamică a memoriei. 2. Consideraţii

Mai mult

Microsoft Word - O problema cu bits.doc

Microsoft Word - O problema cu bits.doc O problemă cu bits 1 Tiberiu Socaciu Enunţul Pe pagina Proful de Mate de pe Facebook 2 am primit de la un elev de clasa a IX-a următoarea provocare 3 : Vom oferi două soluţii, una folosind manipulări de

Mai mult

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja far Mohammed ibn Musâ al- Khowârizmî în cartea sa intitulată

Mai mult

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx Curs SDA (PC2) Curs 4 Structuri de date (continuare) Iulian Năstac 10. Funcţii pentru alocarea dinamică a memoriei (Recapitulare) Alocarea dinamică este caracteristica prin care un program poate obţine

Mai mult

Limbaje de Programare Curs 8 – Fisiere

Limbaje de Programare   Curs 8 – Fisiere Limbaje de Programare Curs 8 Fişiere Dr. Casandra Holotescu Universitatea Politehnica Timişoara Ce discutăm azi... 1 Lucrul cu fişiere 2 Fişiere de tip text 3 Funcţii pentru cazuri de eroare 4 Fişiere

Mai mult

Programarea calculatoarelor. Note de curs Marius Minea 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolu

Programarea calculatoarelor. Note de curs Marius Minea 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolu 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolul programelor e de a efectua în principal calcule matematice. Discutăm de aceea structura programelor făcând

Mai mult

Microsoft Word - PCLP2_Curs_4_2019.doc

Microsoft Word - PCLP2_Curs_4_2019.doc 12. Tipuri de date derivate direct - Tipul pointer Tipurile de date derivate direct sunt tipuri de date create pe baza unor tipuri de date existente. In limbajul C, un astfel de tip, nestructurat (simplu),

Mai mult

E_d_Informatica_sp_MI_2015_bar_02_LRO

E_d_Informatica_sp_MI_2015_bar_02_LRO Examenul de bacalaureat naţional 2015 Proba E. d) Informatică Varianta 2 Filiera teoretică, profilul real, specializările: matematică-informatică matematică-informatică intensiv informatică Toate subiectele

Mai mult

SUBPROGRAME

SUBPROGRAME SUBPROGRAME Un subprogram este un ansamblu ce poate conţine tipuri de date, variabile şi instrucţiuni destinate unei anumite prelucrări (calcule, citiri, scrieri). Subprogramul poate fi executat doar dacă

Mai mult

Microsoft Word - CarteC.doc

Microsoft Word - CarteC.doc INSTRUCŢIUNILE LIMBAJULUI C (2) Instrucţiuni repetitive Instrucţiunea while Instrucţiunea while are formatul: while(expresie) Expresie DA Instrucţiune NU Instrucţiunea while produce în primul rând evaluarea

Mai mult

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012 Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012 EROARE: lipsa iniţializării E o EROARE să folosim o variabilă neiniţializată int sum; for (i=0; i++ < 10; ) sum += a[i];

Mai mult

Programarea şi utilizarea calculatoarelor

Programarea şi utilizarea 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 6 Instrucţiunile limbajului

Mai mult

tehnologii web

tehnologii web Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Tehnologii Web Lector univ. dr. Adrian Runceanu 1 Curs 7 Limbajul PHP (partea II) 2

Mai mult

Slide 1

Slide 1 STRUCTURI DE DATE Fundamente C/C++ EVALUARE SEMESTRU: 4 puncte Testare cunostinte: 1. Calculator (2 puncte) 2. Scris/Oral (2 puncte) 2 EVALUARE EXAMEN: 6 puncte Test cunostinte (pe calculator): 1 punct.

Mai mult

LUCRAREA NR

LUCRAREA NR LUCRAREA NR. 5 TIPURI DE DATE STRUCTURATE În C există două categorii de tipuri de date structurate: tablourile şi structurile. Un tablou este o colecţie omogenă de valori de acelaşi tip identificate printr-un

Mai mult

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A 1. Operatii cu matrici 1 Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A+B (adunare), aa (inmultire cu scalar), A-B scadere), AT (Transpusa),

Mai mult

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx SDA (PC2) Curs 9 Liste / Grafuri / Arbori Iulian Năstac Lista dublu înlănțuită Recapitulare Într-o astfel de listă fiecare nod conţine doi pointeri: unul spre nodul următor şi unul spre nodul precedent.

Mai mult

Microsoft Word - Curs1.docx

Microsoft Word - Curs1.docx 1. REPREZENTAREA INFORMAȚIILOR ÎN CALCULATOR 1.1. CONCEPTUL DE DATĂ ȘI INFORMAȚIE Datele desemnează elementele primare, provenind din diverse surse, fără o formă organizată care să permită luarea unor

Mai mult

-

- Cursul 6 Expresii în C/C++ (I) https://docs.microsoft.com/en-us/cpp/cpp/expressions-cpp După cum am văzut, într-un program de calcul scris în limbajul C/C++ prelucrarea datelor se realizează printr-o serie

Mai mult

Subiectul 1

Subiectul 1 Subiectul 1 În fişierul Numere.txt pe prima linie este memorat un număr natural n (n

Mai mult

Declararea variabilelor

Declararea variabilelor Platforma 3. 1 Instructiuni diverse Declararea variabilelor Tipuri de Date Tipul de dată al unui obiect/variabila specifica tipul informaţiei pe care acel obiect îl poate stoca. Exemplu: numere întregi,

Mai mult

Top

Top PROGRAMARE ORIENTATĂ PE OBIECTE Tratarea excepțiilor O excepție este o eroare care poate să apară la rularea unui program. Exemple: încercarea de deschidere a unui fișier ce nu există depășirea limitelor

Mai mult

PROGRAMARE ORIENTATA PE OBIECTE

PROGRAMARE ORIENTATA PE OBIECTE Curs 2 Principiile Programării Orientate pe Obiecte Programare Orientată pe Obiecte Tehnici de programare Programarea procedurală Modul în care este abordată programarea, din punct de vedere al descompunerii

Mai mult

Laborator 3

Laborator 3 Laborator 3 Programare III săptămâna 8-12.10.2018 OBIECTIVE: - Folosirea modificatorilor unei clase (public, abstract, final) - Folosirea modificatorilor de acces în declaraţiile membrilor unei clase Noţiuni:

Mai mult

Preprocesorul C Funcţii cu numǎr variabil de argumente 6 decembrie 2005 Programarea calculatoarelor 2. Curs 10 Marius Minea

Preprocesorul C Funcţii cu numǎr variabil de argumente 6 decembrie 2005 Programarea calculatoarelor 2. Curs 10 Marius Minea Preprocesorul C Funcţii cu numǎr variabil de argumente 6 decembrie 2005 Preprocesorul C. stdarg.h 2 Preprocesorul C extensii (macro-uri) pentru scrierea mai concisǎ a programelor preprocesorul efectueazǎ

Mai mult

Procesarea Imaginilor - Laborator 1: Introducere în utilizarea bibliotecii OpenCV 1 1. Introducere în utilizarea bibliotecii OpenCV 1.1. Introducere S

Procesarea Imaginilor - Laborator 1: Introducere în utilizarea bibliotecii OpenCV 1 1. Introducere în utilizarea bibliotecii OpenCV 1.1. Introducere S Procesarea Imaginilor - Laborator 1: Introducere în utilizarea bibliotecii OpenCV 1 1. Introducere în utilizarea bibliotecii OpenCV 1.1. Introducere Scopul acestei lucrări de laborator este de a familiariza

Mai mult

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011 Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011 I. NOŢIUNI TEORETICE A. Instrucţiuni condiţionale 1. Intrucţiunea

Mai mult

Curs 3 Permutari cu repetitie. Combinari. Algoritmi de ordonare si generare

Curs 3  Permutari cu repetitie. Combinari.  Algoritmi de ordonare si generare Curs 3 Permutări cu repetiţie. Combinări. Algoritmi de ordonare şi generare Octombrie 2015 Cuprins Algoritmi de ordonare şi generare pentru permutări cu repetiţie Reprezentarea binară a submulţimilor Algoritmi

Mai mult

PowerPoint Presentation

PowerPoint Presentation Circuite Integrate Digitale Conf. Monica Dascălu Curs Seminar Laborator notă separată Notare: 40% seminar 20% teme // + TEMA SUPLIMENTARA 40% examen 2014 CID - curs 1 2 Bibliografie Note de curs Cursul

Mai mult

Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este ace

Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este ace 174 12 Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este aceasta văzută de programatorul în limbaj de nivel înalt.

Mai mult

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia completă a subprogramului calcul, care primeşte prin intermediul

Mai mult

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx SDA (PC2) Curs 10 Arbori Iulian Năstac Definiția 1: Arbori Recapitulare Arborele este un graf orientat, aciclic și simplu conex. Definiția 2: Un arbore este un ansamblu de structuri de date de natură recursivă

Mai mult

proiectarea bazelor de date

proiectarea 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

Mai mult

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine numărul de operaţii efectuate de către un algoritm care determină

Mai mult

Microsoft PowerPoint - Curs_SDA_3_RO_2019_v2.pptx

Microsoft PowerPoint - Curs_SDA_3_RO_2019_v2.pptx Curs SDA (PC2) Curs 3 Pointeri (continuare) Structuri de date Iulian Năstac Pointeri (Recapitulare) Un pointer este o variabilă care conţine o adresă din memorie, unde se află valoarea altei variabile.

Mai mult

Declaraţii. Instrucţiuni 19 octombrie 2005 Programarea calculatoarelor 2. Curs 3b Marius Minea

Declaraţii. Instrucţiuni 19 octombrie 2005 Programarea calculatoarelor 2. Curs 3b Marius Minea Declaraţii. Instrucţiuni 19 octombrie 2005 Declaraţii. Instrucţiuni 2 Domeniul de vizibilitate al identificatorilor Pt. orice identificator, compilatorul trebuie sǎ-i decidǎ semnificaţia Identificatorii

Mai mult

Diapositive 1

Diapositive 1 Tablouri Operatii pe tablouri bidimensionale Lectii de pregatire pentru Admitere 09 / 03 / 2019 1 Cuprins Operatii pe tablouri bidimensionale 0. Tablouri unidimensionale scurta recapitulare 1.Tablouri

Mai mult

Tipuri de date abstracte 30 noiembrie 2005 Programarea calculatoarelor 2. Curs 9 Marius Minea

Tipuri de date abstracte 30 noiembrie 2005 Programarea calculatoarelor 2. Curs 9 Marius Minea Tipuri de date abstracte 30 noiembrie 2005 Tipuri de date abstracte 2 Programe compuse din mai multe fişiere Implicit, obiectele declarate la nivel de fişier sunt unice într-un program (douǎ declaraţii

Mai mult

Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut s

Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut s Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut să stocați douăzeci de nume de angajați în variabile

Mai mult

PowerPoint-Präsentation

PowerPoint-Präsentation Universitatea Transilvania din Braşov Laboratorul de Vedere Artificială Robustă şi Control Metode Numerice Curs 01 Introducere Gigel Măceșanu 1 Cuprins Obiectivele cursului Organizare: Structura cursului

Mai mult

Analiză statică Analiza fluxului de date 23 octombrie 2014

Analiză statică Analiza fluxului de date 23 octombrie 2014 Analiză statică Analiza fluxului de date 23 octombrie 2014 Analiză statică: definiție O analiză a codului sursă (fără a executa programul), cu scopul de a determina proprietăți ale programului sursă. (in

Mai mult

Limbaje de ordinul I LOGICA DE ORDINUL I Un limbaj L de ordinul I este format din: o mulţime numărabilă V = {v n n N} de variabile; conectorii şi ; pa

Limbaje de ordinul I LOGICA DE ORDINUL I Un limbaj L de ordinul I este format din: o mulţime numărabilă V = {v n n N} de variabile; conectorii şi ; pa Limbaje de ordinul I LOGICA DE ORDINUL I Un limbaj L de ordinul I este format din: o mulţime numărabilă V = {v n n N} de variabile; conectorii şi ; paranteze: (, ); simbolul de egalitate =; cuantificatorul

Mai mult

Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiil

Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiil Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiilor (engl. Information Retrieval, IR) constă în găsirea

Mai mult

Paradigme de Programare

Paradigme de Programare Paradigme de Programare Conf. dr. ing. Andrei Olaru andrei.olaru@cs.pub.ro cs@andreiolaru.ro Departamentul de Calculatoare 2019 9 : 1 / 38 Cursul 9 Concluzie Paradigma Funcțională 9 : 2 / 38 Cursul 9:

Mai mult

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011 Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011 I. NOŢIUNI TEORETICE A. Suprascrierea metodelor O clasă derivată

Mai mult

Dorel LUCHIAN Gabriel POPA Adrian ZANOSCHI Gheorghe IUREA algebră geometrie clasa a VIII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA

Dorel LUCHIAN Gabriel POPA Adrian ZANOSCHI Gheorghe IUREA algebră geometrie clasa a VIII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA Dorel LUCHIAN Gabriel POPA Adrian ZANOSCHI Gheorghe IUREA algebră geometrie clasa a VIII-a ediţia a V-a, revizuită mate 000 standard 3 10 PP Algebră Capitolul I. NUMERE REALE Competenţe specifice: Determinarea

Mai mult

Limbaje de Programare Curs 5 – Siruri de caractere

Limbaje de Programare   Curs 5 – Siruri de caractere Limbaje de Programare Curs 5 Şiruri de caractere Dr. Casandra Holotescu Universitatea Politehnica Timişoara Ce discutăm azi... 1 Şiruri de caractere 2 Tipul pointer 3 Funcţii cu şiruri de caractere Şiruri

Mai mult

Analiză de flux de date 29 octombrie 2012

Analiză de flux de date 29 octombrie 2012 Analiză de flux de date 29 octombrie 2012 Analiză statică: definiţie O analiză a codului sursă (fără a executa programul), cu scopul de a determina proprietăţi ale programului sursă. (in principal corectitudinea,

Mai mult

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de dezvoltare bazată pe un microcontroller ATmega 328P pe 8 biți cu 32kB memorie flash. Placa de dezvoltare conține:

Mai mult

Paradigme de programare

Paradigme de programare Curs 4 Transparență referențială. Legare statică / dinamică. Modelul contextual de evaluare. Transparență referențială Cuprins Efecte laterale Transparență referențială 2 Efecte laterale Efecte laterale

Mai mult

PCLPII-C16(9)

PCLPII-C16(9) Programarea Calculatoarelor și Limbaje de Programare - Curs 16 Despre proiect ce s-a studiat? ce se va studia? proiectul tema date de intrare conţinut date de ieşire C9(16)-1 Ce s-a studiat? Instrucţiuni

Mai mult

PHP (II)

PHP (II) PHP şi MySQL Bazele de date sunt colecţii de date, aranjate într-o anumită formă Operaţii : - Crearea bazei de date; - Conectarea la baza de date; - Inserarea datelor in baza de date; - Ștergerea datelor

Mai mult

Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare

Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare. 1. În declararea alăturată, câmpurile x şi y ale înregistrării pot memora coordonatele carteziene ale unui punct din planul

Mai mult

Lab6LCD

Lab6LCD LABORATOR 6 - Interfaţă pentru afişor cu cristale lichide (LCD), partea II-a Scopul lucrării În laboratorul anterior s-au implementat funcţiile rd_lcdreg(char vrs), wr_lcdreg(char vrs, char data), void

Mai mult

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da Probleme proiect TP 2016 1. BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard dacă reprezentarea binară a unuia dintre numere poate

Mai mult

Microsoft Word - Cuprins_LP.doc

Microsoft Word - Cuprins_LP.doc Cuprins CUPRINS Unitatea de învăţare Titlu Pagina INTRODUCERE 5 1 ELEMENTE GENERALE ALE LIMBAJULUI C 7 Obiectivele unităţii de învăţare nr. 1 8 1.1. Structura programelor 8 1.2. Variabile. Tipuri de variabile.

Mai mult

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema Laborator 2 - Încapsularea Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema 2.2 Să se modifice funcţiile referitoare la cerc astfel încât parametrul CERC să fie

Mai mult

Capitole Speciale de Informatică Curs 2: Determinarea vocabularului de termeni şi a listelor de postări 4 octombrie 2018 Reamintim că listele de indec

Capitole Speciale de Informatică Curs 2: Determinarea vocabularului de termeni şi a listelor de postări 4 octombrie 2018 Reamintim că listele de indec Capitole Speciale de Informatică Curs 2: Determinarea vocabularului de termeni şi a listelor de postări 4 octombrie 2018 Reamintim că listele de indecşi inversaţi se construiesc în 4 paşi: 1. Se colectează

Mai mult

MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE

MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE ŞI ALE MEDIULUI CATEDRA DE MATEMATICĂ ŞI INFORMATICĂ

Mai mult

Capitole Speciale de Informatică Curs 4: Calculul scorurilor în un sistem complet de extragere a informaţiilor 18 octombrie 2018 Reamintim că în cursu

Capitole Speciale de Informatică Curs 4: Calculul scorurilor în un sistem complet de extragere a informaţiilor 18 octombrie 2018 Reamintim că în cursu Capitole Speciale de Informatică Curs 4: Calculul scorurilor în un sistem complet de extragere a informaţiilor 18 octombrie 2018 Reamintim că în cursul precedent am prezentat modelul de spaţiu vectorial

Mai mult

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011 Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011 I. NOŢIUNI TEORETICE A. Ce este un fir de execuţie? Înainte de a defini conceptul de fir

Mai mult

Logică și structuri discrete Logică propozițională Marius Minea marius/curs/lsd/ 3 noiembrie 2014

Logică și structuri discrete Logică propozițională Marius Minea   marius/curs/lsd/ 3 noiembrie 2014 Logică și structuri discrete Logică propozițională Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 3 noiembrie 2014 Unde aplicăm verificarea realizabilității? probleme de căutare și

Mai mult

Microsoft Word - unitati de invatare 11liceu-12 sam

Microsoft Word - unitati de invatare 11liceu-12 sam 1.Unitatea de invatare: Analiza informatiei Forma de organizare: Laborator ( 4 ore) Analiza informaţiei. Noţiuni de bază: date, informaţii procesi informaţional bază informaţională flux informaţional sistem

Mai mult

Microsoft Word - Algoritmi genetici.docx

Microsoft Word - Algoritmi genetici.docx 1.1 Generalităţi Algoritmii genetici fac parte din categoria algoritmilor de calcul evoluționist și sunt inspirați de teoria lui Darwin asupra evoluției. Idea calculului evoluționist a fost introdusă în

Mai mult

Gheorghe IUREA Adrian ZANOSCHI algebră geometrie clasa a VII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA 45 Matematică. Clasa a VII-

Gheorghe IUREA Adrian ZANOSCHI algebră geometrie clasa a VII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA 45 Matematică. Clasa a VII- Gheorghe IUREA Adrian ZANOSCHI algebră geometrie clasa a VII-a ediţia a V-a, revizuită mate 2000 standard 3 Algebră Capitolul I. MULŢIMEA NUMERELOR RAŢIONALE Identificarea caracteristicilor numerelor raţionale

Mai mult

Aggregating Data

Aggregating Data Subinterogări. Subinterogări multi-row. Formatarea rezultatelor unei interogări Obiective Prin parcurgerea acestui referat studentul va dobândi cunoştinţele necesare: identificării funcţiilor grup disponibile;

Mai mult

Microsoft Word - Software pentru ordonarea multirang a componentelor unei colectivitati.doc

Microsoft Word - Software pentru ordonarea multirang a componentelor unei colectivitati.doc Software pentru ordonarea multirang a componentelor unei colectivităţi S e prezintă un algoritm pentru dispunerea elementelor unei colectivităţi în raport cu mai multe criterii şi un software aferent,

Mai mult

1

1 Contents 1 Automate finite... 2 1.1 Probleme cu AF... 2 1.2 Structuri de date pentru automate finite... 4 2 Gramatici si limbaje; gram. indep. de context... 5 2.1 Limbaje... 5 2.2 Gramatici si limbaje...

Mai mult

Microsoft Word - Curs_08.doc

Microsoft Word - Curs_08.doc Partea a II-a. Proiectarea bazelor de date Capitolul 6. Tehnici de proiectare şi modele În capitolele precedente s-au analizat modele de baze de date şi limbaje, presupunând în cele mai multe cazuri că

Mai mult

Modul Modbus ASCII SISTEME DE COMUNICATIE CURS 5 - Constantinescu Catalin Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj

Modul Modbus ASCII SISTEME DE COMUNICATIE CURS 5 - Constantinescu Catalin Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj 2.3.5.2 Modul Modbus ASCII Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj este trimis ca doua caractere ASCII (de exemplu, octetul 0x7A este transmis ca doua caractere 0x37 = 7, respectiv

Mai mult

Microsoft Word - TIC5

Microsoft Word - TIC5 CAPACITATEA CANALELOR DE COMUNICAŢIE CAPITOLUL 5 CAPACITATEA CANALELOR DE COMUNICAŢIE În Capitolul 3, am văzut că putem utiliza codarea sursă pentru a reduce redundanţa inerentă a unei surse de informaţie

Mai mult

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai specializați dintre noi în domeniul calculatoarelor

Mai mult

ALGORITHMICS

ALGORITHMICS CURS 2: Descrierea algoritmilor în pseudocod =Exemple= 1 Structura Descrierea unor algoritmi simpli Specificarea și utilizarea subalgoritmilor 2 Exemplu 1 Considerăm un tabel cu informații despre studenți

Mai mult

Slide 1

Slide 1 SCTR -SZOKE ENIKO - Curs 4 continuare curs 3 3. Componentele hard ale unui sistem de calcul in timp real 3.1 Unitatea centrala de calcul 3.1.1 Moduri de adresare 3.1.2 Clase de arhitecturi ale unitatii

Mai mult

Secţiunea 7-8 începători Concurs online de informatică Categoria PROGRAMARE PROBLEMA 1 ID 100 puncte Calculatoarele trebuie să se recunoască în rețeau

Secţiunea 7-8 începători Concurs online de informatică Categoria PROGRAMARE PROBLEMA 1 ID 100 puncte Calculatoarele trebuie să se recunoască în rețeau PROBLEMA ID 00 puncte Calculatoarele trebuie să se recunoască în rețeaua de Internet printr-un ID. În prezent, există metode de identificare a ID-ului folosite la scară globală: IPv4 și IPv6. Adresele

Mai mult

Microsoft Word - c6.doc

Microsoft Word - c6.doc Proiectarea structurata top-down a programelor complexe Aplicatie Sa se scrie un program care citeste un fisier continand un text format din cuvinte si determina si afiseaza grupe de cuvinte, grupate in

Mai mult

Limbaje Formale, Automate si Compilatoare

Limbaje Formale, Automate si Compilatoare Limbaje Formale, Automate şi Compilatoare Curs 1 2018-19 LFAC (2018-19) Curs 1 1 / 45 Prezentare curs Limbaje Formale, Automate şi Compilatoare - Curs 1 1 Prezentare curs 2 Limbaje formale 3 Mecanisme

Mai mult

Lecţia 2 Structura liniară, alternativă şi repetitivă Clasa a V-a Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o

Lecţia 2 Structura liniară, alternativă şi repetitivă Clasa a V-a Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o manieră de concepere a programelor, potrivit unor reguli bine definite şi independent de limbajul de programare. Scopul

Mai mult

I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a

I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a XI a- informatică neintensiv PROFESOR: Dumitrașcu

Mai mult

METODE NUMERICE ÎN INGINERIE

METODE NUMERICE ÎN INGINERIE METODE NUMERICE ÎN INGINERIE REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUATII LINIARE Aspecte generale (1) (2) (3) (4) (5) Unicitatea soluţiei Un sistem de ecuaţii liniare are o soluţie unică numai dacă matricea

Mai mult

PPSD

PPSD Modele paralele SPMD Modelul SPMD Comunicarea prin mesaje Message Passing Interface Modelul SPMD Modelul SPMD (Single Program Multiple Data) Acesta este un model adecvat calculatoarelor MIMD In cele ce

Mai mult

Tablouri (continuare)

Tablouri (continuare) Vector Dinamic DYNAMIC ARRAY Observații 1. Un tablou este static: nu pot fi inserate sau şterse celule. 2. Vector - tablou unidimensional 3. Reprezentarea vectorilor este secvenţială, adică elementele

Mai mult

carteInvataturaEd_2.0_lectia5.pdf

carteInvataturaEd_2.0_lectia5.pdf Lect ia3 Diagrame Veitch-Karnaugh 5.1 Noţiuni teoretice Diagramele Veich-Karnaugh (V-K) sunt o modalitate de reprezentare grafică a funcţiilor logice. Pentru o funct ie de N variabile, diagrama corespunz

Mai mult

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (vezi Program C) - BUILD: operație complexă prin care

Mai mult

Microsoft Word _POO_Lab_1_Modificari_v01.htm

Microsoft Word _POO_Lab_1_Modificari_v01.htm Laborator POO - 00 (draft) 00-00 / 0//00 00_POO_Lab Modificari_v0.htm POO Laborator Modificarea programelor Java. Studiu de caz: programul Salut.java. Varianta care utilizeaza un argument al programului

Mai mult

Microsoft Word - lab1_2007.doc

Microsoft Word - lab1_2007.doc 1. Prezentarea mediului de lucru Matlab Acest prim laborator are drept scop prezentarea principalelor caracteristici ale mediului de lucru Matlab. Vor fi trecute în revistă, pe scurt, principiul de funcţionare,

Mai mult

I

I METODA VECTORIALĂ ÎN GEOMETRIE prof. Andrei - Octavian Dobre Această metodă poate fi descrisă după cum urmează: Fiind dată o problemă de geometrie, după explicitarea şi reprezentarea grafică a configuraţiei

Mai mult

LUMINIŢA SCRIPCARIU

LUMINIŢA SCRIPCARIU ANEXA A PROGRAMAREA SERVICIILOR INTERNET Programarea serviciilor de reţea implică o cunoaştere amănunţită a modului în care circulă datele prin Internet şi, mai precis, a protocoalelor din suita TCP/IP

Mai mult