1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo đồ họa máy tính - Xây dựng phần mềm hỗ trợ học sinh cấp III học khảo sát hàm số

30 826 3
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Xây dựng phần mềm hỗ trợ học sinh cấp III học khảo sát hàm số
Tác giả Nhóm 2 – CĐ Tin 1 – K11
Người hướng dẫn PTS. Vũ Thị Minh Yến
Trường học Trường Đại học Công nghiệp Hà Nội
Chuyên ngành Công nghệ thông tin
Thể loại Bài tập lớn
Năm xuất bản Năm 2023
Thành phố Hà Nội
Định dạng
Số trang 30
Dung lượng 1,29 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Báo Cáo Đồ họa Máy tính Đề tài: Xây dựng phần mềm hỗ trợ học sinh cấp III học khảo sát hàm số

Trang 1

Bài tập lớn kết thúc môn:

ĐỒ HỌA MÁY TÍNH

Đề tài: Xây dựng phần mềm hỗ trợ học sinh cấp III

học khảo sát hàm số

Lời mở đầu 3

Phần I: Giới thiệu về phần mềm 4

Phần II: Chi tiết phần mềm 4

1) Khảo sát hàm số 4

2) Vẽ đồ thị hàm số 4

1 Tạo một giao diện 4

1.1)GroupBox: Chọn hàm 5

1.2)Sau khi chọn hàm ta có thể thực hiện các chức năng vẽ hoặc khảo sát.6 1.3) Chức năng vẽ: 12

2 Ngoài ra còn một số nội dung các hàm vẽ đồ thị: 19

2.1 Hàm nhập các hệ số: 19

2.2 Hàm vẽ trục tọa độ: 21

3 Hàm ẩn hiện số 22

4 Vẽ đường lưới 23

5 Hàm vẽ tiệm cận: 24

6 Hàm nhập giá trị tiếp điểm để vẽ tiếp tuyến: 25

7 Hàm vẽ tiếp tuyến: 26

8 Hàm PaintGraph (vẽ đồ thị chuẩn) 27

Phần III Một số biến, đối tượng sẽ dùng trong chương trình: 28

Tài liệu tham khảo 30

Tổng kết : 31

Trang 2

Lời mở đầu

Như chúng ta biết việc học tập của chúng ta ngày càng nâng cao theocấp độ Chúng ta phải tìm tòi và giải quyết tất cả những vấn đề khó khăngặp phải trong học tập đặc biệt là các bạn học sinh cấp III vì là học sinhcuối cấp nên việc học càng vất vả và khó khăn hơn với các môn học đểchuẩn bị cho thi tốt nghiệp và kì thi ĐH Môn toán là môn đòi hỏi tư duyphải logic, nhạy bén với các bài tập khó liên quan đến hình vẽ như cáchình không gian, các đồ thị hàm số… Nhưng khi bước vào thế kỉ XXIthời đại công nghiệp hóa hiện đại hóa Cùng với sự phát triển vượt bậccủa công nghệ thông tin và các phần mềm ứng dụng việc giúp đỡ các bạnhọc sinh học tập cũng như vui chơi ngày càng đơn giản hơn nhiều

Dưới sự hướng dẫn của cô giáo Vũ Thị Minh Yến chúng tôi đã xây

dựng một phần mềm giúp các bạn học sinh học tập môn khảo sát và vẽ

đồ thị trong toán học Đề tài nhóm tôi thực hiện là:: Xây dựng phần

mềm hỗ trợ học sinh cấp III học khảo sát hàm số.

Trang 3

Phần I: Giới thiệu về phần mềm

Phần mềm này hướng các bạn học sinh cấp III có thể khảo sát vàvẽ đồ thị của các hàm số theo chuẩn của Bộ Giáo Dục & ĐàoTạo Nhưchúng ta được biết cấp III các bạn học sinh được học khảo sát và vẽ đồthị của một số hàm số:

o Hàm số bậc 2

o Hàm số bậc 3

o Hàm trùng phương

o Hàm bậc nhất trên bậc nhất

o Hàm bậc hai trên bậc nhất

Ngoài ra còn có thể vẽ tiếp tuyến tại một điểm và tiệm cận củatừng hàm Giúp học sinh có thể dễ dàng giải quyết các bài toán khảosát ở một trong số những dạng thường gặp mà chúng tôi nêu ở trên.Các bạn có thể giải những bài toán với những hệ số lớn, có thể phóng

