Menú principal

lunes, 29 de junio de 2020

Comprobar todos los elementos de un vector (all_of) en C++

Primeramente se incluyen las cabeceras necesarias para trabajar con vectores (linea 2) y algorithm para poder utilizar la función all_of.

Seguidamente se declara el vector y se procese a comprobar si todos los números del vector son impares. Esto se realizará haciendo uso de la función all_of la cual está implementada en una sentencia condicional if. Como podemos apreciar en la linea 11 dentro el all_of necesita 3 parámetros: donde empieza el vector, donde acaba y la condición que se debe cumplir. En este caso se ha creado una función sin nombre (nomenclatura []) que devolverá 1 o un 0 en función del resto que resulta al dividir el numero entre 2.

Finalmente también se realiza una comprobación de si todos los números del vector son 5 de la misma manera a la que se ha hecho en la función de pares o impares.


 1 #include <iostream>
 2  #include <vector>
 3  #include <algorithm>
 4  using namespace std;
 5  
 6  int main()
 7  {
 8      vector<int> v={5,5,5,5};
 9  
10      //Comprobar si todos los numeros son pares o impares
        //Si el resto es 1 (impar) devuelve 1, la condicion es verdadera
11      if(all_of(v.begin(),v.end(),[](int i){return i%2;})) 
12          cout << "Todos los numeros son impares" << endl;
13      else
14          cout << "Hay algun numero en el vector que es par" << endl;
15  
16      //Comprobar si todos los numeros son 5
17      if(all_of(v.begin(),v.end(),[](int i){if(i==5)return 1; else return 0;}))
18          cout << "Todos los numeros del vector son 5" << endl;
19      else
20          cout << "Hay algun numero que no es 5" << endl;
21  }

No hay comentarios:

Publicar un comentario