Menu chính của chương trình được tổ chức như hình 1:
Việc hiển thị ra menu của chương trình và đọc vào lựa chọn của người dùng được thực hiện bởi hai hàm void inmenu(int choice) và int menu():
void inmenu(int choice) { if (o_choice==-1) { gotoxy(3, 10); cout<<"Cong viec:"; } SetColor(choice==1?7:0); gotoxy(5, 15);
cout<<"Cong hai da thuc.";
SetColor(choice==3?7:0); gotoxy(7, 15);
cout<<"Nhan hai da thuc."; SetColor(choice==4?7:0); gotoxy(8, 15);
cout<<"Chia hai da thuc."; SetColor(choice==5?7:0); gotoxy(9, 15);
cout<<"Tinh dao ham cua da thuc."; SetColor(choice==6?7:0);
gotoxy(10, 15);
cout<<"Tinh nguyen ham cua da thuc."; SetColor(choice==7?7:0);
gotoxy(11, 15);
cout<<"Tinh gia tri cua da thuc."; SetColor(choice==0?7:0); gotoxy(12, 15); cout<<"Thoat."; if (o_choice==-1) { SetColor(0); gotoxy(14, 10);
cout<<"Su lua chon cua ban:"; } SetColor(7); gotoxy(14, 31); cout<<choice; SetColor(0); o_choice=choice; } int menu() { system("cls"); o_choice=-1; int choice=1;
while (1) { inmenu(choice); char c=getch(); if (c==13) { system("cls"); return choice; } else if (c>='0' && c<='7') choice=c%48; else if (c==72) { if (choice==0) choice=7; else choice--; } else if (c==80) { if (choice==7) choice=0; else choice++; } Sleep(25); } }
Hàm void inmenu(int choice) dùng để hển thị menu ra ngoài màn hình với một con trỏ dùng để trỏ vào lựa chọn choice tương ứng của người dùng. o_choice
là biến dùng để lưu lại giá trị choice cũ.
dùng nhập từ bàn phím, nếu người dùng lựa chọn (nhấn phím Enter có mã 13) thì trả về sự lựa chọn choice hiện thời; nếu người dùng nhấn phím mũi tên (lên hoặc xuống có mã tương ứng là 72 và 80) thì tăng hay giảm giá trị choice tương ứng; nếu người dùng nhấn một phím số từ 0 đến 7 thì gán cho choice giá trị của số tương ứng được nhập; sau mỗi lần choice thay đổi thì gọi tới hàm void inmenu(int choice) để in menu ra màn hình.
CHƯƠNG IV: KẾT LUẬN 4.1.Tóm tắt kết quả nghiên cứu
Đa thức một biến là một khái niệm cơ bản và đã trở nên hết sức quen thuộc đối với mỗi chúng ta. Việc thực hiện các phép toán trên những đa thức một biến thông thường có ít phần tử và độ phức tạp thấp thì chúng ta hoàn toàn có thể thực hiện và kiểm tra tính đúng đắn một cách dễ dàng. Tuy nhiên, với những đa thức có nhiều phần tử và có độ phức tạp cao thì công việc này không hề dễ dàng và đòi hỏi có một công cụ hỗ trợ. Dưới sự hướng dẫn của ThS. Nguyễn Thị Xuân Đài, tôi đã thực hiện đề tài “Cài đặt lớp đa thức” nhằm định nghĩa một kiểu dữ liệu mới và đồng thời cho ra đời một chương trình thực hiện tất cả các phép toán thông dụng trên đa thức một biến.
Như đã nói trên, đề tài của tôi chỉ là tiêu biểu của một trong số rất nhiều những cách thức tiếp cận vấn đề “Cài đặt lớp đa thức” thực sự có hiệu quả, mang lại sự thuận tiện cho mọi người khi làm việc với đa thức một biến.
Tuy có sự hạn hẹp cả về mặt thời gian vả trình độ nhưng với đề tài này, tôi đã cố gắng hết sức để có thể hoàn thành các yêu cầu đặt ra, bao gồm:
- Xây dựng lớp phân số.
- Xây dựng lớp đơn thức.
- Tổ chức lưu trữ một đa thức một biến cụ thể.
- Chuẩn hóa đa thức theo đúng những quy tắc trong toán học.
- Xây dựng hàm tạo cho lớp.
- Xây dựng các toán tử cho lớp.
- Xây dựng hàm tính đạo hàm của một đa thức.
- Xây dựng hàm tính nguyên hàm của một đa thức.
- Xây dựng giao diện cho chương trình. 4.2.Đề xuất và hướng phát triển
Đề tài này có thể sử dụng làm tài liệu tham khảo phục vụ cho sinh viên ngành công nghệ thông tin học tập các môn học như: lập trình cấu trúc với C, cấu trúc dữ liệu và giải thuật,…
Đề tài này có thể được phát triển theo các hướng như sau:
- Xây dựng thêm các phép toán như tìm ước chung lớn nhất, bội chung nhỏ nhất của hai đa thức.
TÀI LIỆU THAM KHẢO
- Lê Minh Hoàng, Giải thuật & lập trình – Đại học sư phạm Hà Nội.