1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016

3 519 1

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 65,5 KB

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

Nội dung

Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016 Bài tập lớn CTDL GT bách khoa HCM Assignment 2015 2016

Trang 1

Bài Tập Lớn

Xử lý đa thức một biến

1 Giới thiệu

Trong bài tập lớn này, sinh viên sẽ được cung cấp một file chứa dữ liệu nhập, bao gồm các thông số cho biểu thức tính toán trên đa thức một biến Chương trình sẽ tính toán và in ra đa thức kết quả Sinh viên cũng sẽ được cung cấp chương trình mẫu đọc dữ liệu từ file nhập, tạo thành danh sách liên kết và xuất kết quả ra màn hình

2 Dữ liệu nhập

Dữ liệu nhập của chương trình được chứa trong file mang tên input.txt File này sẽ chứa các thông tin về một phép tính giữa hai đa thức F1 và F2 có dạng sau:

F 11 F 12 … F 1N O F 21 F 22 … F 2N

Trong đó

- Fij: Hệ số thứ j của đa thức Fi, là một số nguyên có giá trị từ -100 đến 100

- O: là một chữ cái biểu diễn cho toán tử Ý nghĩa của chữ cái có thể tham khảo

trong Bảng 1

Ví dụ với dữ liệu nhập 1 0 1 c 3 1 1 1 thì biểu thức cần tính toán sẽ là (x2 + 1) +

(3x3 + x2 + x + 1), kết quả sẽ là 3x3 + 2x2 + x + 2.

Lưu ý: trong số các toán tử sẽ có các toán tử một ngôi, trong trường hợp này F2 sẽ không có dữ liệu

3 Các toán tử tính toán

Bảng 1 mô tả các toán tử, ý nghĩa và các ví dụ tương ứng

Bảng 1- Ký tự đại diện cho các toán tử và ý nghĩa của chúng.

a keep_first Giữ lại đơn thức có hệ số mũ cao nhất

keep_first(3x3 + 2x2 + x + 2) = 3x3

b keep_last Giữ lại đơn thức có hệ số mũ thấp nhất

keep_last(3x3 + 2x2 + x + 2) = 2 keep_last(3x3 + 2x2) = 2x2

c,d,e,f +,-,*,\ Các phép tính cộng, trừ, nhân, chia đa thức Sinh viên có

Trang 2

thể lên Google để tìm hiểu về các phép toán này.

g max_co trả về giá trị của hệ số lớn nhất

max_co(3x3 + 2x2 + x + 2) = 3 max_co(x2 + x + 2) = 2 max_co(5x2 +5x + 2) = 5

Chú ý trường hợp khuyết hệ số:

Ví dụ: -2x 2 - 5 sẽ ra kết quả -2 (chứ không phải là 0)

h min_co trả về giá trị của hệ số nhỏ nhất

Tương tự cho trường hợp khuyết hệ số như max_co:

Ví dụ: 5x 4 + 3x 2 + 1 sẽ ra kết quả là 1 (chứ không phải

là 0)

i power Hàm F 2 sẽ luôn là một hằng số không âm.

kết quả sẽ là (F 1 )F

2

Dữ liệu nhập 1 -1 i 2 sẽ tương ứng với (x-1)2 = x 2 - 2x + 1

k đạo hàm Tính đạo hàm của hàm số

Ví dụ: Dữ liệu nhập 1 2 1 k thì kết quả là 2x + 2

4 Mã khởi động

Sinh viên download file assigment.zip từ trang Web của môn học Khi giải nén

file này, sẽ có được các file sau:

Assignmen.doc File mô tả nội dung bài tập lớn

Chương trình chính có dạng như sau:

void main() {

PolyList list1, list2;

char op;

char rest[20000];

readFile("input.txt",&list1,&list2, &op, rest);

list1.calculate(&list2, op,rest);

list1.printOut();

}

Hàm readFile() sẽ đọc nội dung file Input, xây dựng hai danh sách liên kết list1

và list2, toán tử cần tính toán sẽ chứa trong ký tự op Các nội dung còn lại (xem thêm

phần bonus) sẽ được chứa trong chuỗi rest.

Ví dụ:

Khi file input là 2 0 1 c 3 1 1 1 thì list1 tương ứng với (2,0,1), list2 tương ứng với (3,1,1,1), op là ‘c’ và rest là chuỗi rỗng.

Khi file input là 1 2 1 k thì list1 tương ứng với (1,1,1), list2 là rỗng, op là ‘k’ và

rest là chuỗi rỗng

Khi file input là 1 2 1 k c 3 1 thì list1 tương ứng với (1,2,1), list2 là rỗng, op là ‘k’

và rest là “c 3 1” Biểu thức tương ứng sẽ là (x2 + 2x +1)’ + 3x + 1 Kết quả là

Trang 3

5x+3 (đây là trường hợp bonus – xem thêm phần 5).

Hàm printOut sẽ xuất kết quả tính toán ra màn hình Sinh viên KHÔNG thay đổi nội

dung hàm này Lời giải cho trường hợp a đã được cung cấp sẵn để sinh viên tham khảo

5 Trường hợp Bonus

Trong trường hợp bonus, biểu thức cần tính sẽ chứa nhiều hơn một toán tử Ví dụ: khi file

input là 1 2 i 0 c 3 1 * 1 0 thì biểu thức tương ứng sẽ là (x + 2)0 + (3x + 1) * x Các toán tử không có độ ưu tiên, sẽ lần lượt được tính từ trái qua phải Ví dụ với biểu thức trên, (x +

2)0 sẽ được tính trước, kết quả là 1, sau đó sẽ tính tiếp 1+(3x+1), kết quả là 3x+2 Cuối cùng sẽ tính (3x+2)*x, kết quả là 3x2 + 2x.

6 Nộp bài

Khi nộp bài, sinh viên sử dụng account đã được cấp phát để nộp bài qua mạng Sinh viên

chỉ nộp đúng một file Assignment.cpp File được nộp phải là file chương trình gốc, SINH

VIÊN KHÔNG ĐƯỢC NÉN FILE KHI NỘP BÀI Sinh viên phải kiểm tra chương

trình của mình trên MS 2010 trước khi nộp.

Thời hạn chót để nộp bài là 17h00 ngày thứ 2, 11/01/2016 Sinh viên phải dùng account

trên hệ thống Sakai để nộp bài KHÔNG nhận bài được gửi qua mail hoặc bất kỳ hình thức nào khác Bài nộp trễ sẽ KHÔNG được nhận

7 Xử lý gian lận

Bài tập lớn phải được sinh viên TỰ LÀM Sinh viên sẽ bị coi là gian lận nếu:

- Có sự giống nhau bất thường giữa mã nguồn của các bài nộp Trong trường hợp này,

TẤT CẢ các bài nộp đều bị coi là gian lận Do vậy sinh viên phải bảo vệ mã nguồn bài

tập lớn của mình

- Sinh viên không hiểu mã nguồn do chính mình viết, trừ những phần mã được cung cấp sẵn trong chương trình khởi tạo Sinh viên có thể tham khảo từ bất kỳ nguồn tài liệu nào, tuy nhiên phải đảm bảo rằng mình hiểu rõ ý nghĩa của tất cả những dòng lệnh mà mình viết Trong trường hợp không hiểu rõ mã nguồn của nơi mình tham khảo, sinh viên được

đặc biệt cảnh báo là KHÔNG ĐƯỢC sử dụng mã nguồn này; thay vào đó nên sử dụng

những gì đã được học để viết chương trình

Trong trường hợp bị kết luận là gian lận, sinh viên sẽ bị điểm 0 cho bài tập lớn

KHÔNG CHẤP NHẬN BẤT KỲ GIẢI THÍCH NÀO VÀ KHÔNG CÓ BẤT KỲ NGOẠI LỆ NÀO!

Ngày đăng: 20/06/2016, 21:56

HÌNH ẢNH LIÊN QUAN

Bảng 1 mô tả các toán tử, ý nghĩa và các ví dụ tương ứng - Bài tập lớn CTDL  GT  bách khoa HCM Assignment   2015 2016
Bảng 1 mô tả các toán tử, ý nghĩa và các ví dụ tương ứng (Trang 1)

TỪ KHÓA LIÊN QUAN

w