Laborator tablouri

📝Notite --- 📠 Functii si Clase --- 🍮 Rezolvari

Aplicatii C++

  • Vectori
    1. Creati un tablou unidimensional cu 7 elemente, reprezentand consumurile zilnice de energie dintr-o saptamana.
      • Calculati consumul saptamanal de energie.
      • Calculati consumul mediu de energie.
      • Calculati media geometrica a consumului de energie.
      • Afisati consumurile din zilele in care s-a depasit consumul mediu
      • Creati un nou tablou cu consumurile din zilele in care s-a depasit consumul mediu
    2. Creati un tablou unidimensional cu n elemente random. Construiti un nou tablou din elementele primului, astfel incat elementul curent sa reprezinte suma elementelor din primul tablou pana la pozitia elementului curent.
    3. Realizati un programul cere 5 numere, le salveaza intr-un vector dupa care afiseaza elementele vectorului in ordine inversa
    4. Creati un tablou unidimensional cu n elemente random. Construiti un nou tablou din elementele primului, astfel incat elementul curent sa reprezinte suma elementelor din primul tablou pana la pozitia elementului curent.
    5. Creati un tablou unidimensional cu n elemente random, dupa care :
      • afisati media aritmetica a elementelor tabloului
      • afisati media geometrica a elementelor tabloului - folosind functia pow
      • afisati elementele insotite de textul "par" sau "impar"
      • afisati elementele pare, apoi afisarea elementelor impare.
      • realizati un nou vector unde numerele pare sa ocupe primele locuri
    6. Realizati o aplicatie care realizeaza shift-ari intr-un vector
      • se va utiliza un tablou unidimensional (un vector)
      • se cer n numere de la tastatura
      • Se afiseaza vectorul
      • Se shift-eaza dreapta 1 pozitie
      • Se atribuie 0 primului element
      • Se afiseaza vectorul dupa shift-are
    7. Realizati o aplicatie care realizeaza k shift-ari intr-un vector si afisare cu animatie
    8. Realizati o aplicatie care realizeaza o rotire intr-un vector
      • se va utiliza un tablou unidimensional (un vector)
      • se cer n numere de la tastatura
      • Se shift-eaza dreapta 1 pozitie
      • Se atribuie primului element valoarea ultimului element
    9. Realizati o aplicatie care realizeaza k rotiri intr-un vector
    10. Realizati un programul cere n numere, le salveaza intr-un vector, se pun elementele vectorului in ordine inversa dupa care se afiseaza
    11. Diverse teme:
      • eliminarea unui element dintr-un vector
      • eliminarea duplicatelor dintr-un vector
      • intersectia a doi vectori
      • reuniunea a doi vectori
      • sortarea unui vector
      • interclasarea a doi vectori
      • afisarea sumei elementelor, media elementelor, max, minim,
    12. Calcularea integralei functiei f(x)-x*x pe intervalul [1-10]
      - Se initializeaza un vector cu 1001 valori ale functiei
      - Se calculeaza integrala prin intermediul unei functii
      - Se determina valoarea maxima prin intermediul unei functii
  • Matrici
    1. Creati un tablou bidimensional cu 5 randuri 7 coloane , reprezentand consumurile zilnice de energie dintr-o luna( 7 zile, 5 saptamani).
      • Calculati consumul saptamanal de energie.
      • Calculati consumul total de energie
      • Calculati consumul mediu de energie.
      • Afisati consumurile din zilele in care s-a depasit consumul mediu
    2. Realizati un tablou bidimensional cu nxn elemente initializat cu numere pozitive


    3. Afisati elementele de pe diagonala principala si secundara a unui tablou bidimensional cu nxn elemente


      Realizati un tablou bidimensional cu 12X15 elemente initializat cu numere pozitive, dupa care atribuiti 0 elementelor care se afla pe o coloana > 12 sau pe o linie >10.


    4. Afisati minimul si maximul unui tablou bidimensional cu nxn elemente
    5. Afisati media aritmetica a elementelor unui tablou bidimensional cu nxn elemente
    6. Realizati un tablou bidimensional cu 20X25 elemente initializat cu numere pozitive,dupa care extrageti o matrice aflata la 5 elemente distanta pe verticala, 7 elemente distanta pe orizontala. Dimensiunea noii matrici numita "ecran" va fi:w=12, h=10.


    7. Realizati un o matrice numita "memorie ecran" cu 10X15 elemente initializate cu numere pozitive, realizati o noua matrice numita "ecran" cu 7x10 elemente, obtinuta din elementele preluate din matricea "memorie ecran", rotite spre stanga cu 90 de grade conform imaginii de jos.


    8. Realizati un tablou bidimensional cu mazim 10X15 elemente initializate cu numere pozitive, extrageti o matrice 7x10, dupa care rotiti matricea spre dreapta 90 de grade.
    9. Realizati un tablou bidimensional cu mazim 10X15 elemente initializate cu numere pozitive, extrageti o matrice 7x10, dupa care rotiti matricea pe axa x.
    10. Realizati un tablou bidimensional cu mazim 10X15 elemente initializate cu numere pozitive, extrageti o matrice 7x10, dupa care rotiti matricea pe axa y.
    11. Se genereaza o matrice de numere aleatoare si se afiseaza suma pe coloane.
    12. Deplasare dreapta o pozitie intr-o matrice

    Aplicatii C#

  • Vectori
    1. Realizati in C# o aplicatie consola in care se creaza un vector cu valori int random intre 0-100.
      - Redimensionati vectorul si afisati valorile noului vector.
    2. Avand un vector cu valori double initializat cu valori random, folosind functia afis_v_num_w afisati continutul sub forma:


    3. Se redimensioneaza vectorul dupa care se verifica daca s-au mai pastrat valorile atribuite anterior.
    4. Folosind un vector cu valori int, in care pastrati 180 de puncte echidistante pe un cerc realizati aplicatia.




           - Vectorul de puncte va fi definit sub forma: Point[] vector_puncte = new Point[180];
           - Punctele se unesc dupa regula: se uneste punctul nr x cu punctul nr (m * x)%180 , unde m este un nr intreg intre 1-179 selectat intr-un numeric updown.
    5. Realizati o aplicatie care imparte o elipsa in n arce egale, n fiind furnizat de un TrackBar. Salvati coordonatele x intr-un vector iar coordonatele y in alt vector. La schimbarea numarului de puncte, cei doi vectori vor fi redimensionati corespunzator.
      Uniti punctele intre ele corespunzator imaginii:


  • Matrici
    1. Avand o matrice cu valori double initializata cu valori random, folosind functia afis_m_num_w afisati continutul sub forma:


    2. Folosind o matrce in care pastrati diametrele, si poxitiile pe x a mai multor cercuri, trasati cercurile dupa care colorati cu rosu cercul a carui raza este cea mai mare.


    3. Simulati caderea picaturilor de ploaie


    4. modificati legea de miscare pentru a simula miscarea browniana a particolelor


    5. Simulare grafica metode de ordonare


    6. Se realizeaza aplicatia cu baloane de sapun
    7. Se coloreaza jumatate cu albastru (metoda 1 dublarea instructiunilor, metoda 2 if (i%2))
    8. Modificarea aplicatiei pentru a reimprospata pozitiile aleatoare pentru a nu se repeta pozitiile
    9. Desenati 10 cercuri la pozitii si de diametre aleatoare. Pozitiile si diametrele vor fi memorate intr-o matrice
      - Realizati o rotire pe orizontala si reafisati cercurile.


    10. Realizati o aplicatie care imparte cercul in 12 arce egale, memoreaza pozitia punctelor de pe cerc intr-un array dupa care realizeaza imaginea:


    11. Realizati o aplicatie care imparte cercul in 12 arce egale, memoreaza pozitia punctelor de pe cerc intr-o matrice dupa care realizeaza imaginea:


    12. Realizati o aplicatie care imparte cercul in 16 de arce egale. Memoreaza pozitia punctelor de pe cerc intr-o matrice dupa care traseaza linii rezultand imaginea:


    13. Realizati o aplicatie care imparte cercul in 16 de arce egale. Memoreaza pozitia punctelor de pe cerc intr-o matrice dupa care traseaza linii rezultand imaginea:


    14. Adaugati un TrackBar pentru a seta numarul de puncte. Aplicatia va fi similara cu:


    15. Reluati aplicatia anterioara si realizati o elipsa:


    16. Folosind metoda "FillPolygon" realizati o aplicatie care deseneaza:


    17. Folosind metoda "FillPolygon" realizati o aplicatie care deseneaza poligoane random inscrise in cerc, cu 3-8 laturi:


    18. Folosind metoda "FillPolygon" realizati o aplicatie care deseneaza stelute random inscrise in cerc, cu 4-15 varfuri: