BÀI TẬP TUẦN LINQ PART CÂU 01 Tìm tất phần tử < mảng số nguyên GIẢI int[] c1 = new int[] {1, 2, 3, 4, 4, 5, 6, 7}; var c11 = c1.Where(i = > i < 5); c11.Dump(); var c12 = from i in c1 where i < select i; CÂU 02 Tìm tất sản phẩm hết hàng(Product[ProID, ProName, Price, Quantity]) GIẢI var c21 = Product.Where(item = > item.Quantity == 0); var c22 = from item in Product where item.Quantity = select item; CÂU 03 Tìm tất sản phẩm hàng có giá < 100 GIẢI var c31 = Product.Where(item = > item.Price < 100 && item.Quantity > 0); var c32 = from item in Product where item.Price < 100 && item.Quantity > select item; CÂU 04 Cho mảng{ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }.Tìm tất số có số ký tự tên nhỏ giá trị(vd: six có số ký tự < 6) GIẢI var c4 = new string[]{ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; var c41 = c4.Where((item, index) = > item.Count() < index); c41.Dump(); CÂU 05 Cho mảng : { 5, 4, 1, 3, 9, 8, 6, 7, 2, }.Hãy cho biết số có vị trí mảng xếp hay khơng(giá trị có index hay khơng) GIẢI var c5 = new int[] { 5, 4, 1, 3, 9, 8, 6, 7, 2, }; var c51 = c5.Where((item, index) = > item == index); c51.Dump(); CÂU 06 Cho mảng{ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }.Liệt kê phần tử < giá trị GIẢI var c6 = new string[]{ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; var c61 = c6.Where((item, index) = > index < 5); c61.Dump(); CÂU 07 Cho mảng A : { 0, 2, 4, 5, 6, 8, } mảng B : { 1, 3, 5, 7, }.Liệt kê tất cặp phần tử từ A < phần tử từ B(vd : < 1, < 3, …) GIẢI var c7a = new int[] { 0, 2, 4, 5, 6, 8, }; var c7b = new int[] { 1, 3, 5, 7, }; var c71 = from item in c7a from item2 in c7b where item < item2 group item2 by item; c71.Dump(); var c72 = c7a.Select(item = > new {key = item, pairs = c7b.Where(item2 = > item < item2)}); c72.Dump(); CÂU 08 Cho mảng : { 5, 4, 1, 3, 9, 8, 6, 7, 2, }.Hãy liệt kê theo nhóm phần tử đồng dư với GIẢI var c8 = new int[] { 5, 4, 1, 3, 9, 8, 6, 7, 2, }; var c81 = from i in c8 group i by i % 5; c81.Dump(); var c82 = c8.GroupBy(item = > item % 5); c82.Dump(); CÂU 09 Cho mảng : { "blueberry", "chimpanzee", "abacus", "banana", "apple", "cheese" }.Hãy liệt kê phần tử theo nhóm chữ đầu GIẢI var c9 = new string[]{ "blueberry", "chimpanzee", "abacus", "banana", "apple", "cheese" }; var c91 = from item in c9 group item by item[0]; c91.Dump(); var c92 = c9.GroupBy(item = > item[0]); c92.Dump(); CÂU 10 Cho mảng : { "cherry", "apple", "blueberry" }.Hãy xếp theo alphabet GIẢI var c10 = new string[]{ "cherry", "apple", "blueberry" }; var c101 = from item in c10 orderby item[0] select item; c101.Dump(); var c102 = c10.OrderBy(item = > item[0]); c102.Dump(); CÂU 11 Cho mảng : { "cherry", "apple", "blueberry" }.Với mảng xếp theo độ dài chuỗi GIẢI var c111 = from item in c10 orderby item.Count() select item; c111.Dump(); var c112 = c10.OrderBy(item = > item.Count()); c112.Dump(); CÂU 12 Cho mảng : { "aPPLE", "AbAcUs", "bRaNcH", "BlUeBeRrY", "ClOvEr", "cHeRry" }.Hãy xếp theo alphabet không kể Hoa thường GIẢI var c12s = new string[]{ "aPPLE", "AbAcUs", "bRaNcH", "BlUeBeRrY", "ClOvEr", "cHeRry" }; var c12s1 = from item in c12s orderby char.ToLower(item[0]) select item; c12s1.Dump(); var c12s2 = c12s.OrderBy(item = > char.ToLower(item[0])); c12s2.Dump(); CÂU 13 Cho mảng : { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }.Hãy xếp theo alphabet xếp theo độ dài chuỗi giảm dần GIẢI var c13s = new string[]{ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; var c13s1 = from item in c13s orderby item, item.Count() select item; c13s1.Dump(); var c13s2 = c13s.OrderBy(item = > item).ThenBy(item = > item.Count()); c13s2.Dump(); ... int[] { 1, 3, 5, 7, }; var c71 = from item in c7a from item2 in c7b where item < item2 group item2 by item; c71.Dump(); var c72 = c7a.Select(item = > new {key = item, pairs = c7b.Where(item2 =... c61.Dump(); CÂU 07 Cho mảng A : { 0, 2, 4, 5, 6, 8, } mảng B : { 1, 3, 5, 7, }.Liệt kê tất cặp phần tử từ A < phần tử từ B(vd : < 1, < 3, …) GIẢI var c7a = new int[] { 0, 2, 4, 5, 6, 8, }; var c7b = new... = > item < item2)}); c72.Dump(); CÂU 08 Cho mảng : { 5, 4, 1, 3, 9, 8, 6, 7, 2, }.Hãy liệt kê theo nhóm phần tử đồng dư với GIẢI var c8 = new int[] { 5, 4, 1, 3, 9, 8, 6, 7, 2, }; var c81 = from