MercanSoftYazılım Teknolojileri Günlüğü
07 Mar 2022

LINQ ile asal sayıları nasıl buluruz

1 ile 100 arasıda ki  asal sayıların  LINQ ile nasıl buluruz hep birlikte yapalım

normalde aşağıdaki kod ile asal sayıları çok kolay bir şekilde bulabiliriz

bool Asal(int sayi)
{
  for (int i = 2; i < sayi; i++)
  {
    if (sayi % i == 0) return false;
  }
  return true;
}

1-100 arası asal sayıları bulmamız için döngülerden for döngüsünü kullanabiliriz.

public static IEnumerable AsalSayilarGetir(int sayi)
{
  var ints = Enumerable.Range(2, sayi - 1);
  return ints.Where(x => !ints
             .TakeWhile(y => y < x)
             .Any(y => x % y == 0));
}

static void Main(string[] args)
{
  var asalsayilar = AsalSayilarGetir(100);
  asalsayilar.ToList().ForEach(Console.WriteLine);
}

yazdığımız programın çıktısı aşağıdaki gibi olacaktır

asalsayilar
asalsayilar

Algoritmalar Leave a comment

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir