Programa en C# para generar números pares aleatorios mediante consultas paralelas de LINQ

LINQ se conoce como Language Integrated Query y se introdujo en .NET 3.5. Da poder a los lenguajes .NET para generar o crear consultas para recuperar datos de la fuente de datos. En este artículo, generaremos números pares aleatorios en paralelo usando LINQ. Entonces, usaremos ParallelQuery{TSource} para generar una secuencia de números enteros en paralelo dentro del rango dado. Junto con esto, tenemos que usar la cláusula where y select para obtener los números pares. Recuerde que lanzará una excepción ArgumentOutOfRangeException si la parada es menor que 0 o start +stop-1 es mayor que MaxValue.

Sintaxis:

IEnumerable<int> variable = ((ParallelQuery<int>)ParallelEnumerable.Range(start,
                            stop)).Where(x => x % 2 == 0).Select(i => i);

Donde el inicio es el primer valor entero en la secuencia y la parada es el número de enteros secuenciales a generar.

Ejemplo:

Input  : Range(start, stop) = Range(1, 20)
Output :
2
6
12
16
4
8
14
18
10
20

Input  : Range(start, stop) = Range(10, 20)
Output :
10
12
14
16
18
20
22
24
26
28

Acercarse:

Para imprimir números pares en paralelo siga los siguientes pasos:

  1. Implemente una consulta paralela {TSource} y mencione el rango.
  2. Utilice la cláusula where para comprobar que el módulo de y por 2 es igual a cero.
  3. Ahora Select se usa para comprobar si el valor de la variable j es mayor o igual que el valor de la variable (es decir, j).
  4. Iterar los números pares usando el ciclo foreach

Ejemplo:

C#

// C# program to generate random even numbers
// using LINQ Parallel Query
using System;
using System.Collections.Generic;
using System.Linq;
  
class GFG{
  
static void Main(string[] args)
{
      
    // Creating data
    IEnumerable<int> data = ((ParallelQuery<int>)ParallelEnumerable.Range(
                              
                            // Condition for generating even numbers
                            10, 20)).Where(i => i % 2 == 0).Select(
                                       value => value);
  
    // Display even numbers
    foreach(int even in data)
    {
        Console.WriteLine(even);
    }
}
}

Producción:

12
14
16
18
20
22
24
26
28
10

Publicación traducida automáticamente

Artículo escrito por saisravanprojects 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 *