/*
|
|
- Dafina Eftimie
- 4 ani în urmă
- Vzualizari:
Transcriere
1 Laborator 5 Cuprins 1. Alegerea cheilor Criptarea RSA Problema rucsacului Merkle - Hellman. Generarea cheilor Merkle - Hellman. Criptarea Logaritmul discret Alegerea cheilor Explicaţii Utilizatorul A alege două numere prime mari şi. Calculează şi indicatorul lui Euler pentru, dat de: (. Alege astfel încât (,. Calculează astfel încât Cheia publică este dată de perechea Cheia privată este dată de perechea Soluție: # include "utile.h" citeste_alfabet(); long long p,q,n,phi,e,d; cout<<"programul va genereaza o cheie pentru criptare;"; srand((int)time(null)); p=da_prim(...);//generam numere astfel incat produsul a doua asemenea numere sa nu depaseasca domeniul pentru variabile q=da_prim(...); n=p*q; phi=(p-1)*(q-1); e=3+rand()%(phi-3); d=invers(e,phi); while(d<0)//pentru ca e sa fie inversabil e++; d=invers(e,phi); cout<<"\ncheia publica--> Ke=("<<n<<","<<e<<")"; cout<<"\ncheia secreta--> Kd=("<<n<<","<<d<<")"<<endl;
2 2. Criptarea RSA #include "utile.h" struct RSA_key long long n; long long e; long long d; int l, j; ; void RSA(ifstream in, ofstream out, RSA_key key) char* c = new char[key.l >= key.j? key.l : key.j]; long long i=0, m = 0; while (in >> noskipws >> c[i]) m = m * N + da_cod(c[i]); if (i == key.j - 1) m = a_la_b_mod_c(m, key.e, key.n); i = key.l - 1; while (m>0) c[i] = da_caracter(m%n); m = m / N; i--; while (i >= 0)c[i--] = da_caracter(0); for (i = 0; i<key.l; i++)out << c[i]; i = 0; i++; out.close(); in.close(); RSA_key generare_chei() long long p, q, n, phi, e, d; RSA_key key; srand((int)time(null)); p = da_prim(3,100000,3);//generam numere astfel incat produsul a doua asemenea numere sa nu depaseasca domeniul pentru variabile q = da_prim(3,100000,p); key.n = p * q; phi = (p - 1)*(q - 1); key.e = 3 + rand() % (phi - 3); key.d = invers(key.e, phi); while (key.d < 0) //pentru ca e sa fie inversabil key.e++; key.d = invers(key.e, phi); return key;
3 citeste_alfabet(ifstream("alfabet.txt")); RSA_key key; long long i, m; cout << "Dati cheia publica:" << endl; cout << " n="; cin >> key.n; cout << " e="; cin >> key.e; for (i = 0, m = 1; m < key.n; i++) m *= N; cout << "\ndati lungimea blocului de caractere la citire(<=" << i << ")"; cin >> key.j; cout << "\ndati lungimea blocului de caractere la scriere(>=" << i << ")"; cin >> key.l; RSA(ifstream("sursa.txt"), ofstream("destinatie.txt"), key); Exemplu (din curs): alfabet.txt ABCDEFGHIJKLMNOPQRSTUVWXYZ Vectorul de caractere devine: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (lungimea blocurilor la citire), sursa.txt YESTERDAY Primul bloc YES: (lungimea blocurilor la scriere). Criptarea este BFIC. Al doilea bloc TER: Criptarea este BJHH. Al treilea bloc este DAY: Criptarea este BIEM. destinatie.txt BFICBJHHBIEM 3. Problema rucsacului Sub titlul de problema rucsacului sunt reunite mai multe probleme similare, care au la bază aceeași idee. Avem o valoare dată și o mulțime de obiecte cu diferite valori. Cerințele pot fi de la cele mai simple la cele mai complicate. Varianta clasică (problema rucsacului 0-1) este cea unde fiecare obiect are și o anumită masă și rucsacul are și el o anumită capacitate. Problema este de a maximiza valoarea pusă în rucsac fără a depăși capacitatea rucsacului. O implementare găsiți aici: și o variantă de cod aici: - programare dinamică. Formalizând în limbaj matematic: Avem de calculat cu restricția, unde.
4 dacă, punem în rucsac obiectul dacă, nu punem în rucsac obiectul Această variantă se poate complica, variantă care apare în jocuri precum Skyrim, unde, astfel că jucătorul trebuie să calculeze câte obiecte (poțiuni etc.) trebuie să ia. O altă variantă este cea în care vrem să plătim o sumă de bani având oricâte monede de valorile (problema rucsacului nemărginită) - backtracking. Formalizând în limbaj matematic, avem de calculat astfel încât. Această problemă este NP - completă. Varianta pe care o vom studia astăzi este o particularizare a celei de mai sus, cea în care. Vom particulariza și mai mult cerința, introducând conceptul de șir supercrescător. În acest caz, problema poate fi rezolvată în O(n). Mulțimea de valori formează un șir supercrescător dacă:. 1. Determinați care dintre șirurile de mai jos sunt supercrescătoare; ; 2. Rezolvați problema rucsacului pentru Rezolvare pentru șiruri supercrescătoare Cod Programul rezolvă problema rucsacului pentru cazul când sirul dat este supercrescător #include<iostream> using namespace std; int V, v[100],eps[100]=0,i,w,n; cout<<"dati V:"; cin>>v;//introducem valoarea V cout<<"\ndati n:"; cin>>n;//introducem numarul de obiecte for(i=0;i<n;i++) //Introducem valorile v_i cout<<"v["<<i+1<<"]="; cin>>v[i];//introducem sirul int s=v[0],supercrescator=1; for(i=1;i<n;i++) if(v[i]<=s) supercrescator=0;//verificam daca sirul este supercrescator. break;
5 s+=v[i]; if(!supercrescator) cout<<"sirul nu este supercrescator"; w=v; for(i=n-1;i>=0;i--) if(w>=v[i]) //Daca sirul este supercrescator, aplicam greedy. eps[i]=1; w=w-v[i]; if(w==0)break; if(w!=0) cout<<"\nproblema nu are solutii"<<endl; cout<<"\nsolutia problemei este:"<<endl; for(i=0;i<n;i++) cout<<eps[i]; \endlstlisting 4. Merkle - Hellman. Generarea cheilor Cod # include "utile.h" int* da_supercrescator(int n) int *v=new int[n],pas_max=50; srand(time(null)); int S=0;//pentru ca primul termen sa nu fie zero niciodata for(int i=0;i<n;i++) v[i]=s+1+rand()%pas_max; S+=v[i]; return v; citeste_alfabet(); int i,n,m,a,m,s,*v;
6 M=int(log(N+1.0)/log(2.0))+1;//numarul minim de biti pe care trebuie sa-i citim cout<<"\ndati numarul de elemente n (>="<<M<<"):"; cout<<"\nn="; cin>>n; if(n<m) cout<<"\nnumarul dat este prea mic!"; exit(0); v=da_supercrescator(n); cout<<"\na fost generat sirul supercrescator:"<<endl; for(i=s=0;i<n-1;i++) cout<<v[i]<<","; cout<<v[n-1]; m=s+1+rand(); cout<<"\na fost generat numarul m="<<m<<endl; a=1+(rand())%(m-1); while(cmmdc(a,m)!=1)//pentru ca a sa fie inversabil in Zm a++; cout<<"\na fost generat numarul a="<<a<<" relativ prim cu "<< m<<endl; system("pause"); 5. Merkle - Hellman. Criptarea #include<fstream> #include<iostream> using namespace std; ifstream fin("sursa.txt"); ofstream fout("destinatie.txt"); int w[8] = 295, 592, 301, 14, 28, 353, 120, 236; char a; int b, s=0; while (fin >> noskipws >> a) b = (int)a; for (int i = 0; i < 8; i++) s += ((b & (1 << i)) >> i)*w[8-1 - i]; fout << s << " "; s = 0;
7 6. Logaritmul discret Trial multiplication Logaritmul discret este o problemă similară cu factorizarea numerelor. Prima idee pe care o avem este de a calcula toate puterile lui până obținem. Exemplu.. Logaritmul discret al lui în baza 2 este 6. Remarcă. În acest laborator ne vom ocupa de grupuri finite de tipul, dar multe din principiile enunțate pot fi făcute pentru grupuri finite arbitrare. unsigned long long log1_d(unsigned long long g, unsigned long long y, unsigned long long p) unsigned long long i, j, *v; v = new unsigned long long[p + 1]; y = y%p; v[0] = 1; v[1] = g; if (y == g) return 1; for (i = 2; i < p; i++) v[i] = (v[i - 1] * v[1]) % p; for (i = 0; i<p; i++) if (y == v[i]) return i; return 0; Baby step, giant step unsigned long long log_d(unsigned long long b, unsigned long long y, unsigned long long p) unsigned long long i, j, *v, a; a = (unsigned long long)sqrt((double)p); v = new unsigned long long[a + 1]; v[0] = 1; v[1] = a_la_b_mod_c(b, a, p); for (i = 2; i <= a; i++) v[i] = (v[i - 1] * v[1]) % p; y = modulo(y, p); for (j = 0; j<a; j++) for (i = 0; i <= a; i++) if (y == v[i]) return modulo(i*a - j, p - 1); y = (y*b) % p; return 0; Bibliografie Exemplul numeric de la algoritmul Merkle - Hellman este preluat de pe Wikipedia. Codurile și elementele teoretice sunt inspirate din materialele prof. dr. Răzvan Lițcanu și lect. dr. Marius Apetrii.
/*
Laborator 1 1) Să se scrie un program cu ajutorul căruia să se găsească cel mai mare divizor comun a două numere întregi pozitive a şi b. #include long cmmdc (long x, long y) long rest; do rest
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 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 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 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 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 multTablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n= Cifre = {1,2,3,7} Se cere să s
Tablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n=1723237 Cifre = {1,2,3,7 Se cere să se utilizeze subprograme care să comunice între ele şi
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 - 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 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 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 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 multPropunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XI 1.Fişierul text bac.in conţine cel mult 1000 de
Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XI 1.Fişierul text bac.in conţine cel mult 1000 de numere naturale cu cel mult patru cifre fiecare, despărţite
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 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 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 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 mult20 SUBIECTE DE EXAMEN - De fapt, în pofida acestor probleme, până la urmă tot vom logaritma, căci aceasta este tehnica naturală în context. Trebuie do
SUBIECTE DE EXAMEN - De fapt, în pofida acestor probleme, până la urmă tot vom logaritma, căci aceasta este tehnica naturală în context. Trebuie doar să gestionăm cu precauţie detaliile, aici fiind punctul
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 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 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 multMicrosoft 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 mult1
Laborator 3 Supraîncărcarea operatorilor (părțile II și III) 1. Supraîncărcarea operatorilor (părțile II și III) Exemplu 1: Consideram clasa sir, in care fiecare obiect retine adresa unui sir de caractere.
Mai mult7. Alinierea robustă a densităţilor de puncte 3D Măsurarea distanţei dintre diferite forme geometrice 3D Estimarea rotaţiei şi a translaţiei optime în
7. Alinierea robustă a densităţilor de puncte 3D Măsurarea distanţei dintre diferite forme geometrice 3D Estimarea rotaţiei şi a translaţiei optime între nori de puncte Prezentarea generală a algoritmului
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 multMicrosoft 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 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 multBacktracking_2018
Facultatea de Matematică și Informatică Lecții de pregătire Admitere 2019 Rezolvarea problemelor folosind metoda backtracking Exemplu: ieșirea din labirint 2 Exemplu: aranjarea a n regine 3 Exemplu: rezolvarea
Mai multCurs 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 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 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 multMicrosoft Word - Ivan, Boja.doc
Revista Informatica Economică nr. 1 (37)/2006 17 Bicriterial Optimization of Software Prof. dr. Ion IVAN, prep. Cătălin BOJA Catedra de Informatică Economică, A.S.E. Bucureşti There are defined two optimum
Mai mult43 Prelegerea 4 Protocoale de distribuire a cheilor 4.1 Introducere Am văzut că sistemele bazate pe chei publice nu necesită un canal sigur pentru tra
43 Prelegerea 4 Protocoale de distribuire a cheilor 4.1 Introducere Am văzut că sistemele bazate pe chei publice nu necesită un canal sigur pentru transmiterea unei chei private. Aceste avantaj este compensat
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 mult8.1. Elemente de Aritmetică. 8. Aplicatii (15 aprilie 2019) Lema 8.1. Fie (A, +) un grup abelian şi H, K A. Atunci H K şi H + K = {h + k h H şi k K} s
8.1. Elemente de Aritmetică. 8. Aplicatii (15 aprilie 2019) Lema 8.1. Fie (A, +) un grup abelian şi H, K A. Atunci H K şi H + K = {h + k h H şi k K} sunt sungrupuri ale lui A. Propoziţia 8.2. Considerăm
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 multO NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva p
O NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva problema interesante. Astăzi ne-am propus sa va supunem
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 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 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 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 mult4. Detectarea cantelor Calculul gradientului într-o imagine Detectorul de cante Canny Transformata Hough În această lucrare vor fi studiate metode de
4. Detectarea cantelor Calculul gradientului într-o imagine Detectorul de cante Canny Transformata Hough În această lucrare vor fi studiate metode de detectare a cantelor prin evaluarea gradientului intensității
Mai multGHERCĂ MAGDA CASA CORPULUI DIDACTIC BRĂILA PORTOFOLIU EVALUARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A Neamț SERIA 1 GRUPA 1 CURSANT: GHERCĂ G
CASA CORPULUI DIDACTIC BRĂILA PORTOFOLIU EVALUARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A Neamț SERIA 1 GRUPA 1 CURSANT: GHERCĂ G MAGDA COLEGIUL NAŢIONAL ROMAN-VODĂ ROMAN PROIECTUL UNITĂŢII DE ÎNVĂŢARE
Mai multMetode de sortare - pregătire admitere - Conf.dr. Alexandru Popa Lect. dr. Andrei Pătraşcu Universitatea din Bucureşti 1
Metode de sortare - pregătire admitere - Conf.dr. Alexandru Popa Lect. dr. Andrei Pătraşcu Universitatea din Bucureşti 1 Cuprins Problema sortării Algoritmul de sortare prin interschimbare (Bubble sort)
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 multGrile si probleme siruri de caractere in C++ ŞIRURI DE CARACTERE Itemii următori sunt preluaţi din variantele de bacalaureat În secvenţa de i
Grile si probleme siruri de caractere in C++ ŞIRURI DE CARACTERE Itemii următori sunt preluaţi din variantele de bacalaureat 2009. 1. În secvenţa de instrucţiuni de mai jos, variabila s memorează un şir
Mai multCRIPTOSISTEME SIMETRICE I
CRIPTOSISTEME SIMETRICE I Criptografie Anul II Martie 2019 Criptosistem P = mulţimea mesajelor în clar + K = mulţimea cheilor E C = mulţimea mesajelor criptate C = mulţimea mesajelor criptate + K = mulţimea
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 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 multLaborator Implementarea algoritmului DES - Data Encryption Standard. Exemplu DES Algoritmul DES foloseşte numere b
Laborator 4 1.04-5.04.2019 8.04-12.04.2019 1. Implementarea algoritmului DES - Data Encryption Standard. Exemplu DES Algoritmul DES foloseşte numere binare. Fiecare grup de 4 biţi reprezintă un număr hexazecimal.
Mai multProbleme 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 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 multLogică și structuri discrete Relații. Funcții parțiale Marius Minea marius/curs/lsd/ 20 octombrie 2014
Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 20 octombrie 2014 Relații în lumea reală și informatică Noțiunea matematică de
Mai multStructuri de date pentru partiţii de mulţimi O partiţie finită a unei mulţimi nevide S este o mulţime finită de submulţimi ale lui S: {S 1, S 2,..., S
Structuri de date pentru partiţii de mulţimi O partiţie finită a unei mulţimi nevide S este o mulţime finită de submulţimi ale lui S: {S 1, S 2,..., S n P(S) care satisface condiţiile următoare: S i 0
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 multMicrosoft Word - Curs 7 - JavaScript.doc
Cursul 7 JavaScript - partea a II-a 1. Instrucţiunile trycatch şi throw 1.1. Instrucţiunea trycatch Este utilizată pentru a detecta eventualele erori dintr-o secvenţă de cod Blocul try conţine secvenţa
Mai multMergedFile
PROIECT DIDACTIC Clasa a VI-a Matematică Proiect didactic realizat de Nicoleta Popa, profesor Digitaliada, revizuit de Ioan Popa, profesor Digitaliada Textul și ilustrațiile din acest document începând
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 multNr. 932 din Avizat ISJ Vâlcea, Inspector școlar informatică, Ciochină Luisa EXAMEN DE ATESTARE A COMPETENȚELOR PROFESIONALE A ABSOLVENȚILOR
Nr. 932 din 12.12.2018 Avizat ISJ Vâlcea, Inspector școlar informatică, Ciochină Luisa EXAMEN DE ATESTARE A COMPETENȚELOR PROFESIONALE A ABSOLVENȚILOR DE MATEMATICĂ INFORMATICĂ ȘI MATEMATICĂ INFORMATICĂ,
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 multLogică ș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 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 multSECURITATE ȘI CRIPTOGRAFIE
Noțiuni de bază ale criptografiei Criptografia este studiul metodelor matematice legate de securitatea informației, capabile să asigure confidențialitatea, autentificarea și non-repudierea mesajelor, precum
Mai multMicrosoft 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 multSlide 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 multNoțiuni de bază ale criptografiei
CIFRURI DE SUBSTITUŢIE Clasificarea metodelor simetrice 1. Cifruri substituţie; 2. Cifruri transpoziţie; 3. Cifruri combinate. CIFRURI DE SUBSTITUŢIE Cifruri de substituţie monoalfabetică (monoalphabetic
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 multFacultatea de Automatică și Calculatoare
Facultatea de Automatică şi Calculatoare Departamentul de Calculatoare Examen de licenţă, Sesiunea Iulie 2012 Specializarea: Tehnologia informaţiei T E S T G R I L Ă pentru evaluarea cunoştinţelor fundamentale
Mai multElemente de aritmetica
Elemente de aritmetică Anul II Februarie 2017 Divizibilitate în Z Definiţie Fie a, b Z. Spunem că a divide b (scriem a b) dacă există c Z astfel încât b = ac. In acest caz spunem că a este un divizor al
Mai mult2
C5: Metoda matricilor de transfer BIBLIOGRAFIE E. Tulcan Paulescu, M. Paulescu Algorithms for electronic states in artificial semiconductors of use in intermediate band solar cells engineering. In Physics
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 multAlgebra si Geometri pentru Computer Science
Natura este scrisă în limbaj matematic. Galileo Galilei 5 Aplicatii liniare Grafica vectoriala In grafica pe calculator, grafica vectoriala este un procedeu prin care imaginile sunt construite cu ajutorul
Mai multLogică și structuri discrete Mulțimi Casandra Holotescu
Logică și structuri discrete Mulțimi Casandra Holotescu casandra@cs.upt.ro https://tinyurl.com/lectureslsd Mulțimi aspecte teoretice Ce sunt mulțimile? Mulțimea e un concept matematic fundamental. Definiție
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 multCOMENTARII FAZA JUDEŢEANĂ, 9 MARTIE 2013 Abstract. Personal comments on some of the problems presented at the District Round of the National Mathemati
COMENTARII FAZA JUDEŢEANĂ, 9 MARTIE 2013 Abstract. Personal comments on some of the problems presented at the District Round of the National Mathematics Olympiad 2013. Data: 12 martie 2013. Autor: Dan
Mai multLucrarea nr. 4 - Algoritmi de sortare şi ordonare Breviar teoretic Un algoritm de sortare este o metoda prin care se aranjează elementele unui tablou
Lucrarea nr. 4 - Algoritmi de sortare şi ordonare Breviar teoretic Un algoritm de sortare este o metoda prin care se aranjează elementele unui tablou într-o ordine precisă. Cele mai folosite tipuri de
Mai multETTI-AM2, , M. Joița & A. Niță Notițe de Adrian Manea Seminar 10 Transformata Fourier Integrala Fourier Seriile Fourier sînt utile pentru dez
Seminar 1 Transformata Fourier Integrala Fourier Seriile Fourier sînt utile pentru dezvoltarea unor funcții periodice (sau convertibile în unele periodice). Însă dacă funcțiile sînt arbitrare, se folosește
Mai multMinisterul Educatiei, Cercetarii si Tineretului Grup Scolar Gh. Asachi Galati Proiect pentru obtinerea certificatului de competente profesionale Speci
Ministerul Educatiei, Cercetarii si Tineretului Grup Scolar Gh. Asachi Galati Proiect pentru obtinerea certificatului de competente profesionale Specializare : matematica-informatica 2006-2007 Tema proiectului:
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 multMicrosoft PowerPoint - ARI_R_c9-10_IP_part2 [Compatibility Mode]
2.1.2.2.2 Divizarea în subreţele de dimensiuni variabile Divizarea în subreţele de dimensiuni variabile sau cu măşti de subreţea de lungime diferită, VLSM (variable length subnet masks) subreţelele obţinute
Mai mult-
Structuri versus clase în C# În limbajul C++, după cum se ştie, diferenţele dintre clase şi structuri sunt nesemnificative (constau numai în modurile implicite de acces public/privat), dar această afirmaţie
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 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 multPROBLEME PRIVIND INSTABILITATEA UNOR CALCULE ALE MECANISMELOR
INSTABILITĂŢI DE CALCUL LA ANALIZA DIADEI RRR s.l. univ. dr. ing. Valentina MANEA s.l.univ.dr.ing. Raluca GRASU Rezumat. Se studiază instabilităţile de calcul care apar la analiza diadei RRR, cauzate de
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 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 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 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 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 multLUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart
LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL 0 8.. Aspecte generale Programarea neliniară are o foarte mare importanţă în rezolvarea problemelor de optimizări,
Mai multSlide 1
Şiruri de caractere String, StringBuffer, StringTokenizer Clase, metode şi exemple Clasa String Crearea unui şir Constructorul implicit crează un şir vid: String s = new String(); String str = "abc"; este
Mai multPAS cap. 2: Reprezentări rare p. 1/35 Prelucrarea avansată a semnalelor Capitolul 2: Reprezentări rare Bogdan Dumitrescu Facultatea de Automatică şi C
PAS cap. 2: Reprezentări rare p. 1/35 Prelucrarea avansată a semnalelor Capitolul 2: Reprezentări rare Bogdan Dumitrescu Facultatea de Automatică şi Calculatoare Universitatea Politehnica Bucureşti PAS
Mai multLaborator 7 - Stream-uri
Laborator 7 Stream-uri Tema 7.1 Analizaţi programul din fişierele EX7.CPP, EX7.H, CLASE.CPP, CLASE.H din anexa 7. Tema 7.2 Să se implementeze operatorii de inserţie
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 multLecţ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 multMergedFile
PROIECT DIDACTIC Clasa a V-a Informatică și T.I.C. Proiect didactic realizat de Anișoara Apostu, profesor Digitaliada, revizuit de Radu Tăbîrcă, inspector școlar Informatică Textul și ilustrațiile din
Mai mult