Ejemplos de list.remove_if función () | STL C ++

Aquí, estamos implementando programa que demostrar el ejemplo de la función remove_if () , que se utiliza para eliminar un conjunto de elementos que satisfacen la condición de prueba dado.

Ejemplo:

Aquí, tenemos una lista de los números enteros y operaciones de supresión escénicas basadas en las siguientes condiciones de ensayo dadas:

  1. Retire todos los elementos negativos
  2. Retire todos los elementos que son divisibles por 11
  3. Retire todos los elementos que son mayores de 20

Programa:

#include <iostream>
#include <list>
using namespace std;
//function to display the list
void dispList(list<int> L)
{
//declaring iterator to the list
list<int>::iterator l_iter;
for (l_iter = L.begin(); l_iter != L.end(); l_iter++)
cout<< *l_iter<< " ";
cout<<endl;
}
int main()
{
//declaring a list
list<int> iList = {10, 20, 11, 22, 21, -10, -20, 13, 55, 44};
//printing list elements
cout<<"List elements are"<<endl;
dispList(iList);
//remove only negative numbers
iList.remove_if([](int n) {return (n<0); });
cout<<"List elements after removing Negative elements"<<endl;
dispList(iList);
//remove the elements which are divisible by 11
iList.remove_if([](int n) {return (n%11==0); });
cout<<"List elements after removing divisble by 11"<<endl;
dispList(iList);
//remove the elements which are greater than 20
iList.remove_if([](int n) {return (n>20); });
cout<<"List elements after removing greater than 20"<<endl;
dispList(iList);
return 0;
}

salida

List elements are
10 20 11 22 21 -10 -20 13 55 44
List elements after removing Negative elements
10 20 11 22 21 13 55 44
List elements after removing divisble by 11
10 20 21 13
List elements after removing greater than 20
10 20 13


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *