Tải bản đầy đủ (.doc) (73 trang)

tron thu + toan hinh cai bien DOC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (649.7 KB, 73 trang )

Đề tài thực tập cơ sở

NM HC :2007-2008
M :029

CU 1:
1:Khái niệm thuật ngữ trộn thư
2:Cách trộn thư
3:trôn

theo

các

cách

envelopes

,

lable,direotories,and

e_mail messages
4:trộn với các ngoại lệ
5:trộn với những bản ghi được chọn
CÂU 2:
thuật tốn đơn hình cải biên :
1:thuật tốn đơn hình cải biên và các hạn chế , cho vi

dụ


2:nêu thuật toán đơn hình cải biên , cho ví dụ
3: cài đặt thuật tốn
CÂU 3:
Tìm hiểu BIOS
1: các loại ROM-BIOS của các hang thường gặp
2:trình bày tất cả các thiết lập BIOS
3: tương thích giữa Main Board và ROM –BIOS , chip Set…
4:tìm hiểu các mã lỗi của máy IBM và tương thích qua hệ thống tiếng
Bip .
CÂU 4:
Từ điểm
Cho tệp văn bản trong đó có các từ,các dấu phân cách từ: dấu cách,
dấu phẩy, dấu chấm, dấu chấm phẩy, dấu hai chấm, dấu than, dấu
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

1


Đề tài thực tập cơ sở

hi.Mi t bt u bng chữ

cái ‘A’..’Z’(không phân biệt chữ hoa chữ

thường )
Yêu cầu
1.viết thủ tục đọc các từ trong tệp văn bản và lưu trữ vào mảng các
danh sách lien kết :

Var:
Tudiem :array[‘A’..’Z’] of danhsach;
Type
Danhsach=^Phantu;
Phantu=Record
Tu:String[15];
Tiep:Danhsach;
End;
Mỗi danh sách lien kết trong từ điểm xếp theo thứ tự tăng và các từ khoá
là khác nhau .
2.viết thủ tục hiển thị các từ ra màn hinh theo thứ tự tăng
3.vết thử tục bổ sung từ mới bằng cách đọc từ bán phím và tim nó trong
từ điểm.
-nếu thấy , thì hiển thị thong báo ‘Đã có’
-nếu khơng , chèn vào vị trí thích hợp
4.viết Menu chương trình để :
- nhập them từ bằng cách đọc nội dung các tệp văn bản bổ sung vào
danh sách.
-Hiển thị các từ ra màn hình .
-Tìm kiếm từ nhập vào từ bàn phím có trog danh sách hay khơng ?
-Ghi dữ liệu từ danh sách vào tệp văn bản.
Yêu cầu báo cáo
1. ngôn ngữ cài đặt : PASCAL, C hoặc C++.
2. Báo cáo:
- Đề bài tốn
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

2



Đề tài thực tập cơ sở

- Mụ t thut toỏn
- Mơ tả các modul thiết kế bài tốn
3. Chương trình.

THẦY GIÁO HƯỚNG DẪN :
NHÓM SINH VIÊN THỰC HIỆN:
1.DƯƠNG THỊ THẮNG
2.PHẠM THỊ DIỆP
3.CAO VĂN ANH
4.NGUYỄN QUANG VŨ

GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

3


Đề tài thực tập cơ sở

GVHD: Trn Vn Cnh

NHểM THC HIỆN: Nhóm lớp 45E5- CNTT

4



Đề tài thực tập cơ sở

PHN I: TRN TH
Yờu cu:
1:khỏi niện thuật ngữ trộn thư
2: cách trộn thư
3:trộn theo các cách envelopes , lables , directories, and e_mail
messages
4: trộn với các ngoại lệ
5: trộn với những bản ghi được chọn
I.1: Khái niệm thuật ngữ trộn thư
Trong trình soạn thảo văn bản MS Word tích hợp sãn cơng cụ gọi là
Mail Merge ( trộn thư ), cho phép bạn tạo những văn bản cùng nội dung
để gởi đến nhiều người khác nhau.
“Trộn thư“ là một điều mà bao trùm các thư theo mẫu ( cả giấy và
thư điện tử ), các bưu thiếp, các nhãn địa chỉ, các phong bì thư - mọi tài
liệu đơn nhất mà bạn muốn gửi đi cho nhiều người khác nhau. Một khi
bạn có một cơ sở dữ liệu các địa chỉ liên hệ thì bạn có thể sử dụng điều
này để tự động hóa tất cả các dạng tác vụ tự động này, như việc gửi đi
các nhắc nhở với khách hàng bằng các báo giá đã quá hạn, các thong
báo về sản phẩm, các thiệp Noel, và bất kể thứ gì bạn có.
2. Cách trộn thư:
a. Các bước thực hiện:
Kết quả của việc sử dụng công cụ Mail Merge, tức là trộn thư, là bạn
sẽ in ra được những bức thư có cùng nội dung nhưng có tên và địa chỉ
người nhận khác nhau. Các bước chính để thực hiện cơng việc trơn thư
sử

dụng


MS

Word

bao

gồm:

- Tạo tập tin dữ liệu (Data Document): là 1 bảng chừa danh sách các
người

nhận.

- Tạo tập tin chính (Main Document) chứa nội dung của thư mời.
- Thực hiện trộn thư với một danh sách người nhận.
b. Cách trộn thư:
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

5


Đề tài thực tập cơ sở

- To tp tin d liệu (Data Document):
+ Đầu tiên chúng ta tạo một tập tin dữ liệu – tập tin này thường là
một tập tin văn bản dạng Word chứa một Table, hoặc một tập tin dạng
Excel.

+ Đây là 1 bảng chứa danh sách các người được gửi được tạo trong
Word. Trong từng dòng là thông tin của 1 người và trong mỗi cột là 1
thuộc tính liên quan đến người được gửi. Thường là một Table trong
Word hoặc 1 bảng tính Excel. Dịng tiêu đề của bảng phải ở dòng đầu
tiên

trong

tập

tin

này.

Từ menu Table – Insert – Table, hiện hộp thoại Insert table. Trong
hộp

thoại:

Number of Columns : nhập số cột
Number of Rows: nhập số dòng
Bấm nút OK sẽ hiện bảng với số dòng và cột đã khai báo.
Trong table nhập danh sách khách mời với thơng tin của mỗi người
trong 1 dịng. Nên nhập dòng tiêu đề trong hàng đầu tiên của tập tin.
- Tạo tập tin chính (Main Document)
Tiếp theo, các bạn soạn nội dung thư mời hay một văn bản cần gửi
cho nhiều người. Các dịng người nhận (Ơng, Bà) và nơi nhận (Đơn vị)
được để trống. Những phần để trống này sẽ được tự động điền vào khi
chúng ta thực hiện bước tiếp theo là trộn thư mời.
c. Các bước trộn thư:

Chúng ta đã chuẩn bị xong danh sách người nhận và nội dung thư
mời, cơng việc cịn lại là phối hợp 2 nội dung này với nhau để có thể tự
động tạo ra các văn bản thư mời có phần địa chỉ người nhận khác nhau.
- Bước 1:
+ Chỉ ra tập tin chính (Main Document)
+ Mở tập tin chính.
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

6


Đề tài thực tập cơ sở

+ Cho hin thanh cụng cụ trộn thư (Mail Merge Toolbar): Nhắp phải
vào thanh menu, chọn Mail Merge để hiện Mail Merge Toolbar.
+ Trên Mail Merge Toolbar, nhắp nút Main document setup chọn kiểu
của tập tin chính là Letters để in mỗi thư trong 1 trang (hoặc chọn
Directory để in các thư nối tiếp nhau, cách này có thể in nhiều thư trong
1 trang nếu nội dung thư không nhiều). Chọn OK.
- Bước 2: Chỉ ra tập tin dữ liệu (Data Document)
Trên Mail Merge Toolbar, nhắp nút Open data source, trong cửa sổ
Select Data Source và chọn tập tin dữ liệu đã tạo ở bước 1 (chọn ổ đĩa,
thư mục theo đường dẫn đễn thư mục chứa tập tin rồi chọn tập tin).
- Bước 3: Chèn tiêu đề cột vào văn bản chính
+ Trong cửa sổ văn bản chính: di chuyển điểm chèn đến vị trí sẽ
chèn

dữ


liệu.

+ Trên Mail Merge Toolbar, nhắp nút Insert Merge Fields. Trong cửa
sổ Insert Merge Field, hiện danh sách các tiêu đề của từng cột trong
bảng của tập tin dữ liệu.
-> Chọn tiêu đề muốn điền vào vị trí đã chọn trong tập tin chính. Bấm
nút Insert để chèn. Sau đó, bấm nút Close đóng cửa sổ Insert Merge
Field.
-> Di chuyển điểm chèn đến vị trí khác và tiếp tục thực hiện lại bước
trên để chèn các tiêu đề tại vị trí đã chọn trong văn bản chính theo yêu
cầu.
+Trộn

dữ

liệu

với

văn

bản

chính

+ Sau khi điền xong các Field vào tập tin chính, Trên Mail Merge
Toolbar, nhắp nút Merge to New Document. Hộp thoại Merge to New
Document


hiện

ra

chọn

:
-> All: chọn tất cả các dòng dữ liệu trong tập tin dữ liệu.

-> Current record : chỉ chọn dịng hiện hành (có số thứ tự trên Mail
Merge
GVHD: Trần Văn Cảnh

Toolbar).
NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

7


Đề tài thực tập cơ sở

-> FromTo: chn t s dịng trong ơ From đến số dịng trong ơ To.
Ghi chú: nhắp nút Merge to Print trên Mail Merge Toolbar, dữ liệu đã
trộn

sẽ

được

in.


I.3: Trộn theo cách envelopes, labels,directories,and e_mail messages
3 .Tạo nhÃn cho bì th

GVHD: Trn Vn Cnh

NHểM THC HIN: Nhóm lớp 45E5- CNTT

8


Đề tài thực tập cơ sở

VI MICROSOFT WORD, BN Cể THỂ IN HỌ
TÊN VÀ ĐỊA CHỈ CỦA MÌNH LÊN HÀNG LOẠT “NHÃN
TỰ DÁN” ĐƯỢC GẮN TRÊN CÙNG MỘT TỜ (LOẠI NHÃN CĨ SẴN
KEO PHÍA SAU,DÙNG ĐỂ DÁN LÊN BÌ THƯ HOẶC VA-LI). BẠN CŨNG
CÓ THỂ IN NHIỀU NHÃN LÊN GIẤY THƯỜNG RỒI CẮT RỜI THÀNH
TỪNG CÁI. NẾU TA IN VÀO NHÃN HÌNH GÌ ĐĨ “TÊU TẾU”, THÊM
“HOA HỊE HOA SĨI” HOẶC TRANH THỦ “CHẠY” MỘT DÒNG CHÚC
MỪNG THẬT NHỘN CHẲNG HẠN, HẲN NGƯỜI NHẬN THƯ VỪA
CẦM ĐÃ THẤY KHOÁI!
Trước hết, bạn cần chuẩn bị nội dung
nhãn. Nếu đang “ở trên mạng”, bạn dễ
dàng tìm được nhiều hình vui vui để đưa
vào nhãn.
Bạn hãy chọn New Blank Document rồi chọn Insert > Picture > Clip
Art.
Trên bảng tác vụ Insert Clip Art vừa hiện ra, bạn có thể gõ cartoon
trong ơ Search text và bấm Search để tìm

những hình ngộ nghĩnh. Trong cả lơ hình do
Word bày ra trên bảng Insert Clip Art, nếu thích
cái nào, bạn chỉ việc “nắm lấy” nó, kéo vào
trang in cịn trắng tinh của mình.
Để có thể ghi họ tên và địa chỉ bên phải
hình, bạn bấm-phải vào hình, chọn Format Picture. Trên thẻ Layout của
hộp thoại Format Picture,bạn chọn Square, bật ô duyệt Left ở phần
Horizontal alignment rồi bấm OK.
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

9


Đề tài thực tập cơ sở

Cha ht, ta nờn cho hiển thị rõ ràng khung văn bản bên phải hình
cho tiện thao tác. Bạn chọn Tools >Options. Trên thẻ View của hộp thoại
Options, bạn tìm đến phần Print and Layout
options và bật ơ duyệt Text boundaries ở
đó. Khi thấy khung văn bản với đường biên
“chấm chấm”, bạn bấm vào khung, ghi họ tên và địa chỉ (nên chăng, bạn
bỏ dòng đầu bằng cách ấn Shift+Enter để không in quá sát biên trên của
nhãn). Bạn tùy ý định dạng họ tên của mình (chọn phơng chữ, cỡ chữ)
sao cho... dễ thương.
Trước khi qua bước kế, nếu có một cụm từ đang được chọn (được
“bôi đen” để định dạng), bạn bấm đâu đó trong khung văn bản để thơi
chọn.
Giờ là lúc ta dùng đến “công nghệ hiện đại” của Word. Bạn chọn

Tools > Letters and Mailing > Envelopes and Labels. Trên thẻ Labels của
hộp thoại Envelopes and Labels, bạn thấy họ tên và địa chỉ của mình tự
động “nhảy” vào khung Address. Bạn bấm Options để khai báo với Word
loại tờ “nhãn tự dán” mà bạn có.
Trên hộp thoại Label Options, bạn chọn Dot matrix ở phần Printer
information nếu bạn dùng máy in kim. Nếu may mắn dùng máy in laser
hoặc máy in phun, bạn giữ nguyên lựa chọn Laser and ink jet. Nếu may
mắn hơn nữa, bạn sẽ tìm thấy số hiệu loại giấy nhãn “tự dán” của mình
trong danh sách Productnumber.
Có lẽ bạn đừng quan tâm đến danh sách đó và chọn ngay New
Label để chủ động mô tả cho Word biết loại giấy bạn dùng. Thơng qua
hình ảnh trên hộp thoại New Custom, Word hướng dẫn rất rõ ràng ý
nghĩa của từng mục phải khai báo.
GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

10


Đề tài thực tập cơ sở

Bn hóy dựng thc k để lấy các số đo cần thiết trên tờ “nhãn tự
dán”. Bạn đừng quên chọn đúng khổ giấy trong ô Page Size và đặt tên
cho loại nhãn “đời mới” của mình trong ơ Label name. Trong trường hợp
dùng giấy thường, có lẽ bạn phải vạch nhiều đường trên giấy để xem với
kích cỡ nhãn cần thiết, ta có thể in bao nhiêu nhãn trên một tờ. Nếu bạn
quy định số nhãn trên một hàng (Number across) hoặc trên một cột
(Number down) không hợp lý, Word sẽ “cằn nhằn” ngay khi ta bấm OK.
Sau khi bấm OK và không bị Word “trả hồ sơ”, trở về với hộp thoại

Label Options, bạn lại bấm OK. Trên hộp thoại Envelopes and Labels,
bạn chọn New Document. Word sẽ tạo văn bản mới trong đó “bày biện”
hàng loạt nhãn đúng yêu cầu của bạn trên một bảng. Mỗi nhãn có đầy
đủ họ tên, địa chỉ cùng hình ảnh ở bên trái các dịng họ tên và địa chỉ mà
bạn đã tạo ra lúc đầu. Bạn nhớ, các đường biên “chấm chấm” sẽ không
xuất hiện trên giấy khi in. Nếu làm nhãn trên giấy thường, bạn nên tạo
các đường biên rõ ràng cho dễ cắt. Muốn vậy, bạn chọn tồn bảng (bấm
vào ở góc trên, bên trái của bảng), chọn Outside Border trên thanh công
cụ rồi chn All Borders
4. Trn vi những bản ghi đợc chọn
Cú 1 chức năng trong Word rất hay có lẽ là đáp ứng 1 số cơng việc
mà ta cần đó là chức năng trộn thư (mail merge).
Ví du : ta có 1 bảng danh sách học sinh( hay khách hàng) trong 1 table
như

hình

dưới

:

và ta có 1 thư mời (hay đơn , v.v…) như hình sau :

GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

11



Đề tài thực tập cơ sở

Nu chỳng ta c ngi mà nhập vào tên của từng người vào giấy mời
nếu mà danh sách có đến hàng trăm người thì hỡi ôi tốn rất nhiều thời
gian và 1 cách dùng tốt nhất đó là sử dụng chức năng mail merge trong
Word.
Chúng ta bắt đầu nào:
- Bước 1 :
Chú ý : Không mở file source.doc (có nghĩa là file đang đóng) nên ghi
tiêu đề vì dụ như ho va ten là ko dau để sau này dễ nhận thấy.
+ Mở file giaymoi.doc chúng ta đang ở file này và trên menu có mục
“Tool” chọn “Mail Merge” sẽ xuất hiện bảng như sau :

GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

12


Đề tài thực tập cơ sở

+ Chn nỳt Create - chọn Form letter sẽ xuất hiện hình sau :

Chọn “active Window” .
- Bước 2 : Xác định chọn file nguồn source.doc, chọn nút source –
Get data – open data source sẽ xuất hiện hình như sau:

GVHD: Trần Văn Cảnh


NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

13


Đề tài thực tập cơ sở

+ Chn file source.doc( chỳ ý là bạn tìm đến source mà bạn lưu tại
thư mục nào) chọn open – edit main document .
- Bước 3 : Xuất hiện hình như sau :

bây giờ chúng ta chèn nội dung cần thiết như họ và tên, ……
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

14


Đề tài thực tập cơ sở

+ con tr chut ngay dòng họ và tên và đưa chuột lên dòng : “ và
chọn field tương ứng, tương tự bạn chọn các field khác chọ giấy mời.
Bạn sẽ thấy hình như thế này là ok :

- Bước 4 : Chọn nút merge trên thanh cơng cụ như ở hình trên hay
vào menu Tool – mail merge – merge. sẽ có kết qu nh th ny :

5. Trn vi các ngoại lệ
Tớnh năng trộn thư (Mail Merger) trong Word sẽ cho phép in dữ liệu

dạng một bảng lương hoặc sổ địa chỉ trong Excel trên một trang dữ liệu
được

trình

bày

trong

Word.

Lấy ví dụ, chúng ta có một bảng lương trong Excel và muốn in thành
các phiếu lương trong Word. Công việc được tiến hành như sau:
- Phần 1. Lập bảng và nhập dữ liệu trong Excel, lưu lại và đặt cho nó
một cái tên nào đó (Ví dụ Bang Luong T11-2007) rồi đóng Excel.

GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

15


Đề tài thực tập cơ sở

Mu Bng Lng (Nờn dựng Unicode)
- Phần 2. Tạo mẫu và nhúng dữ liệu vào trong Word.
+ Bước 1. Tạo mẫu phiếu lương trong Word với đầy đủ thông tin cần
in.


