Informatică, întrebare adresată de irina8748, 8 ani în urmă



C++ cine știe :)


1. Să se scrie o funcție de înserare a unui element (se citește de la tastatură) în vector astfel încit după operația de înserare vectorul să fie ordonat.


2. Să se scrie doua variante de ștergere a unui element din vector: a) indicând poziția acestuia în vector; 
b) după valoare citită de la terminal. .

Răspunsuri la întrebare

Răspuns de Addriss
0

Răspuns:

void Insert(std::vector<int>& vector, int number)

{

vector.push_back(number);

if (vector.size() > 1)

{

 AscendingSort(vector);

}

}

void AscendingSort(std::vector<int>& vector)

{

std::sort(vector.begin(), vector.end(), [](int a, int b) {return a < b; });

}

void RemoveByPosition(std::vector<int>& vector, int position)

{

vector.erase(vector.begin() + position);

}

void RemoveByValue(std::vector<int>& vector, int value)

{

auto it = std::find(vector.begin(), vector.end(), value);

if (it != vector.end())

{

 vector.erase(it);

}

else

{

 std::cout << "Elementul nu se afla in vector." << std::endl;

}

}

void main()

{

std::vector<int> vector;

int number;

std::cin >> number;

Insert(vector, number);

std::cin >> number;

Insert(vector, number);

std::cin >> number;

Insert(vector, number);

std::cin >> number;

Insert(vector, number);

RemoveByPosition(vector, 0);

RemoveByValue(vector, number);

}

Explicație:

Alte întrebări interesante