1. Trang chủ
  2. » Cao đẳng - Đại học

Bao cao bai tap tong hop 1 Visual Studio

15 5 0

Đ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 này ta có 4 Button là : “Giải phương trình”, “Kiểm tra các loại số”, “Mảng” có nhiệm vụ để chuyển sang trang với chức năng người dùng cần sử dụng và nút “ Thoát” có nhiệm vụ để t[r]

BÁO CÁO: BÀI TẬP TỔNG HỢP Nhóm 9: Vũ Huyền Anh Hà Thị Ánh Phần 1: Cấu tạo chương trình tập tổng hợp  Chương trình chia làm from:  From 1: Trang để đăng nhập  Form 2: Menu  Form 3: Các loại phương trình (bậc 1, bậc 2)  Form 4: Giải phương trình bậc  Form 5: Giải phương trình bậc  Form 6: Kiểm tra loại số (số hồn hảo, số phương, số ngun tố)  Form 7: Cấu trúc liệu giải thuật  Sơ đồ liên kết Form: FORM FORM FORM FORM FORM FORM FORM Phần 2: Cấu tạo Form 2.1 Form – Trang đăng nhập: Form bao gồm Label, Textbox, Button Check Box Các Button lập trình là: Nút “LOGIN” nút “QUIT”  Nút “QUIT”: private void exit_Click(object sender, EventArgs e) { this.Close(); }  Nút “LOGIN”: private void button1_Click(object sender, EventArgs e) { if (texttaikhoan.Text == "" || textmatkhau.Text == "") { MessageBox.Show("Yêu cầầ u nhập tài khoa ản mật khầả u"); } if(texttaikhoan.Text == "huyenanh" && textmatkhau.Text == "123") { MENUCHINH fk = new MENUCHINH(); fk.Show(); Visible = false; }else { if(texttaikhoan.Text == "anhha" && textmatkhau.Text == "123") { MENUCHINH fk = new MENUCHINH(); fk.Show(); Visible = false; } } } Check Box lập trình tuỳ chọn có hiển thị mật hay không: private void checkBox1_CheckedChanged(object sender, EventArgs e) { if (checkBox1.Checked) { textmatkhau.UseSystemPasswordChar = false; } else textmatkhau.UseSystemPasswordChar = true; } 2.2 Form – Menu chính: Ở trang ta có Button : “Giải phương trình”, “Kiểm tra loại số”, “Mảng” có nhiệm vụ để chuyển sang trang với chức người dùng cần sử dụng nút “ Thốt” có nhiệm vụ để thoát phần mềm Code Button 1: “Giải phương trình” private void button1_Click(object sender, EventArgs e) { giaipt fk = new giaipt(); fk.Show(); Visible = false; } Code Button 2: “Kiểm tra loại số” private void button2_Click(object sender, EventArgs e) { ktraso fk = new ktraso(); fk.Show(); Visible = false; } Code Button 3: “Mảng” private void button3_Click(object sender, EventArgs e) { mang fk = new mang(); fk.Show(); Visible = false; } Code Button 4: “Thoát” private void nutthoat_Click(object sender, EventArgs e) { this.Close(); } Khi kích vào nút Giải phương trình chuyển sang Form Form đóng lại 2.3: Form – Các loại phương trình bản: Ở trang ta tiếp tục có nút: “Giải phương trình bậc nhất”, “Giải phương trình bậc hai” để chuyển sang form tương ứng với loại phương trình cần giải nút “Trở về” để quay trang trước form – Menu Code: tương tự code nút form 2.4: Form –Giải phương trình bậc Ở ta có nút:  Nút “Kết quả”: Đưa nghiệm phương trình private void button1_Click(object sender, EventArgs e) { if (textb.Text == "" || texta.Text == "") { MessageBox.Show("Yêu cầu nhập giá trị a b!"); } double x; double a1 = Convert.ToDouble(texta.Text); double b1 = Convert.ToDouble(textb.Text); if (a1 != && b1 != 0) { x = -b1 / a1; MessageBox.Show("Phương trình có nghiệm x =" + x); } else { if (a1 == && b1 != 0) MessageBox.Show("Phương trình vơ nghiệm"); else { if (a1 != && b1 == 0) MessageBox.Show("Phương trình nghiệm x = 0"); else MessageBox.Show("Phương trình có vơ số nghiệm"); }} }  Nút “Xoá”: Xoá giá trị “a” “b” để nhập giá trị private void button2_Click(object sender, EventArgs e) { texta.Text = ""; textb.Text = ""; }  Nút “Trở về”: Để trở trang trước private void nutthoat_Click(object sender, EventArgs e) { giaipt fk = new giaipt(); fk.Show(); Visible = false; } 2.5: Form – Giải phương trình bậc hai Ở ta có tương tự Form có nút khác code phần nút “ Kết quả”: Code: private void button1_Click(object sender, EventArgs e) { == "") if (textb.Text == "" || texta.Text == "" || textc.Text { c!"); MessageBox.Show("Yêu cầu nhập giá trị a, b } double deta, x1, x2; double a1 = Convert.ToDouble(texta.Text); double b1 = Convert.ToDouble(textb.Text); double c1 = Convert.ToDouble(textc.Text); if (a1 == 0) MessageBox.Show("Điều kiện phương trình bậc a phải khác 0!"); else { deta = b1 * b1 - * a1 * c1; if (deta < 0) MessageBox.Show("Phương trình vơ nghiệm!"); else { if (deta > 0) { x1 = (-b1 + (float)Math.Sqrt(deta)) / (2 * a1); x2 = (-b1 - (float)Math.Sqrt(deta)) / (2 * a1); MessageBox.Show("Phương trình có nghiệm x1=" + x1 + " x2= " + x2); } else { x1 = -b1 / (2 * a1); MessageBox.Show("Phương trình có nghiệm kép x =" + x1); } } } } 2.7: Form – Kiểm tra loại số Ta có tất nút có nút kiểm tra số có phải số đặc biệt cần kiểm tra khơng:  Nút “Số phương” private void button1_Click(object sender, EventArgs e) { if (textkiemtra.Text == "") MessageBox.Show("Chưa nhập số kiểm tra!"); int a = Convert.ToInt32(textkiemtra.Text); int dem = 0; if( a >= ) { for (int i = 2; i 2) { for (int i = ; i i; j ) { if (M[j] < M[j - 1]) { int temp = M[j]; M[j] = M[j - 1]; M[j - 1] = temp; } } } }  Nút “Chèn trực tiếp” private void nutChenTrucTiep_Click(object sender, EventArgs e) { chentructiep(M); htMangNhap(M, label_htMangSapXep); } void chentructiep(int[] M) { // lưu vào vị trí cần chèn int pos = 0; // lưu trữ giá trị M[i] tránh bị ghi đè dời chỗ thành phần tử int x; // xem đoạn M[0] for (int i = 1; i < M.Length; i++) { pos ) x = M[i]; for (pos = i; (pos > 0) && (M[pos - 1] > x); { M[pos] = M[pos - 1]; } M[pos] = x;// chen x vao day } }  Nút “Chọn trực tiếp” private void nutChonTrucTiep_Click(object sender, EventArgs e) { Chontructiep(M); htMangNhap(M, label_htMangSapXep); } void Chontructiep(int[] M) { int min; for (int i = 0; i < M.Length - 1; i++) { = i; for (int j = i + 1; j < M.Length; j++) { if (M[j] < M[min]) = j; } if (min != i) { int temp = M[i]; M[i] = M[min]; M[min] = temp; } } }  Nút “ Đổi chỗ trực tiếp” private void nutDoiChoTrucTiep_Click(object sender, EventArgs e) { doichotructiep(M); htMangNhap(M, label_htMangSapXep); } void doichotructiep(int[] M) { int i, j; for (i = 0; i < M.Length - 1; i++) { for (j = i + 1; j < M.Length; j++) { if (M[j] < M[i]) { int temp = M[i]; M[i] = M[j]; M[j] = temp; } } } }  Nút “Tìm kiếm tuyến tính” private void nuttkTuyenTinh_Click(object sender, EventArgs e) { int x = int.Parse(text_TimKiem.Text); int KetQua = timkiemtuyentinh(M, x); if (KetQua == -1) { label_htTimKiem.Text = "Không tìm thấy giá trị " + x + " mảng"; } else { label_htTimKiem.Text = "Đã thấy " + x + " mảng ví trí " + (KetQua+1); } } int timkiemtuyentinh(int[] M, int x) { for (int i = 0; i < M.Length; i++) { if (M[i] == x) return i; } return -1; }  Nút “Tìm kiếm nhị phân” private void nuttkNhiPhan_Click(object sender, EventArgs e) { int x = int.Parse(text_TimKiem.Text); int KetQua = timkiemnhiphan(M, x); if (KetQua == -1) { label_htTimKiem.Text = "Khơng tìm thấy giá trị " + x + " mảng"; } else { label_htTimKiem.Text = "Đã thấy " + x + "trong mảng ví trí " + (KetQua+1); } } int timkiemnhiphan(int[] M, int x) { int left = 0, right = M.Length - 1; int mid; { mid = (left + right) / 2; if (x == M[mid]) return mid; else if (x < M[mid]) right = mid - 1; else left = mid + 1; } while (left

Ngày đăng: 22/11/2021, 08:28

Xem thêm:

w