/class IntArray
internal class IntArray
{
[] arr;public int
i]public int this int[
{
{ get return arr[i]; }
{ arr[i] = value; }set
}
public IntArray()
{
arr = new int[0];
}
public IntArray(int k)
{
arr = new int[k];
Random rnd = Random();new
( i = 0; i < k; i++)for int
{
arr[i] = rnd.Next(1, 200);
}
}
public IntArray(int[] arr)
{
.arr = this new int[arr.Length];
( i = 0; i < arr.Length; i++)for int
.arr[i] = arr[i];this
}
public IntArray(IntArray obj)
{
arr = obj.arr;
}
Nhap()public void
{
Console.WriteLine("Nhap kich thuoc cua mang : ");
n = int int.Parse(Console.ReadLine());
arr = new int[n];
( i = 0; i < arr.Length; i++)for int
{
Console.WriteLine( , i + 1);"Nhap phan tu thu {0} : "
arr[i] = int.Parse(Console.ReadLine());
}
}
Xuat()public void
{
Console.WriteLine("Mang : ");
( i = 0; i < arr.Length; i++)for int
{
Console.WriteLine( , arr[i]);"{0}"
}
Console.WriteLine();
}
KiemTraKT( n)public bool int
{
( i = 0; i < arr.Length; i++)for int
{
(arr[i] % 2 == 0)if
return true ;
}
return false ;
}
TimTuanTu( x)public int int
{
n = arr.Length;int
( i = 0; i < n; i++)for int
{
(arr[i] == x)if
return i;
}
return -1;
}
}
//main
TestConstructor3();
TestTimTuanTu();
TestTimNhiPhan();
static void TestConstructor1()
{
IntArray obj = IntArray(20);new
Console.WriteLine("Gia tri mang phat sinh: ");
obj.Xuat();
}
static void TestConstructor2()
{
[] a = { 4, 7, 9, 10, 20, 8, 3, 17, 10, 6 };int
IntArray obj = IntArray(a);new
Console.WriteLine("Gia tri mang: ");
obj.Xuat();
}
static void TestConstructor3()
{
IntArray obj1 = IntArray();new
obj1.Nhap();
Console.WriteLine("Gia tri mang: ");
obj1.Xuat();
IntArray obj2 = IntArray(obj1);new
Console.WriteLine("\nGia tri mang copy: ");
obj2.Xuat();
}
static void TestTimTuanTu()
{
k, x, kq;int
Console.Write(">>Nhap so luong mang: ");
.TryParse(Console.ReadLine(), k);int out
IntArray obj = IntArray(k);new
Console.WriteLine(">>Cac phan tu:");
obj.Xuat();
Console.Write("\n>>Gia tri can tim x = ");
.TryParse(Console.ReadLine(), x);int out
kq = obj.TimTuanTu(x);
(kq == -1)if
Console.WriteLine( , x);"->Khong ton tai {0}!"
else
Console.WriteLine( , x, kq);"->Co {0} tai vi tri {1}"
}
static int TimNhiPhan( x, [] arr)int int
{
Array.Sort(arr);
left = 0;int
right = arr.Length - 1;int
(left <= right)while
{
mid = (left + right) / 2;int
(arr[mid] == x) if
return mid;
(arr[mid] < x) else if
left = mid + 1;
else
right = mid - 1;
}
return -1;
}
static void TestTimNhiPhan()
{
[] arr; int
Console.WriteLine("Nhap so luong phan tu mang: ");
n = int int.Parse(Console.ReadLine());
arr = new int[n];
( i = 0; i < n; i++)for int
{
Console.WriteLine( , i + 1);"Nhap phan tu thu {0}: "
arr[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("\nCac phan tu trong mang: ");
( i = 0; i < n; i++)for int
{
Console.Write(arr[i] + " ");
}
Console.Write("\nNhap gia tri can tim x = ");
x = int int.Parse(Console.ReadLine());
result = TimNhiPhan(x, arr);int
(result == -1)if
Console.WriteLine( , x);"\nKhong tim thay gia tri {0}"
else
Console.WriteLine( , x, result);"\nCo gia tri {0} tai vi tri {1}"
}
YÊU CẦU 3
Bổ sung thêm các đoạn code sau vào lớp MangSinhVien:
public bool TonTai( msx, vt)string int
{
( i = 0; i < vt; i++)for int
{
(a[i].MaSo.CompareTo(msx) == 0)if
return true ;
}
return false ;
}
public void Nhap()
{
Console.WriteLine("Nhap so luong sinh vien: ");
n = int int.Parse(Console.ReadLine());
a = SinhVien[n];new
( i = 0; i < n; i++)for int
{
do
{
Console.Write("Nhap ma so sinh vien thu {0}: ", i + 1);
maSo = Console.ReadLine();
(TonTai(maSo, i))if
{
Console.WriteLine("Ma so sinh vien da ton tai, vui long nhap lai!");
}
} (TonTai(maSo, i));while
Nhap();
}
}
Bổ sung code trong hàm main :
MangSinhVien dssv = MangSinhVien();new
dssv.Nhap();
dssv.Xuat();

Preview text:

/class IntArray internal class IntArray { public int[] arr; public int this[int i] { get { return arr[i]; } set { arr[i] = value; } } public IntArray() { arr = new int[0]; } public IntArray(int k) { arr = new int[k]; Random rnd = new Random();
for (int i = 0; i < k; i++) { arr[i] = rnd.Next(1, 200); } } public IntArray(int[] arr) {
this.arr = new int[arr.Length];
for (int i = 0; i < arr.Length; i++) this.arr[i] = arr[i]; } public IntArray(IntArray obj) { arr = obj.arr; } public void Nhap() {
Console.WriteLine("Nhap kich thuoc cua mang : ");
int n = int.Parse(Console.ReadLine()); arr = new int[n];
for (int i = 0; i < arr.Length; i++) {
Console.WriteLine("Nhap phan tu thu {0} : ", i + 1);
arr[i] = int.Parse(Console.ReadLine()); } } public void Xuat() { Console.WriteLine("Mang : ");
for (int i = 0; i < arr.Length; i++) {
Console.WriteLine("{0}", arr[i]); } Console.WriteLine(); } public bool KiemTraKT(int n) {
for (int i = 0; i < arr.Length; i++) { if (arr[i] % 2 == 0) return true; } return false; } public int TimTuanTu(int x) { int n = arr.Length;
for (int i = 0; i < n; i++) { if (arr[i] == x) return i; } return -1; } } //main TestConstructor3(); TestTimTuanTu(); TestTimNhiPhan(); static void TestConstructor1() {
IntArray obj = new IntArray(20);
Console.WriteLine("Gia tri mang phat sinh: "); obj.Xuat(); } static void TestConstructor2() {
int[] a = { 4, 7, 9, 10, 20, 8, 3, 17, 10, 6 };
IntArray obj = new IntArray(a);
Console.WriteLine("Gia tri mang: "); obj.Xuat(); } static void TestConstructor3() {
IntArray obj1 = new IntArray(); obj1.Nhap();
Console.WriteLine("Gia tri mang: "); obj1.Xuat();
IntArray obj2 = new IntArray(obj1);
Console.WriteLine("\nGia tri mang copy: "); obj2.Xuat(); } static void TestTimTuanTu() { int k, x, kq;
Console.Write(">>Nhap so luong mang: ");
int.TryParse(Console.ReadLine(), out k);
IntArray obj = new IntArray(k);
Console.WriteLine(">>Cac phan tu:"); obj.Xuat();
Console.Write("\n>>Gia tri can tim x = ");
int.TryParse(Console.ReadLine(), out x); kq = obj.TimTuanTu(x); if (kq == -1)
Console.WriteLine("->Khong ton tai {0}!", x); else
Console.WriteLine("->Co {0} tai vi tri {1}", x, kq); }
static int TimNhiPhan(int x, int[] arr) { Array.Sort(arr); int left = 0; int right = arr.Length - 1; while (left <= right) { int mid = (left + right) / 2; if (arr[mid] == x) return mid; else if (arr[mid] < x) left = mid + 1; else right = mid - 1; } return -1; } static void TestTimNhiPhan() { int[] arr;
Console.WriteLine("Nhap so luong phan tu mang: ");
int n = int.Parse(Console.ReadLine()); arr = new int[n]; ( for int i = 0; i < n; i++) {
Console.WriteLine("Nhap phan tu thu {0}: ", i + 1);
arr[i] = int.Parse(Console.ReadLine()); }
Console.WriteLine("\nCac phan tu trong mang: "); ( for int i = 0; i < n; i++) { Console.Write(arr[i] + " "); }
Console.Write("\nNhap gia tri can tim x = ");
int x = int.Parse(Console.ReadLine());
int result = TimNhiPhan(x, arr); if (result == -1)
Console.WriteLine("\nKhong tim thay gia tri {0}", x); else
Console.WriteLine("\nCo gia tri {0} tai vi tri {1}", x, result); } YÊU CẦU 3
Bổ sung thêm các đoạn code sau vào lớp MangSinhVien:
public bool TonTai(string msx, int vt) { ( for int i = 0; i < vt; i++) {
if (a[i].MaSo.CompareTo(msx) == 0) return true; } return false; } public void Nhap() {
Console.WriteLine("Nhap so luong sinh vien: ");
int n = int.Parse(Console.ReadLine()); a = new SinhVien[n]; ( for int i = 0; i < n; i++) { do {
Console.Write("Nhap ma so sinh vien thu {0}: ", i + 1); maSo = Console.ReadLine(); if (TonTai(maSo, i)) {
Console.WriteLine("Ma so sinh vien da ton tai, vui long nhap lai!"); } } while (TonTai(maSo, i)); Nhap(); } }
Bổ sung code trong hàm main :
MangSinhVien dssv = new MangSinhVien(); dssv.Nhap(); dssv.Xuat();