"Ma'lumotlar massiviga : LINQ so'rovini yaratish"
Ishning maqsadi:
LINQ texnologiyasini o'rganish.
Ma'lumotlar massiviga LINQ so'rovlarini qanday yaratishni o'rganish.
Asboblar va jihozlar:
Ko'rsatmalar.
Kompyuter turi IBM PC/XT.
MS Office.
Visual C#.
Ish tartibi:
LINQ so'rovi ma'lumotlar manbasidan ma'lumotlarni oladigan ifodadir. LINQ so'rovlarining barcha operatsiyalari uch xil amaldan iborat: ma'lumotlar manbasini olish (bizning holimizda, manba massiviga dastlabki qiymatlarni belgilash), so'rov yaratish (dan bandidan boshlanadi) va so'rovning o'zini bajarish (odatda foreach tsikli). Keling, ikkita vazifani ko'rib chiqaylik, birinchisi - nomlar qatoridan biz oltita belgidan iborat nomlarni chiqarib, ularni ro'yxatga (to'plamga) yoki yangi massivga yozamiz. Yana bir vazifa - butun sonlar qatoridan faqat qiymatlari to'rtdan katta bo'lganlarni tanlash, shuningdek, so'rov natijasini ro'yxatga yozish.
Bajarish uchun vazifalar:
Massivdan 5 dan katta va 10 dan kichik raqamlarni tanlang.
5 dan katta massiv elementlari yig‘indisini hisoblang.
4 belgidan uzun familiyalar sonini aniqlang.
Massivning juft elementlarini ekranga chiqarish. Paritetni aniqlash uchun % belgisidan foydalaning.
Toq massiv elementlarining o‘rta arifmetik qiymatini toping.
Vazifaning kod qismi:
using System;
using System.Linq;
using System.Windows.Forms;
namespace Linq1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//1-topshiriq//
int[] X = { -5, 7, -23, 1, 7, -15, 20, 60, 40, 12, 30, 180, 6000 };
textBox1.Text += " Из заданного массива X:\r\n\r\n";
foreach (int x in X)
textBox1.Text = textBox1.Text + x + " ";
var Y = from x in X
where x >= 5 & x < 10
orderby x
select x;
var Z = Y.Distinct();
foreach (var z in Z)
textBox2.Text = textBox2.Text + z.ToString() + " ";
//2-topshiriq//
decimal Summa = 0;
var A = from x in X
where x >= 5
orderby x
select x;
var B = A.Distinct();
foreach (var z in B)
textBox3.Text = textBox3.Text + z.ToString() + " ";
foreach (var z in B)
Summa = Summa + z;
textBox3.Text = textBox3.Text +" Summa : "+ Summa + " ";
// 3-toshiriq //
string СтрокаИмен = "Adxam Botir Nozima Karim Bolta Tolip " +
"Bobir Adham Nodir Sveta Anjelina ";
string[] Имена = СтрокаИмен.Split(' ');
textBox1.Text =textBox1.Text+ "В списке имен:\r\n\r\n";
foreach (string x in Имена)
textBox1.Text = textBox1.Text + x + " ";
int soni = 0;
var Запрос = from s in Имена
where s.Length > 4
orderby s
select s.ToUpper();
Запрос = Запрос.Distinct();
soni = Запрос.Count();
foreach (string x in Запрос)
textBox4.Text = textBox4.Text + x + " ";
textBox4.Text = textBox4.Text + "\r\n\r\n";
textBox4.Text = textBox4.Text + " Soni : "+soni;
//4-topshiriq//
var A2 = from x in X
where (x%2)==0 & x>0
orderby x
select x;
var B2 = A2.Distinct();
foreach (var z in B2)
textBox5.Text = textBox5.Text + z.ToString() + " ";
// 5-topshiriq//
Double Summa_4 = 0;
var A3 = from x in X
where (x % 2) == 1
orderby x
select x;
var B3 = A3.Distinct();
Summa_4 = B3.Average();
foreach (var z in B3)
textBox6.Text = textBox6.Text + z.ToString() + " ";
textBox6.Text = textBox6.Text + "cреднее значение "+ Summa_4;
}
private void textBox4_TextChanged(object sender, EventArgs e)
{
}
}
}
Dastur natijasi:
Do'stlaringiz bilan baham: |