valarray shift() en C++

La función shift() se define en el archivo de encabezado valarray . Esta función devuelve un nuevo valarray del mismo tamaño con elementos cuyas posiciones se desplazan en n elementos. Si n es negativo, se aplica el desplazamiento a la derecha, si n es positivo, se aplica el desplazamiento a la izquierda.

Sintaxis:

valarray shift (int n) const;

Parámetro: Este método acepta un parámetro obligatorio n que representa el número de elementos a desplazar.

Devoluciones: esta función devuelve el nuevo valarray después de cambiar elementos.

Los siguientes programas ilustran la función anterior:

Ejemplo 1:-

// C++ program to demonstrate
// example of shift() function.
  
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
    // Initializing valarray
    valarray<int> varr = { 3, 2, 5, 4, 1 };
  
    // Declaring new valarray
    valarray<int> varr1;
  
    // using shift() to shift elements to left
    // shifts valarray by 3 position
    varr1 = varr.shift(3);
  
    // Displaying elements of valarray after shifting
    cout << "The new valarray after shifting is = ";
  
    for (int& x : varr1)
        cout << x << " ";
  
    cout << endl;
  
    return 0;
}
Producción:

The new valarray after shifting is = 4 1 0 0 0

Ejemplo 2:-

// C++ program to demonstrate
// example of shift() function.
  
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
    // Initializing valarray
    valarray<int> varr = { 3, 2, 5, 4, 1 };
  
    // Declaring new valarray
    valarray<int> varr1;
  
    // using shift() to shift elements to right
    // shifts valarray by 2 position
    varr1 = varr.shift(-2);
  
    // Displaying elements of valarray after shifting
    cout << "The new valarray after shifting is = ";
  
    for (int& x : varr1)
        cout << x << " ";
  
    cout << endl;
  
    return 0;
}
Producción:

The new valarray after shifting is = 0 0 3 2 5

Publicación traducida automáticamente

Artículo escrito por bansal_rtk_ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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