Slide 1
|
|
- Lia Stănescu
- 4 ani în urmă
- Vzualizari:
Transcriere
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 în sensul dorit de către utilizator. Program C 0. Documentatie 1. Directive de preprocesare a) Includeri de fişiere cu text sursă b) Macrosubstituiri c) Includeri conditionate 2. Sectiunea de declaratii a) variabile b) tipuri utilizator c) functii Functia principala int main()... return 0; 4. Definirea functiilor utilizator
2 0. Documentatie - set de comentarii care conţin numele programului şi alte detalii utile programatorului. Exemple //Program: easycalc //Calculator pentru operatii elementare //Exemplu de folosire a instructiunii switch //Introducerea functiei system //system("c:\\windows\\system32\\calc.exe"); // - apeleaza aplicatia calc.exe
3 1. Directive de preprocesare a) Includeri de fişiere cu text sursă b) Macrosubstituiri c) Includeri conditionate Preprocesare - prelucrarea unui fişier sursă înainte de a fi supus compilării => un fişier temporar care conţine un cod sursă provenit în urma traducerii directivelor de preprocesare. Preprocesorul C - program separat, invocat de către compilator în prima parte a procesului de compilare a) Includeri de fişiere cu text sursă - se fac cu directiva # include printr-o construcţie de forma : #include <nume_fisier.h> #include "nume_fisier.c nume_fisier = fişier cu text sursă păstrat pe disc
4 În faza de preprocesare textul fişierului inclus se substituie construcţiei #include şi apoi ia parte la compilare împreună cu textul fişierului în care a fost inclus #include <nume_fisier.h> - se foloseşte pentru includerea fişierelor standard care conţin prototipuri pentru funcţiile de bibliotecă (librării). - instruiesc preprocesorul să trateze fişierele header ca şi cum ar face parte din codul sursă care se compilează. Librăriile sunt coduri gata compilate care se adaugă programului sursă C la compilarea acestuia. Parantezele unghiulare instruiesc compilatorul să caute fişierele care trebuie incluse în directorul cu fişiere antet (de exemplu, C:\BorlandC\include). Exemple: #include <stdio.h> #include <math.h> Construcţia #include "nume_fisier.c" se utilizează la includerea fişierelor nestandard care conţin prototipuri ale eventualelor funcţii definite de către utilizator. Fişierul care trebuie inclus se caută în directorul curent dacă nu este specificată nici o cale. Exemple: # include "factorial.c" # include "C:\\Dev-Cpp\\PERSLIB\\persmat.c"
5 b) Macrosubstituiri -substituirea unor nume prin succesiuni de caractere şi se fac cu directiva #define sub forma: #define succesiune_de_caractere (vezi constante simbolice). Macroprocesorul poate efectua şi substituţii de argumente în macrodefiniţii. Exemplu: #define max(a,b) (a>b?a:b) #define min(a,b) (a<b?a:b) #define grade_rad (x) ((x)*m_pi/180.0)
6 Program exemplu: macrodefiniţii #include <stdio.h> #include<conio.h> #define max2(a,b) (a>b?a:b) #define min2(a,b) (a<b?a:b) #define max3(a,b,c)(max2(a,b)>c?max2(a,b):c) #define schimb(a,b) t=a;a=b;b=t; #define moddif(a,b) ((a>b)?(a-b):(b-a)) #define suma(a,b) (a+b) int main() int a,b,t; printf("a= "); scanf("%d",&a); printf("b= "); scanf("%d",&b); printf("\nmaximul este %d",max2(a,b)); printf("\nminimul este %d",min2(a,b)); printf("\nmodulul diferentei este %d",moddif(a,b)); printf("\nsuma numerelor este %d",suma(a,b)); schimb(a,b); printf("\ndupa schimbare valorile a si b sunt %d si %d",a,b); while(!_kbhit()); return 0;
7 c) Includeri condiţionate - se folosesc pentru includerea unor fişiere numai atunci când este îndeplinită o anumită condiţie Exemplu: #if SYSTEM == MSDOS // daca sistemul de operare este MS-DOS #include <dos.h> // se foloseste headerul <dos.h> #else #include <windows.h> // altfel, se foloseste headerul <windows.h> #endif Includerile condiţionate se mai pot folosi pentru construirea grupurilor condiţionate sub forma: #ifdef MACRO text controlat #endif /* MACRO */ Textul controlat va fi inclus numai dacă este definită macrocomanda MACRO şi acest text poate include directive de preprocesare. Exemplu: #ifdef TURBOC #define INT_SIZE 16 #else #define INT_SIZE 32 #endif // in TurboC valorile intregi // se stocheaza pe 16 biti iar in SO Unix // acestea se stocheaza pe 32 biti // orice includere condiţionată se încheie cu #endif.
8 2. Sectiunea de declaratii a) variabile b) tipuri utilizator c) functii... În această secţiune se stabilesc numele şi atributele variabilelor, a tipurilor de date utilizator sau ale funcţiilor 3. Functia principala int main()... return 0; 4. Definirea functiilor utilizator
9 Tipuri de date în C -descriu tipurile valorilor diverselor variabile, constante, funcţii, etc. ale unui program. - fiecare variabilă folosită într-un program C trebuie să fie declarată compilatorului. - declaraţia va conţine numele variabilelor şi tipul acestora. Exemplu:... int zi,luna,an:... zi = 27; luna = 3; //variabilele zi, luna şi an au valori diferite dar au acelaşi tip an = 2019; float medie;... medie = 3; //variabilele luna şi medie au aceeaşi valoare dar tipuri diferite 1) Fiecărui tip de dată îi corespunde o denumire (un cuvânt cheie) care este utilizată pentru crearea în memorie a obiectelor ce vor conţine valori corespunzătoare tipului respectiv. 2) Fiecărui tip de date îi corespunde o anumită mărime a zonei de memorie în care se păstrează valoarea unei date de tipul respectiv. 3) Fiecărui tip de date îi corespunde o anumită gamă de valori, determinată de mărimea locaţiei de memorie corespunzătoare datelor de tipul respectiv.
10 Tipuri de date de bază (tipuri predefinite) - puse la dispozitie de catre limbajul de programare Tipuri de date derivate (tipuri utilizator) - se construiesc cu ajutorul tipurilor de bază
11 Tipuri de date de bază - tipurile predefinite in C: char - tip de date ale căror valori sunt reprezentate pe un singur octet (byte) int - tip de date ale căror valori sunt reprezentate pe 2 octeţi float - tip de date reale reprezentate în virgulă mobilă, în simplă precizie double - tip de date reale reprezentate în virgulă mobilă, în dublă precizie În plus, există câţiva calificatori care pot fi aplicaţi acestor tipuri de bază: unsigned, short şi long
12 Structura functiilor Functii in C - încapsulează una sau mai multe instrucţiuni, variabile şi parametri într-un pachet unificat care poate fi apelat din interiorul programului - împart sarcinile mari de calcul ale unui program în sarcini de complexitate mai mică Definirea functiilor tip nume (listă parametri formali) declaraţii instrucţiuni tip = tip de baza sau tipul void Funcţiile pot returna valori având ca tip: tipuri de bază pointeri structuri pointeri la structuri pointeri la tablouri Funcţiile nu pot returna: tablouri
13 Parametrii functiilor -o funcţie poate avea unul sau mai mulţi parametri, dar poate de asemenea să nu aibă nici un parametru. - sunt folosiţi pentru a face transferuri de date între funcţii - sunt de două feluri: a) parametri formali - nu reprezintă valori concrete ci ţin doar locul unor valori pentru a se putea exprima procesul de calcul realizat de către funcţie în momentul apelului ei - vor fi înlocuiţi de către cei actuali în momentul apelului funcţiei. b) parametri actuali - parametrii transmişi unei funcţii şi care reprezintă valori concrete cu care sunt apelate funcţiile. - pot fi constante, variabile, expresii - nu este obligatoriu ca numele parametrilor actuali să fie identice cu cele ale parametrilor formali. Transmiterea parametrilor între funcţii
14 Exemple: char ascii (int valoare) char c; c = (char) (valoare) return c; int cod (char c) int codc; codc = (int) (c) return codc; int cod (char c) return (int) (c); Variabilele din interiorul unei funcţii se numesc variabile locale şi aparţin clasei automatic. - sunt "vizibile" numai în corpul funcţiei în care au fost declarate şi există doar atâta timp cât funcţia în care au fost declarate se află în execuţie - la ieşirea din funcţie valorile lor sunt şterse din memorie (sunt volatile) Exemple: Variabile c este de tip automatic şi va fi alocată în memorie de fiecare dată când se execută funcţia suma. Compilatorul va crea un cod pentru alocarea dinamică a variabilei, pentru iniţializarea ei şi pentru eliminarea ei din memorie la încetarea execuţiei funcţiei suma.
15 Variabile statice - variabile locale care nu se alocă pe stivă ci într-o zonă specială de memorie, rezervată acestui tip de variabile - trebuie să fie precedate la declarare de cuvântul cheie static - spre deosebire de variabilele automatic ele există tot timpul şi nu numai atunci când este executată funcţia (nu îşi pierd valoarea între două apeluri ale funcţiei în care sunt declarate) Exemplu: static int c; Variabilele globale - variabile declarate în afara oricărei funcţii a programului - sunt iniţializate automat cu zero şi pot fi utilizate de către orice funcţie a programului - sunt variabile externe, adică pot fi utilizate într-o anumită funcţie a programului chiar dacă nu au fost declarate în funcţia respectivă - au tipul static automat. Recomandare: 1. Este recomandabilă folosirea variabilelor locale deoarece acest lucru conduce la urmărirea mai uşoară a codului unei funcţii particulare. 2. Dacă folosirea variabilelor locale conduce la transmiterea multor parametri sau la reproducerea inutilă a mai multor variabile, atunci este recomandabil să fie folosite variabile globale.
16
17 Apelul funcţiilor O funcţie se apelează printr-o construcţie de forma: nume (listă parametri efectivi) Parametrii efectivi - argumentele funcţiei (adică parametrii cu care se apelează funcţia) - trebuie să corespundă cu cei formali (folosiţi la declararea funcţiei) în ordine şi tip. - sunt pasati funcţiilor prin valoare, astfel încât funcţia primeşte o copie a argumentului şi deci ea poate modifica argumentul său fără a modifica originalul. Pentru ca o funcţie să poate modifica argumentul original i se va transmite un pointer la acesta. Valorile returnate de către funcţii pot fi folosite ca şi argumente ale altor funcţii # include <stdio.h> int f(int n) return 2*n; int g(int n) return n*n; int main() int m; printf("introduceti o valoare intreaga: "); scanf("%d",&m); printf("f(x)=%d \t f(g(x))= %d", f(m),f(g(m))); printf("\nf(x)=%d \t g(f(x))= %d", f(m),g(f(m))); return 0;
18 Program exemplu: calculul mediei valorilor unui şir de elemente //exemplu functie avand ca parametru un tablou #include<stdio.h> #include<conio.h> float medie (int n, float sir[]) int i; float m,s=0; for(i=0;i<n;i++) s=s+sir[i]; m=s/n; return m; int main() int n,i; float note[10],med; printf("n= "); scanf("%d",&n); for(i=0;i<n;i++) printf("n%d: ",i); scanf("%f",¬e[i]); med=medie(n,note); printf("\nmedia: %.2f",med); return 0; Dimensiunea şirului poate fi omisă în prototipul funcţiei. De asemenea, valoarea primei dimensiuni a unui tablou multidimensional este opţională deoarece compilatorul nu are nevoie de valoarea primei dimensiuni pentru a calcula adresele elementelor tabloului ci numai de dimensiunile următoare. Astfel, dacă avem declaraţia: char Mat[6][8]; Adresa elementului Mat[2][3] va fi adresa lui Mat+2*8+3 deoarece Mat (numele tabloului) este un pointer având ca valoare adresa primului sau element.
19 Prototipul funcţiilor O funcţie poate fi apelată într-un anumit punct al unui program dacă a fost în prealabil definită în acel program. Totuşi, o funcţie poate fi apelată şi în cazul în care corpul de instrucţiuni urmează apelului ei. In acest caz, în secţiunea de declaraţii a programului trebuie declarat prototipul functiei. Prototipul unei funcţii = antetul ei urmat de ; - se foloseşte pentru declararea unei funcţii înainte de definirea ei - poate conţine doar tipul parametrilor formali ai funcţiei, fără numele lor Compilatorul utilizează datele din prototip pentru a verifica tipul parametrilor de la apel. În cazul în care un parametru efectiv are un alt fel de tip decât cel din prototip compilatorul converteşte automat valoarea parametrului efectiv spre tipul indicat în prototip. Fişierele header sunt fişiere cu astfel de prototipuri de funcţii predefinite ale limbajului.
20 Exemplu: int main ( ) long n, k, cnk ; double fact (long val); cnk = fact(n)/(fact(k)*fact(n-k)); return 0; // prototip fact // 3 apeluri ale lui fact //exemplu de funcţie factorial mai rapidă decât cele prezentate anterior double fact (long val) long rez=val; // antet fact // corp fact while(--val>1) rez*=val; return rez;
21 int decidebisect(...) int i;... i=(an%4==0 && an%100!=0) an%400==0); //un an este bisect dacă este divizibil cu 400 //sau dacă este divizibil cu 4 dar nu şi cu 100 //anii de sfârşit de secol nu sunt bisecţi chiar dacă urmează la 4 ani după un an bisect, //cu excepţia celor care sunt divizibili cu 400 //ani bisecţi "obişnuiţi": 1872, 1912, 1960, 1996, anii divizibili cu 4 //excepţii: 1800, 1900, 2100, anii de sfârşit de secol divizibili cu 100 //sunt totuşi ani bisecţi: 2000, anii de sfârşit de secol divizibili cu 400 int b, an; FILE *f; f=fopen("d:\\anibis.dat","w"); for(an=1872;an<=2110;an++) if(an%400==0) b=1; else if(an%100==0) b=0; else if(an%4==0) b=1; else b=0; fprintf(f,"\nan: %d\tbisect: %s",an,b==1? DA : NU );
Microsoft Word - CarteC.doc
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
Mai multMicrosoft 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 multLimbaje 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 multL7
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 multSlide 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 multMicrosoft 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 multSUBPROGRAME
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 multProgramarea ş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 multMicrosoft 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 multLaborator 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 multOperatorii 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 multTipuri 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 multtehnologii 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 multSlide 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 multPreprocesorul 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 multParadigme 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 multMicrosoft 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 multE_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 multLimbaje 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 multMicrosoft 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 multPROGRAMARE 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 multLimbaje 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 multProcesarea 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 multParadigme 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 multLimbaje 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 multE_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 multLaborator 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 multMicrosoft 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 multLaborator 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 multProgramarea 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 multLUCRAREA 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 multInterfeț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 multDeclaraţ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 multTop
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 multMicrosoft 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 multMicrosoft 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 multDeclararea 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 multMicrosoft 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 multMicrosoft 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 multProgramarea ş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 multPropunator: 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 multLaborator 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 multObject Oriented Programming
UNIVERSITATEA BABEŞ-BOLYAI Facultatea de Matematică şi Informatică Programare orientată obiect Curs 02 Laura Dioşan 2 POO Elemente de bază ale limbajului C++ Referinţe şi pointeri Vectori TAD-uri 3 Tipul
Mai multLaborator 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 multALGORITMII Ş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 multPPSD
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 multGestionarea I/E
Gestionarea I/E Apelurile de sistem I/O in Linux si apelurile API de I/E pentru Windows Herea Cristian 431 A 1. Linux Apeluri de sistem (system calls) Sistemele de operare au un nivel suplimentar de interfete
Mai multPHP (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 multLab6LCD
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 multProgramarea şi utilizarea calculatoarelor
Programare orientată pe obiecte # 10 JAVA Limbajul JAVA. Clasa String 2018 Adrian Runceanu www.runceanu.ro/adrian copyright@www.adrian.runceanu.ro Curs 10 Clasa String in Java 03.12.2018 Curs - Programare
Mai multproiectarea 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 multLaborator 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-
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 multMicrosoft Word - Raspunsul la niste provocari. Partea III..doc
Răspunsul la niște provocări. Partea a III-a. Re-citirea problemei cu alți ochelari Tiberiu Socaciu Preambulul Ca urmare a unei provocări primite pe pagina Proful de Mate de pe Facebook 1, de la un elev
Mai multPowerPoint-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 multMicrosoft 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 multIngineria Sistemelor de Programare
Ingineria Sistemelor de Programare Agregarea si Mostenirea mihai.hulea@aut.utcluj.ro 2019 Compozitia si agregarea Relatia dintre obiecte raspunde afirmativ la intrebarea are un/are o Exemple: Telefonul
Mai multMicrosoft 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 multMicrosoft 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 multMicrosoft 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 multMatrici ș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 multDiapositive 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 multPROGRAMARE OBIECT-ORIENTATA LABORATOR 1 INTRODUCERE IN CLASE SI OBIECTE Introducere teoretica Prin intermediul unei Clase ne dorim sa construim tipuri
PROGRAMARE OBIECT-ORIENTATA LABORATOR 1 INTRODUCERE IN CLASE SI OBIECTE Introducere teoretica Prin intermediul unei Clase ne dorim sa construim tipuri noi de date, inexistente pana in momentul acela in
Mai multALGORITMICĂ. 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 multProiectarea Sistemelor Software Complexe
Proiectarea Sistemelor Software Complexe Curs 4 Arhitecturi de Sistem Software Bazate pe Tehnologii Middleware. Obiecte Distribuite. Rolul unui arhitect software este foarte asemănător cu cel al unui arhitect
Mai multLogică ș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 multAdresarea 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 multPCLPII-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 multMINISTERUL 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 multAnaliză 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 multMicrosoft 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 multMicrosoft PowerPoint - Curs_TPI_22_v01.ppt
UPB Facultatea ETTI Curs TPI an III RST 2009-2010 Tehnologii de Programare in Internet (TPI / RST) Titulari curs: Mihnea Magheti, Eduard-Cristian Popovici Suport curs: http://discipline.elcom.pub.ro/tpi/
Mai multPowerPoint Presentation
Auto Id Middleware Preocupă-te de nevoile tale de business, de tehnologie ne ocupăm noi! Vrei să integrezi RFID și alte echipamente Auto Id în procesele tale de business? Concentrează-te pe logica de aplicație
Mai multGhid privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozitarii centrali de titluri de val
Ghid privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozitarii centrali de titluri de valoare (CSDR) 30/04/2019 ESMA70-151-367 RO Ghid privind
Mai multCURS
Capitolul Cuvinte-cheie SOAP, XML, REST, ASP.NET, client web, PHP, NuSOAP IH.12.1. Introducere Ce înseamnă serviciile web? Ele înseamnă invocarea la distanță a metodelor, prin web; limbaje și platforme
Mai mult1. 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 multNORMĂ pentru aplicarea Ghidului ESMA privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozi
NORMĂ pentru aplicarea Ghidului ESMA privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozitarii centrali de titluri de valoare (CSDR) În temeiul
Mai multLaborator 04: Apeluri de funcții
2016/09/27 08:03 1/10 Laborator 04: Apeluri de funcții Laborator 04: Apeluri de funcții În acest laborator vom prezenta modul în care se realizează apeluri de funcții. Vom vedea cum putem folosi instrucțiunile
Mai multALGORITHMICS
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 multTablouri (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 multLaborator 7: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea I - proceduri) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de blo
Laborator 7: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea I - proceduri) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de blocurile anonime) care poate primi parametri şi poate
Mai multSISTEM DE LICENȚIERE A CLUBURILOR DE FOTBAL FMF :SL/ST.11-d.02 Standard de calitate pentru licențiere (ED.2012) Ediția 2 Procedura de păstrare și arhi
SISTEM DE LICENȚIERE A CLUBURILOR DE FOTBAL FMF :SL/ST.11-d.02 Standard de calitate pentru (ED.2012) Ediția 2 Procedura de păstrare și arhivare a documentelor și înregistrărilor PROCEDURA DE LICENȚIERE
Mai multPowerPoint-Präsentation
Universitatea Transilvania din Braşov Laboratorul de Vedere Artificială Robustă şi Control Sisteme cu MicroProcesoare Curs 05 Convertorul analog numeric Tiberiu Teodor COCIAȘ 1 Cuprins Generalității Principiu
Mai multPowerPoint 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 multAnaliză 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 multLaborator 1-Teoria probabilitatilor si statistica matematica Sef lucrari dr.mat. Daniel N.Pop Departamentul de calculatoare si inginerie electrica 1 P
Laborator 1-Teoria probabilitatilor si statistica matematica Sef lucrari dr.mat. Daniel N.Pop Departamentul de calculatoare si inginerie electrica 1 Prezentare generală Matlab 1.1 Help on-line 1. Limbajul
Mai multAggregating 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 multCapitole 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 multMicrosoft Visual C++ (abreviat MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/
Proiect (100 puncte) Pe o platformă online se comercializează produse alimentare și nealimentare. Pentru un produs, pe lângă atributele comune: cod identificare, denumire, descriere, categorie, preț etc.
Mai multMicrosoft Word - lab4.doc
Lucrarea 4 Moştenire şi polimorfism Cuprins Relaţia de moştenire în Java...1 Reguli de vizibilitate în contextul relaţiei de moştenire...2 Constructorii şi moştenirea...4 Operatorul instanceof...4 Redefinirea
Mai multSlide 1
- Curs 2 - Verilog HDL reprezintă un limbaj utilizat pentru descrierea sistemelor numerice. Sistemele numerice pot fi calculatoare, componenete ale acestora sau alte structure care manipulează informaţie
Mai multLucrarea nr
Lucrarea nr. 3 Tehnici de programare a aplicaţiilor pe sisteme cu microcontroloare 1. Obiectivul lucrarii Lucrarea urmăreşte studierea tehnicilor de dezvoltare si depanare a programelor scrise pentru sisteme
Mai multModul 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 multMicrosoft Word - Programarea Portului Paralel - IBM-PC. .doc
Lucrarea 1. Programarea Portului Paralel - IBM-PC. 1. Introducere. Lucrea are ca scop familiarizarea cu portul paralel al PC-ului, descriindu-se structura portului parelel, configuraţia acestuia, regimurile
Mai multLUMINIŢ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 multCurs 8: Tehnica divizării (I) Algoritmi si structuri de date - Curs 8 1
Curs : Tehnica divizării (I) 1 In cursul anterior am văzut cum se analizează eficiența algoritmilor recursivi Se scrie relația de recurență corespunzătoare timpului de execuție Se rezolvă relația de recurență
Mai multLaborator 5 - Paradigme de Programare
Laborator 5 - Paradigme de Programare Dezvoltarea unui GUI utilizând libsdl Graphics și platforma Kotlin-Native Kotlin ca și Python nu au avut din proiectare o bibliotecă specializată în oferirea de facilități
Mai multMicrosoft Word - Curs_07.doc
5.3 Modificarea datelor în SQL Pentru modificarea conţinutului unei baze de date SQL pune la dispoziţie instrucţiunile insert, delete şi update. 5.3.1 Inserări în baza de date Sintaxa instrucţiunii insert
Mai mult