( Mẫu Phiếu Lương )
+ Bước 2. Chọn lệnh Mailings/Select Recipients/Use Existing List:
lấy dữ liệu từ một nguồn có sẵn
+ Bước 3. Mở nơi chứa bảng dữ liệu, chọn tên bảng dữ liệu (Bang
Luong T11-2007) rồi chọn Open. Sau đó máy sẽ yêu cầu chọn Sheet dữ
liệu cần lấy trong file Excel mà người dùng vừa chọn. Mặc định máy sẽ
chọn sheet đầu tiên.
+ Bước 4. Nhúng dữ liệu vào mẫu:

GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

16


Đề tài thực tập cơ sở

-> Kớch chut vo v trí cần liên kết dữ liệu (Họ và tên) rồi chọn
Mailings/Insert Merge Field rồi chọn tên trường tương ứng với chỗ cần
liên kết (Họ và tên)
-> Thao tác lần lượt cho đến hết các trường
+ Bước 5. Kiểm tra kết quả bằng cách bấm chuột vào nút Preview
Results
+ Bước 6. Kết thúc.
-> Chọn lệnh Mailings/Finish & Merge/Print Documents. Lúc này
người dùng có thể lựa chọn in tất cả các bản ghi hoặc chỉ in một số bản
ghi theo số thứ tự được khai báo.
-> Nếu không in ra luôn mà chỉ xuất thành từng phiếu lương để lưu
lại thì chọn lệnh Mailings/Finish & Merge/Edit Individual Documents


GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

17


Đề tài thực tập cơ sở

PHN II: THUT TON N HÌNH CẢI BIÊN

u cầu:
1. Bai toan thuc te
2. Thuật tốn đơn hình và các hạn chế , cho ví dụ
3. Nêu thuật tốn đơn hình cải biên , cho ví dụ
4. Cài đặt thuật tốn
1. Thuật tốn đơn hình, hạn chế, cho ví dụ.
1.1. Ý tưởng của thuật tốn đơn hình:
Xuất phát từ phương án cực biên X0 nào đó. Kiểm tra X0 có tối
ưu khơng?
- Nếu X0 tối ưu thì dừng.
- Nếu chưa, tìm hướng giảm tư X0, xây dựng phương án cực
biên mới X1 tốt hơn X0.
Qúa trình tiếp tục như vậy, ta được dãy các phương án cực biên
tốt dần X0, X1, X2,…, Xk. Sau hữu hạn bước lặp ta được phương án
tối ưu hoặc phát hiện ra bài tốn vơ nghiệm. Đó là nội dung của quá
trình xây dựng dãy các phương án cực biên tốt dần, cịn gọi là
phương pháp đơn hình.
Để thuận tiện cho việc trình bày các kết quả lý thuyết cũng như

thuật tốn quy hoạch tuyến tính, người ta thương sử dụng hai dạng
riêng biệt của bài tốn QHTT, đó là dạng chính tắc và dạng chuẩn.
1.2.

Thuật tốn đơn hình:
Bước 0: Chọn cở sở và phương án cực biên xuất phát X =
( xi ), tập chỉ số cơ sở j, Cj.
Bước 1: Kiểm tra Δj ≤ 0?
Nếu đúng→X là phương án tối ưu.
Nếu sai, chuyển sang bước 2.

GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

18


Đề tài thực tập cơ sở

Bc 2: Kim tra tn tại Δk >0 mà với mọi xik ≤ 0?
Nếu đúng, bài tốn khơng có phương án tối ưu
Nếu sai, chuyển sang bước 3.
Bước 3: Tìm max
Δj =Δp=> Δpvào cơ sở
∆J > 0

min
x JP >0


xq
xJ
=
=> Aq ra cơ sở
x JP x pq

Bước 4: Xây dựng phương án cực biên X́= ( xj́ )
Theo quy tắc X:=X́ trở lại bước 1.
1.3. Ví dụ:
Min (x1 – x2 + x3 + x4 +x5 – x6)
x1
ĐK

