Informatică, întrebare adresată de Alllecx, 9 ani în urmă

Hei, brainly! Am si eu o problema...
La informatica ne.a pus in clasa sa facem un program care sa determine intersectia a doua multimi, folosind vectorii.
Nu am stiut niciunul si nici nu a dorit sa ne ajute...e proaspat iesit din facultate.
Deci : Determinati intersectia a doua multimi.
Stiu sa doar sa incep :
#include
Using namespace std
Int main (){


Ofer 100 puncte. Va rog, ajutati.ma si daca ati putea lasa si o mica explicatie...

Răspunsuri la întrebare

Răspuns de KindaBored
0
Ti-am pus mult text, ca sa se inteleaga. Elementele unei multimi sunt ordonate d.p.d.v matematic, deci nu trebuie sa verifici in O(n^2).
#include <iostream>
using namespace std;
int n,i,j,m,v[101],w[101];
int main()
{
  cout<<"Dati numarul de elemente din prima multime:";
  cin>>n;
  for (i=1;i<=n;i++)
  {
      cout<<"Elementul "<<i<<"=";
      cin>>v[i];
  }
    cout<<"Dati numarul de elemente din a doua multime:";
  cin>>m;
  for (i=1;i<=m;i++)
  {
      cout<<"Elementul "<<i<<"=";
      cin>>w[i];
  }
    i=1;j=1;
    while (i<=n && j<=m)
    {
        if (v[i]==w[j])
        {
            cout<<v[i]<<" ";
            j++;
            i++;
        }
        else
            if (v[i]>w[j])
                j++;
            else
                i++;
    }
    return 0;
}



Alllecx: Imi poti explida te rog? Nu inteleg nimic din informatica...mai ales ce ai scris dupa int... te rog mult de tot...daca maine m.o intreba, macar sa stiu sa.i spun de ce am facut asa
KindaBored: v[] si w[]-vectori(tablouri unidimensionale, sunt folositi pentru a retine mai multe valori). restul sunt variabile de tip intreg, care pot retine o singura valoare la un moment dat. "cout"-console out- se foloseste pentru a afisa un mesaj pe ecran iar prin "cin"-console in- se citeste de la tastatura.for-ul merge la 1 la n=> citeste de n ori(sau n elemente). Analog si pentru urmatorul for. Stiind ca multimile sunt deja ordonate, verific ca valorile retinute sa fie cat mai aproape.
Alllecx: Trebuie sa pun musai v w m n i j? Sau pot pune a b c d e f
KindaBored: Poti pune ce vrei tu.
Alte întrebări interesante