to, thu nhỏ hệ trục ở những cự li khác nhau, các bạn sẽ không phải bốidối khi đồ thị phải vẽ có tung độ, hoành độ quá lớn… vì trong phầnmềm của chúng tôi có đầy đủ các chức năng như: phóng to, thu nhỏ,lưu bài vẽ, tạo bài mới, ẩn hiện hệ số trục, ẩn hiện tiệm cận, đườnglưới, kéo hệ trục về bên phải, kéo hệ trục về bên trái, trung tâm…Giúp các bạn dễ hình dung hơn và dễ dàng giải đáp các bài toán liênquan đến đồ thị

Phần II: Chi tiết phần mềm

- Phần mềm gồm 2 chức năng chính:

1) Khảo sát hàm số

2) Vẽ đồ thị hàm số

- Giao diện được tạo trên visual studio với ngôn ngữ lập

trình C#.

1 Tạo một giao diện

Trang 5

public void initCobChoNham()

{

cob_chonham.Items.Add("Hàm số bậc hai");

cob_chonham.Items.Add("Hàm số bậc ba");

cob_chonham.Items.Add("Hàm trùng phương");

cob_chonham.Items.Add("Hàm bậc hai trên bậc nhất");

cob_chonham.Items.Add("Hàm bậc nhất trên bậc nhất");

Trang 6

Mã Code của chức năng Khảo sát là:

Trang 7

Mã code của chức năng Các bước khảo sát là:

privatevoid btlythuyet_Click(object sender, EventArgs e)

Trang 9

Mã code của chức năng Ví dụ minh họa là:

privatevoid button3_Click(object sender, EventArgs e)

Trang 10

Tương tự cho chức năng Bài tập:

Mã code của chức năng Bài tập:

privatevoid button2_Click(object sender, EventArgs e)

Trang 12

Mã code của chức năng vẽ đồ thị:

privatevoid vedothi()

{

if (dk == true)//Khi các điều kiện thỏa mãn

{

grb_chucnang.Enabled = true;

Pen pen = new Pen(Color.Magenta, 1);

min = -x0 / k - 1;//Giá trị min của trục hoành

max = x0 / k + 1;//Giá trị max của trục hoành

Trang 14

if (fx1 * fx2 > 0 && Math.Abs((int)(fx1 - fx2)) < k)

g.DrawLine(pen, x1, y1, x2, y2);

Trang 15

if (cob_chonham.Text == "Hàm bậc nhất trên bậc nhất")

if (fx1 * fx2 > 0 && Math.Abs((int)(fx1 - fx2)) < k)

g.DrawLine(pen, x1, y1, x2, y2);

Trang 16

Mã code của các chức năng trên là:

Trang 17

{

anhien3 = (!anhien3);

PaintGraph();

}

Trang 18

2 Ngoài ra còn một số nội dung các hàm vẽ đồ thị:

MessageBox.Show("Giá trị của a phải khác 0", "Chú ý",

MessageBox.Show("Giá trị của a phải khác 0", "Chú ý",

Trang 19

MessageBoxButtons.OK, MessageBoxIcon.Warning);

MessageBox.Show("Điều kiện a*d-b*c phải khác 0",

MessageBox.Show("Giá trị của a phải khác 0", "Chú ý",

MessageBox.Show("Giá trị của a phải khác 0", "Chú ý",

dk = false;

}

else

Trang 20

{

dk = true;

if (a * d == 0)

{

MessageBox.Show("Điều kiện a*d phải khác 0", "Chú

Pen pen = newPen(Color.Black, 2);

// Vẽ trục tung và trục hoành

g.DrawLine(pen, 0, y0, maxx, y0);

g.DrawLine(pen, x0, 0, x0, maxy);

Font f = newFont("Tahoma", 10);

Brush br = newSolidBrush(Color.Red);

//Vẽ biểu tượng O,X,Y,mũi tên của trục tung và trục hoành

g.DrawString("O", f, br, x0 - 15, y0);

g.DrawString("X", f, br, maxx - 15, y0);

g.DrawString("Y", f, br, x0 + 3, 1);

Brush br1 = newSolidBrush(Color.Black);

Font f1 = new Font("Tahoma", 13);

g.DrawString("^", f1, br1, x0 - 9, -5);

g.DrawString(">", f1, br1, maxx - 13, y0 - 12);

Pen pen_x = newPen(Color.Gray, 1);

int i;

Trang 21

//Vẽ các đường vạch điểm của các trục

for (i= x0 + k; i < maxx; i += k)

Pen pen_x = newPen(Color.Gray, 1);

Font f = newFont("Tahoma", 10);

Brush br = newSolidBrush(Color.Red);

Trang 23

5 Hàm vẽ tiệm cận:

void vetiemcan()

{

Pen pen = new Pen(Color.Red, 1);

if (cob_chonham.Text == "Hàm bậc nhất trên bậc nhất")

{

//Vẽ tiệm cận đứng

g.DrawLine(pen, x0 - (float)(k * d / c), 0, x0 - (float)(k * d / c), maxy);

//Vẽ tiệm cận ngang

g.DrawLine(pen, 0, (float)(y0 - (k * a / c)), maxx, (float)(y0 - (k *

a / c)));

//Hiện lable thông báo các đường tiệm cận

lbtiemcan.Text = "Tiệm cận đứng: x=" + (-d / c) + " Tiệm cận ngang: y=" + (a / c);

}

if (cob_chonham.Text == "Hàm bậc hai trên bậc nhất")

{

//Vẽ tiệm cận đứng

g.DrawLine(pen, (float)(x0 - (k * e / d)), 0, (float)(x0 - (k * e / d)),maxy);

Trang 24

a2 = a / d;//Tính hệ số a của tiệm cận xiên

b2 = (b - e * a2) / d;//Tính hệ số b của tiệm cận xiên

//Vẽ tiệm cận xiên

g.DrawLine(pen, x0 + k * min, y0 - (float)(k * (a2 * min + b2)), x0 + k * max, y0 - (float)(k * (a2 * max + b2)));

//Hiện lable thông báo các đường tiệm cận

if (a2 == 1) lbtiemcan.Text = "Tiệm cận đứng: x=" + (-e / d) + " Tiệm cận xiên: y=x+" + b2;

else lbtiemcan.Text = "Tiệm cận đứng: x=" + (-e / d) + " Tiệm cận xiên: y=" + a2 + "*x+" + b2;

}

}

6 Hàm nhập giá trị tiếp điểm để vẽ tiếp tuyến:

privatevoid nhapxt()

MessageBox.Show("Không được bỏ trống các giá trị",

MessageBox.Show("Giá trị nhập vào phải là số", "Chú ý",

tbtieptuyen.Text = "";

Trang 25

Pen pen = newPen(Color.Blue, 1);

lbtieptuyen.Location = newPoint(lbtiemcan.Location.X +

lbtieptuyen.Text = " Phương trình tiếp tuyến tại x = " +

xt + " là y=" + yt2 + "*x" + "+" + (-yt2 * xt + yt1);

g.DrawLine(pen, x0 + k * min, y0 - (float)(k * (yt2 * (min

- xt) + yt1)), x0 + k * max, y0 - (float)(k * (yt2 * (max - xt) + yt1))); lbtieptuyen.Text = " Phương trình tiếp tuyến tại x = " +

Trang 26

xt + " là y=" + yt2 + "*x" + "+" + (-yt2 * xt + yt1);

g.DrawLine(pen, x0 + k * min, y0 - (float)(k * (yt2 * (min

- xt) + yt1)), x0 + k * max, y0 - (float)(k * (yt2 * (max - xt) + yt1))); lbtieptuyen.Text = " Phương trình tiếp tuyến tại x = " +

xt + " là y=" + yt2 + "*x" + "+" + (-yt2 * xt + yt1);

g.DrawLine(pen, x0 + k * min, y0 - (float)(k * (yt2 * (min

- xt) + yt1)), x0 + k * max, y0 - (float)(k * (yt2 * (max - xt) + yt1))); lbtieptuyen.Text = " Phương trình tiếp tuyến tại x = " +

xt + " là y=" + yt2 + "*x" + "+" + (-yt2 * xt + yt1);

g.DrawLine(pen, x0 + k * min, y0 - (float)(k * (yt2 * (min

- xt) + yt1)), x0 + k * max, y0 - (float)(k * (yt2 * (max - xt) + yt1))); lbtieptuyen.Text = " Phương trình tiếp tuyến tại x = " +

xt + " là y=" + yt2 + "*x" + "+" + (-yt2 * xt + yt1);

Trang 27

PicPaint.Refresh();

vetructoado();

vedothi();

if (anhien1 == true) anhienso();

if (anhien2 == true) veduongluoi();

if (anhien3 == true) vetiemcan();

Để gọi các hàm vẽ đồ họa

t ToolTip Để tạo text ghi chú cho các button

a, b, c, d, e double Biến dùng để nhập các hệ số a,b,c,d,e

của hàm

maxx, maxy Int Giá trị chiều Width và Height của

picturemin,max Int Giá trị điểm min max trên trục hoànhx0, y0 Int Tọa độ của gốc tọa độ trên pictureboxX1,y1,x2,y2 Int Tọa độ điểm 1 và điểm 2 nằm trên đồ thị

hàm số

k Int Độ phóng của đồ thị (mặc định k=80)fx1, fx2 Double Giá trị của hàm số tại x1, x2

a2, b2 Double Giá trị hệ số đường tiệm cận xiên của

hàm bậc 2 trên bậc nhất Dạng y=a*x+bAnhien1,anhien2,

anhien3,anhien4,

dk

Bool Các điều kiện để cho phép thực hiện các

sự kiện

Anh,anh1 Bitmap Để load ảnh ra picturebox hàm, và

picturebox nội dung khảo sát

Trang 28

Bảng 2:

STT Các điều khiển

thông dụng

Ý nghĩa

1 ComboBox Dùng để trình bày danh sách phần tử là

chuỗi hay đối tượng là các giá trị và nhãn

có thể thay đổi (Trong phần mềm thì

ComboBox dùng để chọn hàn)

2 RadioButton Cho phép người dùng chọn một trong hai

giá trị true/ false hay yes/ no chỉ cho phép chọn một trong danh sách tùy chọn.( Trong

phần mềm chỉ được chọn khảo sát hoặc vẽ)

3 Picturebox có nhiệm vụ hiển thị hình ảnh (Trong phần

mềm dùng để hiển thị nội dung và để vẽ cáchàm số.)

4 Button Cho phép người sử dụng dùng chuột nhấn

vào điều khiển để thực hiện một công việc nào đó.( Trong phần mềm dùng để chọn các

chức năng như vẽ, lưu, tạo mới,phóng to , thu nhỏ, di chuyển đồ thị lên trên, xuống dưới, về trung tâm…)

5 Label Dùng để trình bày dữ liệu, chú giải cho các

nhập liệu khác.( Trong phần mềm dùng để hiển thị các hệ số a, b,c, d, e, x)

6 TextBox Dùng để nhập Dữ Liệu( Trong phần mềm

dùng để nhập hệ số hàm)

Trang 29

Tài liệu tham khảo

1 Giáo trình đồ họa máy tính_ Trường ĐHCN Hà Nội.

2 Giáo trình đồ họa máy tính_ Trường Học Viện Bưu Chính Viễn Thông.

3 Sách Giáo Khoa Đại số 12_Bộ Giáo Dục Đào Tạo.

4 TaiLieu.vn (Sách Giáo Khoa Đại số 12).

5 Lập trình WinForm với C#

6 Bài Giảng của Giáo viên bộ môn.

Trang 30

Tổng kết :

Việc thực hiện đề tài đã giúp nhóm chúng em hiểu biết thêm nhiềukiến thức mới đặc biệt là có thêm nhiều kiến thức cho môn Đồ Họa MáyTính Đây là bài tập thực tiễn giúp chúng em có thêm nhiều kinh nghiệmcho bản thân cũng như kỹ năng hoạt động nhóm

Trong quá trình tìm hiểu và hoàn thành đề tài nhóm 2 Chúng em xin

chân thành cảm ơn cô giáo - Th.S Vũ Minh Yến đã hướng dẫn và tạo điều kiện chúng em hoàn thành bài tập lớn “ĐỒ HỌA MÁY TÍNH” của

mình

Do trình độ và thời gian còn hạn chế bài tập lớn của chúng emkhông tránh khỏi những thiếu sót về tình thẩm mĩ cũng như các chứcnăng của phần mềm Chúng em rất mong nhận được sự góp ý kiến củathầy cô giáo và các bạn để một ngày nào đó không xa phần mềm củachúng em được hoàn thiện có thể đưa vào ứng dụng giúp các bạn họcsinh cấp III giải quyết được những bài toán khảo sát và vẽ đồ thị hàm sốphức tạp

Chúng em xin chân thành cảm ơn!

Hà nội, ngày 1 tháng 6 / 2011

Nhóm thực hiện

Nhóm 2 – CĐ Tin 1 – K11

Ngày đăng: 21/03/2014, 10:39

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Giáo trình đồ họa máy tính_ Trường ĐHCN Hà Nội Khác
2. Giáo trình đồ họa máy tính_ Trường Học Viện Bưu Chính Viễn Thông Khác
3. Sách Giáo Khoa Đại sô 12_Bộ Giáo Dục Đào Tạo Khác
4. TaiLieu.vn (Sách Giáo Khoa Đại sô 12) Khác
5. Lập trình WinForm với C# Khác
6. Bài Giảng của Giáo viên bộ môn Khác

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w