+ x4 + 6x6 = 9

3x1 + x2 – x3
x1

+ 2x6 = 2

+ x3

=2

xj ≥ 0, j=1,6
Giải:
Ma trận đơn vị E=(A4, A2, A5) => J=(4,2,5)
 x4 = 9 , x2 =2, x5 = 6, x1= x3= x6=0
 X=(0,2,0,9,6,0) là phương án cực biên xuất phát.
C1 =C3 =C4 =C5 = 1,C2= C6 = -1.

Lập bảng đơn hình:
Bảng
I

II

1

1
A1
1

-1
A2
0

1
A3
0

1
A4
1

1
A5
0

-1
A6

6

2

-1

3

1

-4

0

0

2

A5

6

1

A4

3

1


1
-2
-8

0
0
-3

0
4
12

0
0
1

1
0
0

2
7
0

A6

1

-1


3/2

1/2

-2

0

0

1

Cơ sở

Xj

cJ

A4

9

A2

GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

19



Đề tài thực tập cơ sở

A5

4

1

-2
25/2

-1

-6

0

1

0

-7/2

19

0

0


0

Ti bng I:
3 =5>0, 6= 7>0
 X=(0,2,0,9,6,0) không phải là phương án tối ưu.
Tại bảng II:
∃Δ3=19>0
 X=(0,0,0,3,4,1) không phải là phương án tối ưu
1.4. Hạn chế:
 Phương pháp đơn hình giải bài tốn tìm Min và chỉ xét các đại
lượng có dấu dương (+).
 Số phương án cực biên là hữu hạn nên có thể đến một lúc
nào, xoay vòng trở lại các phương án cực biên đã xét. Khi đó
chu trình này sẽ lặp đi lặp lại vô hạn lần nếu như các quy tắc
chọn dòng xoay và cột xoay là cố định.
 Người ta đã đưa ra những ví dụ chứng tỏ khả năng xoay vịng
này, thuật tốn khơng kết thúc hữu hạn.
2. Nêu thuật tốn đơn hình cải biên và cho ví dụ.
2.1. Thuật tốn đơn hình cải biên.
Bước 0:
Chọn cơ sở đơn vị, xác định



phương án cực biên X0. Ghi ma trận a.
Lập bảng, xác lập ma trận ß -1 =


B-1


0
C*B-1 0

trên bảng.
 Tính Δj với mọi Aj ngồi cơ sở theo quy tắc đã nêu.
GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

20


Đề tài thực tập cơ sở

Bc 1: Kim tra, nu Δj ≤0, th ì X0 tối ưu.
Ngược laị, sang bước 2.
Bước 2: Với Δj > 0, tính χj theo quy tắc đã nêu.
Nếu Δk>0 và mọi xij ≤0, thì bài tốn khơng có
nghiệm.
Ngược lại chuyển sang bước 3.
Bước 3: Tính ∆k= max∆j, với ∆j>0 ghi χk vào cột

tương

ứng.
Bước

λ0 = min
xik >0


4:

Tìm

xℓk

theo

cơng

thức

λ0=min

xi
x
= l
xik xlk

Bước 5: Lập bảng X1 bằng việc biến đổi trên cột X và ma trận
B-1 như đã làm trong bảng đơn hình và tính hàng m+1.
Bước 6: Gán X0:= X1. Trở lại bước 1
2.2. Ví dụ:
 Giải bài tốn sau đây bằng phương pháp đơn
hình cải biên
Min (f= x1 – x2 + x3 + x4 + x5 – x6)
x1
Với điều kiện

+x4


3x1 + x2 - 4x3
x1

+6x6 = 9
+ 2x6= 2

+ 2x3 + x5 + 2x6 = 6
x1,x2,x3,x4,x5,x6≥0

Chọn cơ sở liên kết A4, A2, A5 là các vectơ đơn vị nên ta


xij=aij và

