Rezolvare in C++
Se citesc de la tastatură elementele a două tablouri unidimensionale. Se are în vedere ca o valoare să nu se regăsească de mai multe ori într-un tablou. Să se afişeze valorile care se regăsesc în ambele tablouri şi indecşii corespunzători acestora
Răspunsuri la întrebare
Răspuns:
#include <iostream>
#include <sstream>
#include <vector>
#include <string>
int main()
{
std::vector<std::string> lista1, lista2;
std::istringstream flux;
std::string temporar;
std::cout << "Lista 1 (elemente separate cu spațiu): ";
std::getline(std::cin, temporar);
flux.str(temporar);
while (flux >> temporar) {
lista1.push_back(temporar);
}
std::cout << "Lista 2 (elemente separate cu spațiu): ";
std::getline(std::cin, temporar);
flux.clear();
flux.str(temporar);
while (flux >> temporar) {
lista2.push_back(temporar);
}
for (int i = 0; i < lista1.size(); i++) {
for (int j = 0; j < lista2.size(); j++) {
if (lista1[i] == lista2[j]) {
std::cout << lista1[i] << " se găsește în ambele liste; în prima listă pe poziția " << i << " iar în a doua pe poziția " << j << std::endl;
}
}
}
}