Bài tập lập trình hướng đối tượng với visual C#

150 2.3K 13
Bài tập lập trình hướng đối tượng với visual C#

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 0.1 : Viết chương trình giải phương trình bậc 2 I. Mục tiêu :  Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, hệ thống lại các vấn ₫ề chính của phần mềm này, ₫ể các chương còn lại giải quyết chúng. II. Nội dung :  Xây dựng chương trình nhỏ giải phương trình bậc 2 có dạng ax^2 + bx + c = 0 chạy ở chế ₫ộ textmode (console). III. Chuẩn ₫ầu ra :  Sinh viên nắm vững và viết thành thạo các ứng dụng nhỏ chạy ở ch ế ₫ộ textmode. IV. Qui trình : 1. Chạy VS .Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project. 2. Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên Project vào textbox "Name:" (td. GPTB2), click button OK ₫ể tạo Project theo các thông số ₫ã khai báo. 3. Ngay sau khi Project vừa ₫ược tạo ra, cửa sổ soạn code cho chương trình ₫ược hiển thị. Hiệu chỉnh code của file Program.cs ₫ể có nội dung như sau : using System; namespace GPTB2 { class Program { //₫ịnh nghĩa các biế n cần dùng static double a, b, c; static double delta; static double x1, x2; //₫ịnh nghĩa hàm nhập 3 thông số a,b,c của phương trình bậc 2 static void NhapABC() { String buf; Console.Write("Nhập a : "); buf= Console.ReadLine(); a = Double.Parse(buf); Console.Write("Nhập b : "); buf = Console.ReadLine(); b = Double.Parse(buf); Console.Write("Nhập c : "); buf = Console.ReadLine(); c = Double.Parse(buf); } //₫ịnh nghĩa hàm tính nghiệm của phương trình bậc 2 static void GiaiPT() { //tính biệt số delta của phương trình delta = b * b - 4 * a * c; if (delta >= 0) //nếu có nghiệm thực { x1 = (-b + Math.Sqrt(delta)) / 2 / a; x2 = (-b - Math.Sqrt(delta)) / 2 / a; } } Trang 2 //₫ịnh nghĩa hàm xuất kết quả static void XuatKetqua() { if (delta < 0) //báo vô nghiệm Console.WriteLine("Phương trình vô nghiệm"); else //báo có 2 nghiệm { Console.WriteLine("Phương trình có 2 nghiệm thực : "); Console.WriteLine("X1 = " + x1); Console.WriteLine("X2 = " + x2); } } //₫ịnh nghĩa chương trình (hàm Main) static void Main(string[] args) { NhapABC(); //nhập a,b,c GiaiPT(); //giải phương trình XuatKetqua(); //xuất kết quả //chờ người dùng ấn Enter ₫ể ₫óng cửa sổ Console lại. Console.Write("Ấn Enter ₫ể dừng chương trình : "); Console.Read(); } } //kết thúc class } //kết thúc namespace 4. Chọn menu Debug.Start Debugging ₫ể dịch và chạy ứng dụng. Hãy thử nhập 1 bộ ba (a,b,c) của phương trình bậc 2 nào ₫ó ₫ể chương trình giải và xem kết quả có ₫úng không. 5. Lặp lại bước 4 cho nhiều phương trình bậc 2 khác nhau. Hãy thử nhập a = 0 xem chương trình phản ứng thế nào ? Nếu chương trình bị lỗi, hãy phân tích và xác ₫ịnh lỗi rồi tìm cách sửa lỗi ₫ể chương trình có thể xử lý ₫úng trường hợp người dùng nhập a = 0. Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 0.2 : Viết chương trình thực hiện giải thuật lặp I. Mục tiêu :  Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, hệ thống lại các vấn ₫ề chính của phần mềm này, ₫ể các chương còn lại giải quyết chúng. II. Nội dung :  Xây dựng chương trình nhỏ chạy ở chế ₫ộ textmode (console), tính 3 hàm số theo công thức lặp sau ₫ây : S1(x) = 1 + x + x 2 /2! + x 3 /3! + + x n /n! S2(x) = 1 - x + x 2 /2! - x 3 /3! + + (-1) n x n /n! S3(x) = 1 + sin(x) + sin(2x) + + sin(nx) III. Chuẩn ₫ầu ra :  Sinh viên nắm vững và viết thành thạo các ứng dụng nhỏ chạy ở chế ₫ộ textmode. IV. Phân tích : Điểm chung của 3 hàm S1, S2, S3 là dùng cùng công thức lặp có dạng sau : S(x) = 1 + ∑ ∞ =1n n e trong ₫ó mỗi thành phần e n phụ thuộc vào x và n, e n thường nhỏ dần khi n tăng lên ₫ến khi ₫ủ nhỏ (nhỏ hơn sai số epsilon qui ₫ịnh) thì ta bỏ ₫i : - ₫ối với S1(x) thì e n = x n /n! - ₫ối với S2(x) thì e n = (-1) n x n /n! - ₫ối với S3(x) thì e n = sin(nx) Thuật giải lặp ₫ể tính công thức trên gồm các bước sau : 1. Lúc ₫ầu, thiết lập S = 1 và n = 1 2. Tính e n , tích lũy e n vào S. 3. Kiểm tra e n < epsilon. Nếu thỏa thì dừng, nếu không thì tăng n 1 ₫ơn vị và thực hiện lại bước 2. Lập trình chẳng qua là dịch thuật giải ở dạng ngôn ngữ tự nhiên thành ngôn ngữ lập trình cho máy hiểu và thực thi tự ₫ộng dùm con người khi cần. Sau ₫ây là qui trình ₫iển hình ₫ể viết chương trình nhỏ thực hiện 3 công thức lặp trên bằng VC# : V. Qui trình : 1. Chạy VS .Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project. 2. Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên Project vào textbox "Name:" (td. TínhLap), click button OK ₫ể tạo Project theo các thông số ₫ã khai báo. 3. Ngay sau khi Project vừa ₫ược tạo ra, cửa sổ soạn code cho chương trình ₫ược hiển thị. Hiệu chỉnh code của file Program.cs ₫ể có nội dung như sau : using System; using System.Collections.Generic; using System.Text; namespace TinhLap { Trang 2 class Program { //₫ịnh nghĩa hằng gợi nhớ miêu tả sai số mong muốn const double EPSILON = 0.0000001; //₫ịnh nghĩa hàm tính n! static long giaithua(int n) { if (n <= 1) return 1; return n*giaithua(n-1); } //₫ịnh nghĩa hàm tính thành phần x^n/n! static double EnS1(double x, int n) { return (Math.Pow(x,n))/giaithua(n); } //₫ịnh nghĩa hàm tính công thức S1(x) static double S1(double x) { //1. Lúc ₫ầu, thiết lập S = 1 và n = 1 double S = 1; int n = 1; double En; do { //2. Tính En, tích lũy En vào S En = EnS1(x,n); S = S + En; n++; } while (Math.Abs(En) >= EPSILON); //3. Lặp bước 2 nếu En >= epsilon //gởi kết quả về lệnh gọi hàm này return S; } //₫ịnh nghĩa hàm tính thành phần (-1)^nx^n/n! static double EnS2(double x, int n) { return Math.Pow(-1,n)*Math.Pow(x,n)/giaithua(n); } //₫ịnh nghĩa hàm tính công thức S2(x) static double S2(double x) { //1. Lúc ₫ầu, thiết lập S = 1 và n = 1 double S = 1; int n = 1; double En; do { //2. Tính En, tích lũy En vào S Trang 3 En = EnS2(x,n); S = S + En; n = n + 1; } while (Math.Abs(En) >= EPSILON); //3. Lặp bước 2 nếu En >= epsilon //gởi kết quả về lệnh gọi hàm này return S; } //₫ịnh nghĩa hàm tính công thức S3(x) static double S3(double x) { //1. Lúc ₫ầu, thiết lập S = 1 và n = 1 double S = 1; int n = 1; double En; do { //2. Tính En, tích lũy En vào S En = Math.Sin(n*x); S = S + En; n++; } while (Math.Abs(En) >= EPSILON); //3. Lặp bước 2 nếu En >= epsilon //gởi kết quả về lệnh g ọi hàm này return S; } //chương trình chính thử dùng các hàm ₫ược viết static void Main(string[] args) { double x; String buf; //yêu cầu người dùng nhập x Console.Write("Nhập x : "); buf = Console.ReadLine(); x = Double.Parse(buf); //gọi thử hàm S1(x) Console.WriteLine("S1(" + x + ")= "+ S1(x)); //gọi thử hàm S2(x) Console.WriteLine("S2(" + x + ")= " + S2(x)); //gọi thử hàm S3(x) Console.WriteLine("S3(" + x + ")= " + S3(x)); } } } 4. Chọn menu Debug.Start Debugging ₫ể dịch và chạy ứ ng dụng. Hãy thử nhập 1 giá trị x nào ₫ó (nằm trong miền hội tự của hàm) ₫ể chương trình tính 3 hàm S1(x), S2(x), S3(x) hiển thị kết quả. 5. Lặp lại bước 4 cho nhiều giá trị x khác nhau và kiếm tra xem chương trình chạy ₫úng không. Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 0.3 : Viết chương trình xử lý ₫a thức I. Mục tiêu :  Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, tập trung vào việc sử dụng các kiểu dữ liệu cơ bản ₫ịnh sẵn. II. Nội dung :  Xây dựng chương trình nhỏ chạy ở chế ₫ộ textmode (console), thực hiện các yêu cầu sau : 1. miêu tả kiểu ₫ể lưu giữ từng toán hạng của ₫a thức gồm 2 thông tin : hệ số và số mũ. 2. sắp xếp danh sách các toán hạng của ₫a thức theo thứ tự giảm dần của số mũ, phương pháp sắp xếp là Insertion Sort. 3. chuẩn hóa ₫a thức : mỗi số mũ chỉ xuất hiện trong ₫a thức 1 lần. Thí dụ có ₫a thức gốc R(x)= x^3 + x^2 + x + 2x^2 + 2x + 2 sau khi chuẩn hóa thành R(x)= x^3 + 3x^2 + 3x + 2 4. Nhân 2 ₫a thức. III. Chuẩn ₫ầu ra :  Sinh viên nắm vững và viết thành thạo các ứng dụng nhỏ chạy ở chế ₫ộ textmode và biết cách dùng các kiễu dữ liệu cơ bản ₫ịnh sẵn khi cần. IV. Phân tích : 1. Ta dùng kiểu struct ₫ể miêu tả thông tin về mỗi số hạng của ₫a thức như sau : struct Sohang { public int somu; //số mũ public float heso; //hệ số }; 2. Ý tưởng sắp xếp danh sách theo giải thuật "Insertion Sort" như sau : Lặp xác ₫ịnh vị trí ₫úng cho từng số hạng i (từ 0 tới n) của ₫a thức : - Lặp tìm số hạng có số mũ lớn nhất từ vị trí i tới n - Hoán vị nó với số hạng i Từ thuật giải ₫ược viết bằng ngôn ngữ tự nhiên ở trên, ta sẽ dịch nó thành hàm SortItems() ₫ược viết bằng VC# như trong mã nguồn dưới ₫ây. 3. Chuẩn hóa ₫a thức : ₫ược thực hiệ n thông qua 2 bước chính : - sắp xếp ₫a thức theo thứ tự số mũ giảm dần (gọi hàm SortItems() ở bước 2). - duyệt tuần tự từ ₫ầu ₫ến cuối ₫a thức ₫ể cộng các số hạng liên tiếp có cùng số mũ lại thành 1 số hạng. Từ thuật giải ₫ược viết bằng ngôn ngữ tự nhiên ở trên, ta dịch nó thành hàm Chuanhoa() ₫ược viết bằng VC# như trong mã nguồn d ưới ₫ây. 4. Nhân ₫a thức : ₫ược thực hiện thông qua 2 bước chính : - lặp nhân từng số hạng của ₫a thức 1 với tất cả các số hạng của ₫a thức 2. Kết quả ₫ược lưu vào ₫a thức kết quả. - Chuẩn hóa ₫a thức kết quả. Trang 2 Từ thuật giải ₫ược viết bằng ngôn ngữ tự nhiên ở trên, ta dịch nó thành hàm Nhan() ₫ược viết bằng VC# như trong mã nguồn dưới ₫ây. V. Qui trình : 1. Chạy VS .Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project. 2. Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên Project vào textbox "Name:" (td. Dathuc), click button OK ₫ể tạo Project theo các thông số ₫ã khai báo. 3. Ngay sau khi Project vừa ₫ược tạo ra, cửa sổ so ạn code cho chương trình ₫ược hiển thị. Hiệu chỉnh code của file Program.cs ₫ể có nội dung như sau : using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Dathuc { class Program { //₫ịnh nghĩa kiểu miêu tả 1 số mũ private struct Sohang { public float heso; //hệ số public int somu; //số mũ public Sohang(float h, int s) { heso = h; somu = s; } }; //hàm sắp xếp ₫a thức theo thứ tự s ố mũ giảm dần static void SortItems (Sohang[] dathuc, int soluong) { //₫ịnh nghĩa các biến cần dùng int i,j, max; Sohang temp; //Lặp xác ₫ịnh vị trí ₫úng cho từ số mũ for (i = 0; i < soluong-1; i++) { //Tìm phần tử có số mũ lớn nhất từ vị trí i max = i; for (j = i + 1; j < soluong; j++) if (dathuc[max].somu < dathuc[j].somu) max = j; //hoán vị phần tử có số mũ lớn nhất về vị trí i temp = dathuc[i]; dathuc[i] = dathuc[max]; dathuc[max] = temp; } } //hàm chuẩn hóa ₫a thức, mỗi số mũ chỉ có 1 phần tử static int Chuanhoa (Sohang[] dathuc, int soluong) { //₫ịnh nghĩa các biến cần dùng int i,j; Sohang[] temp = new Sohang[soluong]; Trang 3 //sắp xếp thự tự các phần tử trong ₫a thức SortItems(dathuc,soluong); //Lặp việc gộp các phần tử có số mũ giống nhau j = 0; temp[0] = dathuc[0]; i = 1; while (i < soluong) if (temp[j].somu == dathuc[i].somu) { temp[j].heso += dathuc[i].heso; i++; } else { j++; temp[j] = dathuc[i]; i++; } //copy kết quả về dathuc gốc for (i =0; i <= j ; i++) dathuc[i] = temp[i]; //return số phần tử trong ₫a thức chuẩn hóa return j+1; } //hàm in ₫a thức ₫ể kiểm tra static void Indathuc(Sohang[] dathuc, int soluong) { int i; if (soluong == 0) return; //in phần tử ₫ầu tiên của ₫a thức Console.Write(dathuc[0].heso + "x^" + dathuc[0].somu + " "); //lặp in từng phần tử còn lại của ₫a thức for (i = 1; i < soluong; i++) if (dathuc[i].heso <0) Console.Write(dathuc[i].heso+ "x^"+ dathuc[i].somu + " "); else Console.Write("+ " + dathuc[i].heso + "x^"+ dathuc[i].somu + " "); //in ký tự xuống dòng Console.WriteLine(); } //hàm nhân 2 ₫a thức static void Nhan (Sohang [] dathuc1, int soluong1, Sohang[] dathuc2, int soluong2, ref Sohang[] dathuc3, ref int soluong3) { //₫ịnh nghĩa các biến cần dùng int i,j,k; //cấp phát bộ nhớ chứa ₫a thức kết quả dathuc3 = new Sohang[soluong1*soluong2]; k = 0; //lặp nhân từng số hạng của ₫a thức 1 for (i=0; i <soluong1; i++) //với tất cả các số hạng của ₫a thức 2 for (j = 0; j <soluong2; j++) { dathuc3[k].somu = dathuc1[i].somu+dathuc2[j].somu; Trang 4 dathuc3[k].heso = dathuc1[i].heso*dathuc2[j].heso; k++; } //chuẩn hóa ₫a thức kết quả soluong3 = Chuanhoa (dathuc3,k); } //chương trình chính thử dùng các hàm chức năng static void Main(string[] args) { Sohang[] dathuc1 = new Sohang[] { new Sohang(1,3), new Sohang(1,2), new Sohang(1,1),new Sohang(-2,2),new Sohang(2,1),new Sohang(2,0)}; //1. thử sắp xếp và in ra ₫ể kiểm tra Console.WriteLine("Đa thức gốc là : "); Indathuc(dathuc1,6); SortItems(dathuc1,6); Console.WriteLine("Đa thức ₫ược sort là : "); Indathuc(dathuc1,6); Sohang[] dathuc2 = new Sohang[] { new Sohang(1,3), new Sohang(1,2), new Sohang(1,1), new Sohang(-2,2), new Sohang(2,1),new Sohang(2,0)}; //2. thử chuẩn hóa ₫a thức và in ra ₫ể kiểm tra Console.WriteLine("Đa thức gốc là : "); Indathuc(dathuc2,6); int somu = Chuanhoa(dathuc2,6); Console.WriteLine("Đa thức ₫ược chuẩn hóa là : "); Indathuc(dathuc2,somu); //3. thử nhân 2 ₫a thức và in ra ₫ể kiểm tra Sohang[] dathuc3 = new Sohang[] { new Sohang (1,3), new Sohang(1,2), new Sohang(1,1), new Sohang(-2,2), new Sohang(2,1),new Sohang(2,0)}; Sohang[] dathuc4 = new Sohang[] { new Sohang(1,3), new Sohang(1,2), new Sohang(1,1), new Sohang(-2,2), new Sohang(2,1),new Sohang(2,0)}; Sohang[] dathuc5 = new Sohang[1]; int soluong=1; Nhan(dathuc3, 6, dathuc4, 6, ref dathuc5, ref soluong); Console.WriteLine("Đa thức kết quả là : "); Indathuc(dathuc5, soluong); //4. chờ người dùng ấn Enter ₫ể ₫óng cửa sổ Console lại. Console .Write("Ấn Enter ₫ể dừng chương trình : "); Console.Read(); }//hết hàm Main }//hết class Program }//hết namespace  4. Chọn menu Debug.Start Debugging ₫ể dịch và chạy ứng dụng. Hãy kiểm tra kết quả hiển thị của chương trình. 5. Thử hiệu chỉnh lại nội dung các ₫a thức trong mã nguồn rồi chạy lại phần mềm ₫ể kiểm tra kết quả. 6. Hãy suy nghĩ và hiệu chỉnh lại phần mềm ₫ể có thể nhập ₫a thức từ người dùng. Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 1.1 : Viết chương trình sắp 8 con hậu I. Mục tiêu :  Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, tập trung vào việc sử dụng các kiểu dữ liệu cơ bản ₫ịnh sẵn như struct và array. II. Nội dung :  Xây dựng chương trình nhỏ chạy ở chế ₫ộ textmode (console), thực hiện các yêu cầu sau : 1. tìm tất cả phương án ₫ể sắp 8 con hậu vào bàn cờ 8x8 ô sao cho chúng không thể ăn ₫ược nhau (thỏa mãn ₫ồng thời các ₫iều kiện chúng không trên cùng hàng, cùng cột hay cùng ₫ường chéo). 2. in các phương án dạng ma trận 2 chiều ₫ể người dùng xem dễ dàng. III. Chuẩn ₫ầu ra :  Sinh viên nắm vững và viết thành thạo các ứng dụng nhỏ chạy ở chế ₫ộ textmode và biết cách dùng các kiễu dữ liệu cơ bản ₫ịnh sẵn, nhất là kiểu struct và array, khi cần. IV. Phân tích : 1. Ta dùng thuật giải backtracking ₫ể tìm các phương án sắp 8 con hậu như sau : + Lặp tìm vị trí con hậu ở từng cột, từ trái sang phải : - Nếu sắp ₫ược cho cột c thì tăng c 1 ₫ơn vị ₫ể tiếp tục cột kế tiếp, nếu cột c ₫ã vượt qua MAX thì ₫ã tìm ₫ược 1 cách mới. - Nếu không sắp ₫ược cho cột c thì giảm c 1 ₫ơn vị ₫ể thử tiếp các khả năng còn lại của cột cũ này. Nếu c <0 thì hết cách. 2. Để lưu vết xử lý trên từng cột, ta dùng biến array hang[MAX], mỗi phần tử hang[c] chứa chỉ số hàng ₫ã xử lý lần cuối tr ước ₫ây (-1 : chưa, MAX : hết). Từ thuật giải ₫ược viết bằng ngôn ngữ tự nhiên ở trên, ta dịch nó thành chương trình ₫ược viết bằng VC# như trong mã nguồn dưới ₫ây. V. Qui trình : 1. Chạy VS .Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project. 2. Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên Project vào textbox "Name:" (td. Sap8Conhau), click button OK ₫ể tạo Project theo các thông số ₫ã khai báo. 3. Ngay sau khi Project v ừa ₫ược tạo ra, cửa sổ soạn code cho chương trình ₫ược hiển thị. Hiệu chỉnh code của file Program.cs ₫ể có nội dung như sau : using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Sap8Conhau { class Program { [...]... ₫ể dịch và chạy ứng dụng Hãy kiểm tra kết quả hiển thị của chương trình Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 1.1 : Viết chương trình tạo từ I Mục tiêu : Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, tập trung vào việc sử dụng các kiểu dữ liệu cơ bản ₫ịnh sẵn như struct và array II Nội dung : Xây dựng chương trình nhỏ chạy ở chế ₫ộ textmode (console), thực hiện các yêu cầu... tra kết quả hiển thị của chương trình 5 Lặp lại bước 4 cho nhiều chuỗi ký tự có ₫ộ dài khác nhau Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 1.3 : Viết chương trình "Mã ₫i tuần tra" I Mục tiêu : Giúp SV ôn lại qui trình viết 1 ứng dụng VC# ₫ơn giản, tập trung vào việc sử dụng các kiểu dữ liệu cơ bản ₫ịnh sẵn như struct và array II Nội dung : Xây dựng chương trình nhỏ chạy ở chế ₫ộ textmode... các ₫ối tượng giao diện khi cửa sổ chứa chúng bị thay ₫ổi IV Phân tích : Trang 2 Chương trình chứa 1 ₫ối tượng Form, Form chứa các ₫ối tượng bên trong : - 3 ₫ối tượng Button - 1 ₫ối tượng Label - 1 ₫ối tượng ma trận Sudoku Ta có thể thiết kế trực quan Form với các ₫ối tượng co sẵn như Button, Label cho dễ Riêng ma trận Sudoku sẽ ₫ược lập trình ₫ộng theo trạng thái từng thời ₫iểm của nó V Qui trình :... ₫ổi kích thước của cửa sổ, ta thấy ₫ối tượng WMP sẽ thay ₫ổi kích thước theo Riêng button thì không thay ₫ổi vì ta không có nhu cầu và không viết code làm việc này Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 2.2 : Xây dựng ứng dụng giải ô số Sudoku I Mục tiêu : Giúp SV làm quen với qui trình thiết kế trực quan 1 ứng dụng Dialog Based Giúp SV làm quen với việc dùng lại linh kiện phần mềm... chứa các ₫ối tượng ₫ã có sẵn, ta không cần phải bận tâm ₫ặc tả chi tiết các ₫ối tượng cần dùng mà chỉ cần dùng lại chúng, lắp ghép chúng lại ₫ể tạo thành chương trình Đây là trường hợp may mắn nhất, nhưng trong thực tế lập trình hướng ₫ối tượng, ta sẽ có ₫ược may mắn này thường xuyên V Qui trình : 1 Chạy VS Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project 2 Mở rộng mục Visual C# trong TreeView... chương trình 5 Lặp lại bước 4 nhiều lần với nhiều kích thước khác nhau và tọa ₫ộ xuất phát khác nhau ₫ể quan sát kết quả Lưu ý do thuật giải rất nhiều bước, còn máy thì tốc ₫ộ hạn chế nên nếu chọn kích thước từ 8 trở lên thì sẽ tốn rất nhiều ngày mới có thể có kết quả Trang 1 MÔN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 2.1 : Xây dựng ứng dụng OOP ₫ơn giản & tìm hiểu sự tương tác giữa các ₫ối tượng. .. chương trình là 1 form giao diện trực quan, nó chứa 1 button Play ₫ể người dùng ra lệnh chơi file, nó cũng cần 1 ₫ối tượng cho phép người dùng duyệt trực quan cây thư mục ₫ể chọn file (giả sử ta biết ₫ó là ₫ối tượng FileOpenDialog) Cuối cùng chương trình cần 1 ₫ối tượng có khả năng play file multimedia (giả sử ta biết ₫ó là ₫ối tượng Windows Media Player) Theo kết quả phân tích trên, cấu trúc chương trình. .. Mục tiêu : Giúp SV làm quen với qui trình thiết kế trực quan 1 ứng dụng Dialog Based Giúp SV làm quen với việc dùng lại linh kiện phần mềm Giúp SV thấy cụ thể cấu trúc ứng dụng cấu thành từ các ₫ối tượng Giúp SV thấy sự tương tác giữa các ₫ối tượng II Nội dung : Xây dựng ứng dụng Dialog Based cho phép người dùng chơi các file multimedia Dịch và chạy chương trình Debug chương trình ₫ể tìm lỗi nếu có Tìm... viết bằng ngôn ngữ tự nhiên ở trên, ta dịch nó thành chương trình ₫ược viết bằng VC# như trong mã nguồn dưới ₫ây V Qui trình : 1 Chạy VS Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project 2 Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên... viết bằng ngôn ngữ tự nhiên ở trên, ta dịch nó thành chương trình ₫ược viết bằng VC# như trong mã nguồn dưới ₫ây V Qui trình : 1 Chạy VS Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project 2 Mở rộng mục Visual C# trong TreeView "Project Types", chọn mục Windows, chọn icon "Console Application" trong listbox "Templates" bên phải, thiết lập thư mục chứa Project trong listbox "Location", nhập tên . 1 bước SoNuocdi = SoNuocdi - 1; //tiếp tục tìm cách ₫i khác Nuocdi[SoNuocdi] .huong = Nuocdi[SoNuocdi] .huong + 1; } //chờ người dùng ấn Enter ₫ể ₫óng cửa sổ Console lại. Console.Write("Ấn. { // lặp tìm vị trí kế while (RetVal==false && Nuocdi[SoNuocdi] .huong < 8) { switch (Nuocdi[SoNuocdi] .huong) { //thử hướng ₫i hiện tại case 0 : x = Nuocdi[SoNuocdi].x + 2;. cần. Sau ₫ây là qui trình ₫iển hình ₫ể viết chương trình nhỏ thực hiện 3 công thức lặp trên bằng VC# : V. Qui trình : 1. Chạy VS .Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project.

Ngày đăng: 20/10/2014, 18:44

Từ khóa liên quan

Mục lục

  • Bai 0.1.pdf

  • Bai 0.2.pdf

  • Bai 0.3.pdf

  • Bai 1.1.pdf

  • Bai 1.2.pdf

  • Bai 1.3.pdf

  • Bai 2.1.pdf

  • Bai 2.2.pdf

  • Bai 3.1.pdf

  • Bai 4.1.pdf

  • Bai 5.1.pdf

  • Bai 5.2.pdf

  • Bai 5.3.pdf

  • Bai 5.4.pdf

  • Bai 6.1.pdf

  • Bai 7.1.pdf

  • Bai 7.2.pdf

  • Bai 7.3.pdf

  • Bai 7.4.pdf

  • Bai 8.1.pdf

Tài liệu cùng người dùng

Tài liệu liên quan