phương

án

cực

biên

xuất

phát

X=(0,2,0,9,6), cùng với bảng đơn hình cải biên. Ta có
ma trận
1

GVHD: Trần Văn Cảnh

0

0

1

0 1 6

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

21


Đề tài thực tập cơ sở

a=

3
1
-1

GVHD: Trn Vn Cnh

1 -4
0

2


0
0

0 2 0
1 2 0

1 -1 -1 -1 1 1

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

22


Đề tài thực tập cơ sở

Ta cú bng:
I

II

III

Ai ci
A4 1

xi
9

Bi
1


0

0

A2 -1

2

0

1

A5 1

6

0

0

χk
6

Δj
J

1

3


6

0

0

2

Δj

–2

5

7

0

1

0

2

13 1

–1

1


1

7

A4 1

13 1

-3

0

0

12

J

1

A2 -1

1

0

1/2

0


0

-2

Δj

–25/2 –7/2 19

A5 1

4

0

-1

1

0

6

6

1

-1

1


9/2

3

19

A4 1

1/4 1/12 –1/4

0

0

-1/4 J

A2 -1

3/2 1/6

0

0

0

0

A5 1


5/2 -1/2

1/2

1

0

1/2

5/4 -7/12 1/4

1

1

5/4

A4 1

3/2 -1/6

0

1/2

0

A2 -1


3/2 1/6

0

0

0

A5 1

5

-1

1

2

0

-5

2/3

–1

–1

IV


2

1

Δj

2

1/6 5/4

J

1
Δj

4

4
-3/4

5

-29/6 –1/3

-5/2

3/2

Tại bảng IV, mọi Δj ≤ 0, được phương án tối ưu là

Xtối ưu = (0, 5, 3/2, 0, 0, 3/2) với fmin= -5.
3) Cài đặt thuật tốn.
Cài đặt tht tốn bằng chương trình Pascal.
Program vd;
uses crt;
type bar=array[1..20] of real;
GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

23


Đề tài thực tập cơ sở

var
i,j,n,m,k,d,dem,cx,hx:integer;
a:array[1..20] of bar;
s,b,c,x,dt,q:bar;
E:array[1..20] of integer;
f,min,max,dx:real;
function vt1(a:bar):byte; {tim vi tri cua 1 trong mang}
begin
for i:=1 to n do
if a[i]=1 then vt1:=i;
end;
function dem0(b:bar):byte; {dem so so 0 cua mang b}
begin
d:=0;
for i:=1 to n do

if b[i]=0 then d:=d+1;
dem0:=d;
end;
function gtln(b:bar):real; {tim gia tri lon nhat cua mang}
var max:real;
begin
max:=b[1];
for i:=1 to m do
if maxgtln:=max;
end;
function kt(b:bar):boolean;
begin
if gtln(b)<=0 then kt:=true
else kt:=false;
GVHD: Trần Văn Cảnh

NHĨM THỰC HIỆN: Nhóm lớp 45E5- CNTT

24


Đề tài thực tập cơ sở

end;
begin clrscr;
write('so phuong trinh dieu kien n='); readln(n);
write('so bien so m='); readln(m);
writeln('NHAP MA TRAN HE SO');
for i:=1 to n do

for j:=1 to m do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
{*****tim tap chi so co so co so *****}
k:=0;
for j:=1 to m do
begin
for i:=1 to n do
begin
k:=k+1;
s[k]:=a[i,j];
end;
if (gtln(s)=1) and( dem0(s)=n-1) then E[vt1(s)]:=j;
k:=0;
end;
write('TAP CHI SO CO SO LA');
for i:=1 to n do
write(E[i]:2);
writeln;
writeln('NHAP MA TRAN B:');writeln;
for i:=1 to n do
begin
GVHD: Trần Văn Cảnh

NHÓM THỰC HIỆN: Nhóm lớp 45E5- CNTT

25



×