მონაცემთა დიდი ზომის ნაკრებთან მუშაობა 

LINQ მოთხოვნა შეგვიძლია, აგრეთვე გამოვიყენოთ დიდი ზომის რიცხვითი მასივიდან რიცხვების ამოსაჩევად. მოყვანილი პროგრამით ხდება ამის დემონსტრირება.

//

//          შედეგიდან 5500-ზე ნაკლები მნიშვნელობის მქონე რიცხვების ამორჩევა label1.Text = “”;

Random Shemtxveviti_Ricxvebi = new Random();

int[] masivi = new int[1000000]; for ( int i = 0; i < masivi.Length; i++ ) masivi[i] = Shemtxveviti_Ricxvebi.Next();

//          LINQ მოთხოვნის ფორმირება

var shedegi = from cvladi in masivi  where cvladi < 5500 select cvladi;

//          შედეგების ეკრანზე გამოტანა

label1.Text = “5500-ზე ნაკლები რიცხვები:\n”;

foreach (var elementi in shedegi) label1.Text += elementi.ToString() + ”   “;

}

ძირითადი პროგრამიდან ხდება RixvebisGenerireba() მეთოდის გამოძახება და მისთვის 1000000-ის გადაცემა. შემთხვევითი გზით წარმოიქმნება ამდენივე რიცხვი, რომლებიც ჩაიწერება masivi მასივში. LINQ მოთხოვნის გამოყენებით ამ მასივიდან ამოირჩევა ის რიცხვები, რომლებიც 5500-ზე ნაკლებია.

LINQ მოთხოვნის გამოყენებით შეიძლება მასივიდან კენტი რიცხვების ამორჩევა. ამის დემონსტრირება ხდება მოყვანილი პროგრამით.

 

//          შედეგიდან კენტი რიცხვების ამორჩევა

{

label1.Text = “”;

//

int[] numbers = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };

//          LINQ მოთხოვნის ფორმირება   var numQuery = from num in numbers

where ( num % 2 == 1 )  select num;

//         შედეგების ეკრანზე გამოტანა  foreach (int num in numQuery) label1.Text += num.ToString() + ”  “;

}

თუ გვინდა კენტი რიცხვების ამორჩევა 5-15 დიაპაზონში, მაშინ მოთხოვნა ასე უნდა ჩავწეროთ:

where ( (num % 2 == 1 ) && ( num >= 5 && num <= 15) )

0Shares