Thứ Sáu, 17 tháng 8, 2012

HƯỚNG DẪN SỬ DỤNG NHANH MÁY TOÀN ĐẠC ĐIỆN TỬ CHO CÁC MODEL: HÃNG SOUTH VÀ TOPCON



A. ĐO KIỂM TRA KHÔNG LƯU LẠI TRONG MÁY.

Bao gồm có các chế độ đo sau:

I. Chỉ đo góc phím (ANG):

Màn hình khi khởi động máy luôn ở chế độ chỉ đo góc.
Khi đang ở chế độ đo khác muốn trở về chế độ này bạn ấn phím ESC sau đó ấn phím (Ang).

V: Góc đứng
HR: Góc ngang

Chức năng các phím:
Trang 1(P1).
- F1(OSET) : Đưa góc bằng (Bàn độ ngang) ban đầu về 000’0’’. Chấp nhận bấm F3(Yes).
- F2(HOLD) : Phím giữ góc ngang (khi bấm phím này quay máy góc ngang không đổi).
- F3(HSET) : Cài đặt góc ngang ban đầu (Cài đặt phương vị đầu).
- F4(P1) : Phím sang trang 2 của chức năng (ANG)

Trang 2 (P2).
- F1(TILT) : Tắt, mở cân bằng tự động của máy. Ở chế độ mở khi máy bị nghiêng, máy sẽ không làm việc.
- F2(REP) : Đo góc lặp
- F3(V%) : Độ dốc. Chức năng này dùng để bố trí và kiểm tra độ dốc.
- F4(P2) : Phím sang trang 3 của chức năng (ANG)

Trang 3 (P3).
- F1(H-BZ) : Bật và tắt tiếng kêu (píp) khi góc bằng quay gần đến ¼ cung tròn
- F2(R/L) : Góc bằng tăng thuận hoặc nghịch chiều kim đồng hồ
- F3(CMPS) : Đưa góc đứng 00 ở thiên đỉnh hoặc vị trí nằm ngang.

Như vậy ở chức năng này ứng dụng nhiều nhất là qui góc về 0o và bố trí kiểm tra độ dốc

), 1
yII. Đo góc cạnh phím ( lần:

1.Đo góc bằng, cạnh bằng và chênh cao:

HR : Góc bằng
HD : Khỏang cách ngang
VD : Chênh cao

Chức năng các phím:
Trang 1.
- F1(MEAS) : Bắt đầu đo
- F2(MODE) : Các lựa chọn Mode đo khỏang cách
+ F1(FINE) : Đo chính xác
+ F2(TRACK) : Đo nhanh
+ F3(COARSE): Đo thô
- F3(S/A) : Cài đặt hằng số gương, PPm, nhiệt độ và áp suất
- F4(P1) : Sang trang 2

Trang 2.
- F1(OFSET) : Chức năng này ứng dụng khi không thể đặt gương trực tiếp.
+ F1(ANG OFFSET) : Offset góc
+ F2(DIST OFFSET) : Offset chiều dài
+ F3(PLANE OFFSET): Offset mặt phẳng
- F2(S.O) : Bố trí điểm
+ F1(HD) : Bố trí theo khỏang cách ngang
+ F2(VD) : Bố trí theo chênh cao
+ F3(SD) : Bố trí theo khỏang cách nghiêng
- F3(m/f/i) : Chuyển đổi đơn vị đo

), 2
y2.Đo góc đứng, góc bằng, cạnh nghiêng ấn phím ( lần::

V : Góc đứng
HR : Góc bằng
SD : Khoảng cách nghiêng (tính từ tâm máy đến tâm gương)

III. Đo tọa độ phím ( )

N: Tọa độ theo phương X
E: Tọa độ theo phương Y
Z: Cao độ

Chức năng các phím:
Trang 1:
F1(MEAS) : bắt đầu đo
F2(MODE) : Các lựa chọn Mode đo
F3(S/A) : Cài đặt hằng số gương, PPm, nhiệt độ, áp suất

Trang 2:
F1(R.HT) : Nhập chiều cao gương.
F2(INSHT) : Nhập chiều cao máy
F3(OCC) : Nhập tọa độ trạm máy

Trang 3:
F1(OFSET) : Các chức năng đo Offset
F3(m/f/i) : Chuyển đổi đơn vị đo

B. ĐO LƯU LẠI TRONG MÁY - TRÌNH ĐƠN MENU PHÍM (MENU).

Trang 1:
I. F1(DATA COLLECT) : Đo lưu lại trong máy
II. F2(LAYOUT) : Bố trí điểm
III. F3(MEMORY) : Quản lý bộ nhớ
Ấn phím F4 sang trang 2.

Trang 2:
IV. F1(PROGRAMS) : Các chương trình đo ứng dụng
V. F2(GRID FACTOR) : Tỷ lệ lưới chiếu
VI. F3(ILLUMINATION) : Bật ,tắt đèn chiếu sáng màn hình
Ấn phím F4 sang trang 3.

Trang 3:
VII. F1(PARAMETTERS) : Điều chỉnh các thông số cho máy
VIII. F2(CONTRAST ADJ) : Điều chỉnh độ tương phản màn hình


I. F1(DATA COLLECT) : Đo lưu lại trong máy

1. F1(INPUT) Đặt tên File đo, hoặc F2(LIST)để chọn file đo (Enter),tất cả các dữ liệu khai báo và số liệu đo đều nằm trong file này.

Trang 1:
Công việc bạn phải khai báo trước khi đo là khai báo hệ tọa độ cho máy.
Bao gồm các công việc sau:
a. Khai báo trạm máy
gồm có: Tên trạm máy, chiều cao máy, và tọa độ trạm máy.
b.Khai báo điểm định hướng
gồm có: Tên điểm định hướng, chiều cao gương và tọa độ điểm định hướng
c. Tiến hành đo chi tiết.


START:

1.Đặt tên File đo
- Menu/F1(Data Collect)/F1(Input) ), nếu bạn chọn lại File cũ ấn
ynhập tên File để chọn ký tự nhập bạn ấn phím ( F2(List) xong ấn F4(Enter).

a.Khai báo trạm máy
- F1(OCC.PT# INPUT)/F1(INPUT) nhập tên trạm máy, nhập xong ấn phím Enter, dòng (ID) bỏ qua, dùng phím mũi tên chuyển xuống dòng INS.HT để nhập chiều cao máy, nhập xong ấn Enter, lúc này máy sẽ hiện tọa độ điểm đặt máy, bạn kiểm tra nếu đúng ấn F3(YES), sai ấn F4(NO) để nhập lại, để nhập lại tọa độ điểm đặt máy bạn ấn F4(OCNEZ), nếu tọa độ điểm này đã có sẵn trong máy bạn ấn F2(LIST) để lấy ra, nếu không có bạn ấn F3(NEZ)/F1(INPUT)để nhập tay, nhập xong mỗi dòng ấn phím Enter. Khi đã nhập xong tọa độ trạm máy bạn ấn F3(REC)/F3(YES) để lưu lại kết quả, và bạn đã khai báo xong trạm máy.

b. Khai báo điểm định hướng
- F2(BACKSIGHT)F1(INPUT) nhập tên điểm định hướng, xong Enter, dòng PCODE bỏ qua, dùng phím mũi tên chuyển xuống dòng R.HT để nhập chiều cao gương, nhập xong Enter để khai báo tọa độ điểm định hương bạn ấn F4(BS), nếu tọa độ điểm này đã có trong máy bạn ấn F2(LIST) để chọn, nếu chưa có bạn ấn F3(NE/AZ)/F1(INPUT) để tiến hành nhập tay, nhập xong mỗi dòng bạn ấn Enter xong phần khai báo bạn xoay máy bắt gương đặt tại điểm định hướng và ấn F3(MEAS)/F2(HD) máy đo xong bạn ấn F3(REC)/F3(YES) để lưu lại kết quả và kết thúc việc khai báo hệ tọa độ cho máy.

c. Bắt đầu đo chi tiết
- F3(FS/SS)/F1(INPUT) bạn nhập điểm đo đầu tiên, nhập xong Enter. Lúc này máy đã sẵn sàng để đo điểm chi tiết, bạn bắt gương và bấm F4(ALL) để máy đo và lưu đồng thời. Nếu máy đo xong mà chưa tự động ghi, trên màn hình hiện (SET) tương ứng với phím F4 thì bạn bấm phím này để máy lưu lại.

Trang 2 của màn hình DATA COLLECT:
d. F1(SELECT A FILE): Đặt tên file
e. F2(PCODE INPUT) : (xem phần định dang Code).
f. F3(CONFIG) : Cài đặt, chọn kiểu đo
- F1(DIST MODE) : Chọn kiểu đo, thường chọn FINE (đo tinh)
- F2(HD/SD) : Chọn kiểu đo cạnh bằng, hoặc cạnh xiên, thường chọn đo cạnh bằng (HD)
- F3(MEAS.SEQ) : Chọn kiểu đo đơn hay đo liên tục
II. F2(LAYOUT) : Bố trí điểm
Công việc bạn phải khai báo trước khi bố trí là khai báo hệ tọa độ cho máy.
Để khai báo hệ tọa tọa cho máy có hai cách.

1. Giống như phần đo lưu F1(DATA COLLECT) chỉ khác là khi bạn khai báo điểm định hướng, trước khi nhập tọa độ điểm định hướng bạn phải hướng máy về điểm định hướng, sau đó nhập tọa độ điểm định hướng, nhập xong ấn Enter là xong.

2. Khai báo hệ tọa độ cho máy bằng cách đo giao hội, cách làm như sau:
Bạn đã có hai điểm tọa độ A, B, dựng máy tại điểm bất kỳ trông thấy gương đặt tại A,B

START:

MENU/F2(LAYOUT)/F1(INPUT) nhập tên File đo, xong Enter
- F4(P1)/F2(NEW POINT)/F2(RESECTION)/F1(INPUT) nhập tên trạm máy, xong Enter
F1(INPUT) nhập chiều cao máy, xong Enter/F3(NEZ)/F1(INPUT) nhập tọa điểm A, xong Enter/F1(INPUT) nhập chiều cao gương, xong Enter, bắt gương đặt tại A và ấn F4(DIST). Máy đo xong bạn tiếp tục ấn F3(NEZ)/F1(INPUT) nhập tọa điểm B tương tự đo xong điểm B, bạn ấn F2(CALC MEAS.DATA) máy sẽ tính cho bạn biết sai số đặt gương giữa hai điểm A,B nếu sai số này chấp nhận được bạn ấn F3(NEZ) để máy tính tọa độ điểm đặt máy, xong bạn ấn F3(REC) để lưu lại kết quả, và việc khai báo hệ tọa độ hòan tất.

Để bố trí điểm bạn vào F3(LAYOUT)/F3(NEZ)/F1(INPUT) nhập tọa độ điểm bố trí nhập xong Enter nếu điểm bố trí có cao độ thì ở dòng R.HT bạn phải nhập chiều cao gương, nếu bỏ qua cao độ bạn ấn Enter. Khi đó màn trên màn hình sẽ thể hiện HR: góc phương vị cần bố trí và HD: khỏang cách từ máy đến điểm cần bố trí, để xác định hướng đi bạn ấn F1(ANGLE) khi đó trên màn hình sẽ hiện dHR: sai số giữa hướng hiện tại và hướng điểm bố trí, bạn quay máy để sai số này về 0, sau đó bạn đặt gương trên hướng này và bấm F1(DIST) khi đó trên màn hình xuất hiện dòng dHD: sai số khỏang cách giữa điểm cần bố trí và vị trí đặt gương. Nếu khỏang cách này dương nghĩa là bạn đã đi quá xa cần lui trở lại. và bạn điều chỉnh gương để sai số này về 0 và vị trí này chính là điểm bạn cần bố trí.

III. F3(MEMORY) : Quản lý bộ nhớ (gồm 3 trang)
MENU/ F3(MEMORY)
Trang 1:

1. F1(FILE STATUS) : Thống kê dữ liệu đo (gồm 2 trang).
Trang 1:
- MEAS FILE : Thống kê số File đo bằng góc cạnh
- COORD FILE : Thống kê số File đo bằng tọa độ

Trang 2:
- MEAS DATA : Thống kê số điểm đo bằng góc cạnh
- COORD DATA : Thống kê số điểm đo bằng tọa độ

2. F2(SEARCH) : Tìm (xem) điểm đo đã lưu trong bộ nhớ
a.F1(MEAS DATA) : Tìm (xem) điểm đo góc cạnh
- F2(LIST): chọn tên File đo, xong Enter
+ F1(FIRST DATA) : Điểm đo đầu tiên
+ F2(LAST DATA) : Điểm đo cuối
+ F3(PT# DATA) : Điểm đo bất kỳ, bạn phải nhập vào tên điểm đo bạn cần tìm.
b.F2(COORD DATA) : Tìm (xem) điểm đo bằng tọa độ
c.F3(PCODE LIB) : cho phép bạn sửa hoặc xóa CODE

3.F3(FILE MAINTAN) : Cho phép bạn chỉnh sửa tên File dữ liệu, xem dữ liệu hoặc xóa một File dữ liệu
a.Sửa tên file dữ liệu:
Dùng phím mũi tên chọn tên file cần sửa rồi ấn F1(REN) sửa xong ấn (Enter).

b. Để xem dữ liệu bạn cũng dùng phím mũi tên chọn file dữ liệu muốn xem và ấn F2(SRCH)
- F1(FIRST DATA) : Dữ liệu điểm đo đầu tiên
- F2(LAST DATA) : Dữ liệu điểm đo cuối
- F3(PT# DATA) : Dữ liệu điểm bất kỳ, bạn nhập vào tên điểm muốn xem.

c.Xóa một file dữ liệu:
Dùng phím mũi tên chọn tên file cần xóa và ấn F3(DEL)/F4(YES).


MENU/ F3(MEMORY)/F4 Trang 2:
1.F1(COORD INPUT) : Nhập dữ liệu tọa độ vào máy đo.
Bạn có thể nhập trước tọa độ các điểm cứng hoặc tọa độ các điểm cần bố trí vào một file trong máy để đơn giản cho công tác ngòai hiện trường.
- Nhập dữ liệu vào một file mới ấn F1(IN PUT) : Nhập tên file (Enter), nhập dữ liệu vào file cũ F2(LIST) chọn file (Enter).

F1(IN PUT) : Nhập tên điểm (Enter).
F1(IN PUT) : Nhập tọa độ điểm (Enter).

2.F2(DELETE COORD) : Xóa một điểm đo tọa độ.
- Chọn tên file chứa điểm cần xóa F2(LIST) hoặc nhập tên file chứa điểm F1(INPUT) (Enter)
- Nhập tên điểm cần xóa F1(INPUT), tìm điểm vào F2(LIST) dùng phím mũi tên di chuyển đến điểm cần xóa (Enter)/F3(YES).

3.F3(PCODE INPUT) : Định dạng cho Code hoặc xóa Code.
Công việc này đối với chuyên môn khảo sát là cần thiết bởi với khối lượng điểm đo quá nhiều, việc ghi chú cho từng điểm tốn nhiều thời gian và giấy mực, khi đó người đo chỉ việc nhập mã Code ở dòng PCODE trên màn hình điểm đo chi tiết.

Vd: Ta định dạng cho Code :01 là cột điện thì khi đo các điểm là cột điện ở dòng PCODE trên màn hình đo, người đo nhập là 01. thì khi xuất dữ liệu ra máy tính những điểm có mã Code 01 đều có ghi chú là cột điện.

Người đo có thể định dạng được 50 mã Code bắt đầu từ 01 đến 050.
Để định dạng cho Code bấm F1(EDIT), xóa định dạng bấm F3(CLR)


MENU/ F3(MEMORY)/F4 2 lần sang Trang 3:
1.F1(DATA TRANSFER) L : chuyền dữ liệu.
Trước khi chuyền dữ liệu bạn kiểm tra lại giao diện giữa máy đo và máy tính.
• Phần máy tính bạn khởi động phần mềm T-COM và vào COMM/Download: GTS-210/310/GPT-1000. Nếu bạn muốn dữ liệu ra là file (DXF) thì ô (Write text file) bạn để trống, còn xuất ra file (text) bạn đánh dấu vào ô này.

• Phần máy đo bạn vào: F3(COMM PARAMETERS) và lần lượt vào kiểm tra các thông số giao diện: F1(PROTOCOL), F2(BAUD RATE), F3(CHAR/PARITY),
(STOP BITS), và chọn cho các thông số này giống nhau.

a. F1(SEND DATA) : chuyền dữ liệu từ máy đo sang máy tính. Bạn chọn dữ liệu chuyền:
- F1(MEAS DATA) : chuyền dữ liệu đo góc cạnh
- F2(COORD DATA): chuyền dữ liệu đo tọa độ
- F3(PCODE DATA): Chuyền dữ liệu định dạng Pcode
Sau khi chọn bạn vào (list) để chọn file cần chuyền và ấn (Enter) ở máy tính bấm (Go). Để xuất ra được file (DXF) bạn chọn F2(COORD DATA)/F1(11 DIGITS). Sau khi xuất xong dữ liệu qua máy tính bạn để ý nếu có dòng trắng trên cùng bạn xóa dòng này đi sau đó bạn vào biểu tượng (CONVERSION) và chọn to DXF(only GTS-210/310/GPT-1000). Đợi dữ liệu chạy xong bạn Save lại, đặt tên file có phần mở rộng là .DXF.

b. F2(LOAD DATA) : load dữ liệu từ máy tính vào máy đo. Thao tác tương tự như phần trút dữ liệu.

2.F2(INITIALIZE) : Xóa tất cả các dữ liệu lưu trong máy.
a. F1(FILE AREA) : Xóa tất cả các file đã đo
b. F2(PCODE LIST) : Xóa tòan bộ định dạng Code
c. F3(ALL DATA) : Xóa tất cả các file đã đo, xóa tòan bộ định dạng Code
MENU (Trang 2):
IV. F1(PROGRAMS) : Các chương trình đo ứng dụng của máy (2 trang).
Trang 1:
1.F1(REM) : Đo chiều cao nơi không tới được như đo chiều cao cây chẳng hạn.
Có thể dùng 1 trong 2 cách sau:
a. F1(INPUT R.HT) : Nhập chiều cao gương (Enter) bắt gương đặt tại gốc cây bấm F1(MEAS) đợi cho máy đo xong hướng ống nên ngọn cây. Chiều cao của cây sẽ thể hiện trên màn hình.

b. F2(NO R.HT) : Không cần nhập chiều cao gương. Đặt gương tại gốc cây bấm F1(MEAS) đợi máy đo xong hướng ống kính xuống gốc cây bấm F4(SET) sau đó hướng ống kính lên ngọn cây Chiều cao của cây sẽ thể hiện trên màn hình.

2. F2(MLM) : Đo khỏang cách giữa hai gương
a. F1(USE G.F) : Sử dụng hệ số lưới
b. F2(DON’T USE) : Không sử dụng hệ số lưới, A,B,C là các điểm đặt gương
- F1: MLM-1 (A-B, A-C) : Đo khỏang cách cộng dồn.
- F2: MLM-2 (A-B, B-C) : Đo khỏang cách đuổi.

3.F3(Z COORD) : Đo lấy lại cao độ trạm máy, bạn không có cao độ trạm máy nhưng có cao độ điểm đặt gương, cách làn như sau:
F2(DON’T USE)/F1(OCC PT INPUT) nhập tọa độ điểm đứng máy, ở dòng cao độ bạn bỏ qua.
F2(REF MEAS) nhập tọa độ điểm đặt gương, nhập xong (Enter), F1(INPUT) nhập chiều cao gương (Enter), bắt gương nhấn F3(YES), Nếu đo tiếp điểm khác nhấn F1(NEXT), kết thúc bạn ấn F4(CALC), máy sẽ tính cho bạn cao độ trạm máy, bạn đồng ý bấm F4(SET) để lưu lại kết quả.

Trang 2:
4. F1(AREA) : Đo tính diện tích
a. F1(FILE DATA) : tính diện tích từ những điểm trong file đã đo.
b. F2(MEASUREMENT)/F2(DON’T USE): tính diện tích bằng đo trực tiếp
5. F2(POINT TO LINE)
6. F3(ROAD)

V. F2(GRID FACTOR) : Tỷ lệ lưới chiếu
VI. F3(ILLUMINATION) : Bật ,tắt đèn chiếu sáng màn hình
Ấn phím F4 sang trang 3.

Trang 3:
VII. F1(PARAMETTERS) : Điều chỉnh các thông số cho máy
1. F1(MINIMUM READING) :
a. F1:ANGLE : Chọn góc đọc nhỏ nhất, bạn dùng phím mũi tên để chọn, chọn xong ấn Enter.
b. F2:COARSE: Chọn đơn vị đo nhỏ nhất

2.F2(AUTO POWER OFF) : Bật tắt chế độ tự động tắt, khi máy nghỉ không làm việc.
3.F3(TILT): Bật tắt chế độ nghiêng tự động, ở chế độ mở khi máy nghiêng máy sẽ kg làm việc

VIII. F2(CONTRAST ADJ) : Điều chỉnh độ tương phản màn hình
Dùng phím mũi tên để điều chỉnh độ tương phản màn hình

Một số lệnh tắt trong AutoCad



Để tạo ra phím tắt cho 1 lệnh nào đó ta thực hiện như sau:
Có 2 cách để tạo
1. Vào menu Tool - chọn Customize - Edit program parameters (tới đây thì các bạn cũng sẽ thấy danh sách lệnh tắt)
Vd : Lệnh COPY : lệnh tắt là CO/CP bây giờ muốn đổi chữ khác : OC/PC chẳng hạn (lưu ý là không được trùng với các lệnh đã có)- thì tìm dòng lệnh COPY trong danh sách - xóa CO/CP - thay bằng OP/PC - sau đó Save - ở dòng lệnh Command: gõ lệnh REINIT - CHỌN pgp FILE - OK
Lúc này bạn gõ OC/PC là lệnh copy.
2. Cách 2 trên diễn đàn có post rồi : thực hiện trong menu Express.

DANH MỤC CÁC LỆNH TẮT
(Bao gồm 1 số lệnh thông dụng)

1. 3A     3DARRAY                Sao chép thành dãy trong 3D
2. 3DO    3DORBIT               Xoay đối tượng trong không gian 3D
3. 3F      3DFACE                  Tạo mặt 3D
4. 3P      3DPOLY                  Vẽ đường PLine  không gian 3 chiều
A
5. A ARC                           Vẽ cung tròn
6. AA AREA                        Tính diện tích và chu vi 1
7. AL ALIGN                        Di chuyển, xoay, scale
8. AR ARRAY                       Sao chép đối tượng thành dãy trong 2D
9. ATT ATTDEF                  Định nghĩa thuộc tính
10. ATE ATTEDIT                  Hiệu chỉnh thuộc tính của Block
B
11. B BLOCK                      Tạo Block
12. BO BOUNDARY              Tạo đa tuyến kín
13. BR BREAK                     Xén 1 phần đoạn thẳng giữa 2 điểm chọn
C
14. C CIRCLE                       Vẽ đường tròn
15. CH PROPERTIES             Hiệu chỉnh tính chất của đối tượng
16. CHA ChaMFER                Vát mép các cạnh
17. CO, cp COPY                  Sao chép đối tượng
D
18. D DIMSTYLE                   Tạo kiểu kích thước
19. DAL DIMALIGNED          Ghi kích thước xiên
20. DAN DIMANGULAR         Ghi kích thước góc
21. DBA DIMBASELINE         Ghi kích thước song song
22. DCO DIMCONTINUE       Ghi kích thước nối tiếp
23. DDI DIMDIAMETER         Ghi kích thước đường kính
24. DED DIMEDIT                Chỉnh sửa kích thước
25. DI DIST                          Đo khoảng cách và góc giữa 2 điểm
26. DIV DIVIDE                   Chia đối tượng thành các phần bằng nhau
27. DLI DIMLINEAR              Ghi kích thước thẳng đứng hay nằm ngang
28. DO DONUT                     Vẽ hình vành khăn
29. DOR DIMORDINATE        Tọa độ điểm
30. DRA DIMRADIU             Ghi kích thước bán kính
31. DT DTEXT                      Ghi văn bản
E
32. E ERASE                 Xoá đối tượng
33. ED DDEDIT                    Hiệu chỉnh kích thước
34. EL ELLIPSE                    Vẽ elip
35. EX EXTEND                    Kéo dài đối tượng
36. EXIT QUIT                     Thoát khỏi chương trình
37. EXT EXTRUDE                Tạo khối từ hình 2D
F
38. F FILLET                        Tạo góc lượn/ bo tròn góc
39. FI FILTER                       Chọn lọc đối tượng theo thuộc tính
H
40. H BHATCH                      Vẽ mặt cắt
41. -H -HATCH                     Vẽ mặt cắt
42. HE HATCHEDIT              Hiệu chỉnh mặt cắt
43. HI HIDE                        Tạo lại mô hình 3D với các đường bị khuất
I
44. I INSERT                       Chèn khối
45. -I -INSERT                    Chỉnh sửa khối được chèn
46. IN INTERSECT               Tạo ra phần giao giữa 2 đối tượng
L
47. L LINE                           Vẽ đường thẳng
48. LA LAYER                      Tạo lớp và các thuộc tính
49. -LA -LAYER                    Hiệu chỉnh thuộc tính của layer
50. LE LEADER                    Tạo ra đường dẫn chú thích
51. LEN LENGTHEN              Kéo dài/thu ngắn đối tượng bằng chiều dài cho trước
52. Lw LWEIGHT                  Khai báo hay thay đổi chiều dày nét vẽ
53. LO –LAYOUT                  Tạo Layout
54. LT LINETYPE                  Hiển thị hộp thoại tạo và xác lập các kiểu đường
55. LTS LTSCALE                 Xác lập tỉ lệ đường nét
M
56. M MOVE                        Di chuyển đối tượng được chọn
57. MA MATCHPROP             Sao chép các thuộc tính từ 1 đối tượng này sang 1 hay nhiều đối tượng khác
58. MI MIRROR                    Lấy đối tượng qua 1 trục
59. ML MLINE                      Tạo ra các đường song song
60. MO PROPERTIES            Hiệu chỉnh các thuộc tính
61. MS MSPACE                   Chuyển từ không gian giấy sang không gian mô hình
62. MT MTEXT                     Tạo ra 1 đoạn văn bản
63. MV MVIEW                    Tạo ra cửa sổ động
O
64. O OFFSET                      Sao chép song song
P
65. P PAN                         Di chuyển cả bản vẽ
66. -P -PAN                         Di chuyển cả bản vẽ từ điểm 1 sang điểm thứ 2
67. PE PEDIT                       Chỉnh sửa các đa tuyến
68. PL PLINE                       Vẽ đa tuyến
69. PO POINT                      Vẽ điểm
70. POL POLYGON                Vẽ đa giác đều khép kín
71. PS PSPACE                    Chuyển từ không gian mô hình sang không gian giấy
R
72. R REDRAW                    Làm tươi lại màn hình
73. REC RECTANGLE            Vẽ hình chữ nhật
74. REG REGION                 Tạo miền
75. REV REVOLVE                Tạo khối 3D tròn xoay
76. RO ROTATE                   Xoay các đối tượng được chọn xung quanh 1 điểm
77. RR RENDER                   Hiển thị vật liệu, cây, cảnh, đèn... của đối tượng
S
78. S StrETCH                 Kéo dài/Thu ngắn tập hợp của đối tượng
79. SC SCALE                Phóng to, thu nhỏ theo tỷ lệ
80. SHA SHADE                Tô bóng đối tượng của 3D
81. SL SLICE                Cắt khối 3D
82. SO SOLID                Tạo ra các đa tuyến có thể được tô đầy
83. SPL SPLINE                Vẽ đường cong bất kỳ
84. SPE SPLINEDIT            Hiệu chỉnh spline
85. ST STYLE                Tạo các kiểu ghi văn bản
86. SU SUBTRACT             Phép trừ khối
T
87. T MTEXT                Tạo ra 1 đoạn văn bản
88. TH  THICKNESS            Tạo độ dày cho đối tượng
89. TOR TORUS                Vẽ xuyến
90. TR TRIM                Cắt xén đối tượng
U
91. UN UNITS                Định vị bản vẽ
92. UNI UNION                Phép cộng khối
V
93. VP DDVPOINT             Xác lập hướng xem 3 chiều

W
94. WE WEDGE                Vẽ hình Nêm/Chêm

X
95. X EXPLODE                Phân rã đối tượng
96. XR XREF                Tham chiếu ngoại vào các file bản vẽ

Z
97. Z ZOOM                Phóng to/Thu nhỏ

Các bài tập Pascal cơ bản


Sau đây là đề...

Bài 1:
 
Nhp vào 1 s nguyên gm 4 ch s
 
-Kim tra tình chn l
 
-kim tra xem có phi là s nguyên t không
 
-kim tra xem có phi là s hoàn ho không
 
 
 
Bài 2:
 
Nhp vào 1 s n nguyên (2<N<n,m<n7)
 
 
 
Bài 16:
 
-Nhp vào mt danh sách sinh viên (h tên,năm sinh,dan tcim 1 im 2 , đim 3 ,gii tính)
 
-hin danh sách sinh viên va nhp dưới dng ct
 
STT  Hoten  Gioitinh  Dantoc  Diem1  Diem2  Diem3  DTB
 
-cho bit có bao nhiu phn trăm sinh viên nam bao nhiu phn trăm n
 
 
 
Bai 17:
 
-Nhp vào mt danh sách sinh viên (h tên,năm sinh,dan tcim 1 im 2 , đim 3 ,gii tính)
 
-hin danh sách sinh viên va nhp dưới dng ct
 
STT  Hoten  Gioitinh  Dantoc  Diem1  Diem2  Diem3  DTB
 
-sp xếp li danh sách sinh viên tăng dn theo đim trung bình (không làm sai lch thông tin)








Sau đây là lời giải ...
Bài 1:
 
program yen1;
 
uses crt;
 
var i,n,k,d:integer;
 
ok:boolean;
 
function chanle(n:integer):boolean;
 
begin
 
ok:=true;
 
if n mod 2<>0 then ok:=false;
 
chanle:=ok;
 
end;
 
function nguyento(n:integer):boolean;
 
begin
 
ok:=true;
 
d:=0;
 
for i:=1 to n-1 do
 
if n mod i=0 then d:=d+1;
 
if d<>1 then ok:=false;
 
nguyento:=ok;
 
end;
 
function chinhphuong(n:integer):boolean;
 
begin
 
ok:=true;
 
k:=trunc(sqrt(n));
 
if sqr(k)<>n then ok:=false;
 
chinhphuong:=ok;
 
end;
 
begin
 
clrscr;
 
write(' Nhap n=');readln(n);
 
if chanle(n) then writeln(' So vua nhap la chan')
 
else writeln(' So vua nhap la so le');
 
if nguyento(n) then writeln(' So vua nhap la nguyen to')
 
else writeln(' So vua nhap khong phai la so nguyen to');
 
if chinhphuong(n) then writeln(' So vua nhap la so chinh phuong')
 
else writeln(' So vua nhap khong la so chinh phuong');
 
readln;
 
end.


Bài 2:
 
program yen2;
 
uses crt;
 
var a:array [ 1..20] of byte;
 
i,n,d,j,k:integer;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
begin
 
write(' a[',i,']=');readln(a[i]);
 
end;
 
end;
 
procedure nguyento;
 
begin
 
write(' Day so cac so nguyen to:');
 
k:=0;
 
for i:=1 to n do
 
begin
 
d:=0;
 
for j:=1 to a[i]-1 do
 
if a[i] mod j=0 then d:=d+1;
 
if d=1 then begin
 
write(' ',a[i]);
 
k:=k+1;
 
end;
 
end;
 
if k=0 then write(' khong co so nao')
 
else begin
 
writeln;
 
writeln(' Trong day co ',k,' so nguyen to');
 
end;
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n=');readln(n);
 
until (2<N)AND(N< readln; nguyento; nhap;>
 
 
 
 
 
 
Bài 3:
 
program yen3;
 
uses crt;
 
var a:array [1..20] of integer;
 
b:array [1..20] of integer;
 
i,n,max,j,tg:integer;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
begin
 
write(' a[',i,']=');readln(a[i]);
 
end;
 
end;
 
procedure timmax;
 
begin
 
max:=a[1];
 
for i:=2 to n do
 
if a[i]>max then max:=a[i];
 
j:=1;
 
for i:=1 to n do
 
if a[i]=max then begin
 
b[j]:=i;
 
j:=j+1;
 
end;
 
write(' So lon nhat trong day la ',max,' o vi tri thu');
 
for i:=1 to j-1 do
 
write(', ',b[i]);
 
writeln;
 
end;
 
procedure tang;
 
begin
 
for i:=1 to n-1 do
 
for j:=i+1 to n do
 
if a[i]>a[j] then begin
 
tg:=a[i];
 
a[i]:=a[j];
 
a[j]:=tg;
 
end;
 
write(' Day duoc sap xep lai la:');
 
for i:=1 to n do
 
write(' ',a[i]);
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n=');readln(n);
 
until (2<N)AND(N< readln; nhap; tang; timmax;>
 
 
 
 
 
 
Bài 4:
 
program yen4;
 
uses crt;
 
var n,i,d,k,j:integer;
 
procedure hoanhao;
 
begin
 
d:=0;
 
for i:=1 to n-1 do
 
if n mod i=0 then d:=d+i;
 
if d=n then writeln(' So vua nhap la so hoan hao')
 
else writeln(' So vua nhap khong la so hoan hao');
 
end;
 
procedure vietlen;
 
begin
 
write(' Day so hoan hao tu 1-->2000:');
 
k:=0;
 
for i:=1 to 2000 do
 
begin
 
d:=0;
 
for j:=1 to i-1 do
 
if i mod j=0 then d:=d+j;
 
if d=i then begin
 
write(' ',i);
 
k:=k+1;
 
end;
 
end;
 
writeln;
 
writeln(' Trong day 1-->2000 co ',k,' so hoan hao');
 
end;
 
begin
 
clrscr;
 
write(' Nhap n=');readln(n);
 
hoanhao;
 
vietlen;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 5:
 
program yen5;
 
uses crt;
 
var a:array [1..20] of real;
 
b:array [1..20] of integer;
 
i,n,d,j:integer;
 
s,m:real;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
begin
 
write(' a[',i,']=');readln(a[i]);
 
end;
 
end;
 
function tbc:real;
 
begin
 
d:=0;s:=0;
 
for i:=1 to n do
 
if a[i]>0 then begin
 
s:=s+a[i];
 
d:=d+1;
 
end;
 
tbc:=(s/d);
 
end;
 
procedure kiemtra;
 
begin
 
d:=0;j:=1;
 
for i:=1 to n do
 
if m=a[i] then begin
 
b[j]:=i;
 
d:=d+1;
 
j:=j+1;
 
end;
 
if d=0 then writeln(' Trong mang khong co so nao trung trung binh cong')
 
else begin
 
write(' Trong day co ',d,' so trung voi trung binh cong o vi tri');
 
for i:=1 to j-1 do
 
write(', ',b[i]);
 
end;
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n=');readln(n);
 
until (2<N)AND(N< readln; nhap; kiemtra; :',m:2:3); cong bing Trung writeln(' m:="tbc;">
 
 
 
 
 
 
Bài 6:
 
program yen6;
 
uses crt;
 
var st:string;
 
i,d:integer;
 
ch:char;
 
function demkitu:integer;
 
begin
 
d:=0;
 
for i:=1 to length(st) do
 
if (st[i]='c')or(st[i]='C') then d:=d+1;
 
demkitu:=d;
 
end;
 
function demtu:integer;
 
begin
 
d:=1;
 
for i:=1 to length(st) do
 
if (st[i]<>' ')and(st[i+1]=' ') then d:=d+1;
 
demtu:=d;
 
end;
 
procedure chuanhoa;
 
begin
 
while st[1]=' ' do
 
delete(st,1,1);
 
while st[length(st)]=' ' do
 
delete(st,length(st),1);i:=1;
 
repeat
 
if (st[i]=' ')and(st[i+1]=' ') then delete(st,i,1) else i:=i+1;
 
until i>length(st);
 
end;
 
function dem:integer;
 
begin
 
d:=0;
 
for i:=1 to length(st) do
 
if st[i]=ch then d:=d+1;
 
dem:=d;
 
end;
 
begin
 
clrscr;
 
write(' Nhap xau:');readln(st);
 
write(' Nhap ki tu:');readln(ch);
 
chuanhoa;
 
writeln(' Trong xau co ',demkitu,' ki tu C');
 
writeln(' Trong xau co ',demtu,' tu');
 
writeln(' Ki tu ',ch,' vua nhap co mat ',dem,' lan trong xau');
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 7:
 
program yen7;
 
uses crt;
 
var a:array[1..10,1..10] of integer;
 
i,j,n,m:integer;
 
procedure nhap;
 
begin
 
for i:=1 to m do
 
for j:=1 to n do
 
begin
 
write(' a[',i,',',j,']=');readln(a[i,j]);
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln(' Ma tran vua nhap la:');
 
for i:=1 to m do
 
begin
 
for j:=1 to n do
 
write(' ',a[i,j]:4);
 
writeln;
 
end;
 
end;
 
begin
 
clrscr;
 
write(' Nhap m,n:');readln(m,n);
 
nhap;
 
hienthi;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 8:
 
program yen8;
 
uses crt;
 
var a:array [1..100] of integer;
 
n,i,m,d,s:integer;
 
procedure fibonaci;
 
begin
 
if n=1 then a[1]:=1
 
else begin
 
i:=2;s:=1;a[1]:=1;
 
repeat
 
a[i]:=s;
 
i:=i+1;
 
s:=a[i-1]+a[i-2];
 
 
 
until i>n;
 
end;
 
write(' Day so fibonaci la:');
 
for i:=1 to n do
 
write(' ',a[i]);
 
writeln;
 
end;
 
begin
 
clrscr;
 
write(' Nhap so de tinh day fibonaci:');readln(n);
 
write(' Nhap so de kiem tra xem co trong day fibonaci khong:');readln(m);
 
fibonaci;
 
d:=0;
 
for i:=1 to n do
 
if a[i]=m then d:=d+1;
 
if d=1 then writeln(' So de kiem tra co mat trong day fibonaci')
 
else writeln(' So kiem tra khong co mat trong day fibonaci');
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 9:
 
program yen9;
 
uses crt;
 
var tu:string;
 
i:integer;
 
function doixung(tu1:string):boolean;
 
var ok:boolean;
 
begin
 
ok:=true;
 
for i:=1 to (length(tu1) div 2) do
 
if tu1[i]<>tu1[length(tu1)-i+1] then begin
 
ok:=false;
 
break;
 
end;
 
doixung:=ok;
 
end;
 
begin
 
clrscr;
 
write(' Nhap tu:');readln(tu);
 
if doixung(tu) then writeln(' Tu vua nhap doi xung')
 
else writeln(' Tu vua nhap khong doi xung');
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 10:
 
program yen10;
 
uses crt;
 
var a:array [1..10,1..10] of integer;
 
b:array [1..10] of integer;
 
i,j,n,m,max:integer;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
write(' a[',i,',',j,']=');readln(a[i,j]);
 
end;
 
end;
 
procedure xaydung;
 
begin
 
for j:=1 to m do
 
begin
 
max:=a[1,j];
 
for i:=2 to n do
 
if a[j,i]>max then max:=a[j,i];
 
b[j]:=max;
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln(' Ma tran vua nhap la:');
 
for i:=1 to n do
 
begin
 
for j:=1 to m do
 
write(' ',a[i,j]:4);
 
writeln;
 
end;
 
writeln;
 
write(' Day gom cac so max la:');
 
for i:=1 to m do
 
write(' ',b[i]);
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n,m:');readln(n,m);
 
until (2<N)AND(M< readln; nhap; hienthi; xaydung;>
 
 
 
 
 
 
Bài 11:
 
program yen11;
 
uses crt;
 
var  a:array [1..10,1..10] of integer;
 
b:array [1..100] of integer;
 
i,j,n,m,d,k,t:integer;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
write(' a[',i,',',j,']=');readln(a[i,j]);
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln(' Ma tran vua nhap la:');
 
for i:=1 to n do
 
begin
 
for j:=1 to m do
 
write(' ',a[i,j]:4);
 
writeln;
 
end;
 
writeln;
 
end;
 
procedure nguyento;
 
begin
 
k:=1;
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
d:=0;
 
for t:=1 to a[i,j]-1 do
 
if a[i,j] mod t=0 then d:=d+1;
 
if d=1 then begin
 
b[k]:=a[i,j];
 
k:=k+1;
 
end;
 
end;
 
writeln;writeln;
 
writeln(' Day so nguyen to la:');writeln;
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
for t:=1 to k-1 do
 
if b[t]=a[i,j] then begin
 
write(' ',b[t]:8);
 
writeln(' :hang ',i,' cot ',j,' ');
 
end;
 
end;
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n,m:');readln(n,m);
 
until (2<N)AND(M< readln; nguyento; nhap; hienthi;>
 
 
 
 
 
 
Bài 12:
 
program yen12;
 
uses crt;
 
var a:array [1..10,1..10] of integer;
 
b:array [1..100] of integer;
 
i,j,n,m,k,tg:integer;
 
procedure nhap;
 
begin
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
write(' a[',i,',',j,']=');readln(a[i,j]);
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln(' Ma tran vua nhap la:');
 
for i:=1 to n do
 
begin
 
for j:=1 to m do
 
write(' ',a[i,j]:4);
 
writeln;
 
end;
 
writeln;
 
end;
 
procedure sapxep;
 
begin
 
k:=1;
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
b[k]:=a[i,j];
 
k:=k+1;
 
end;
 
for i:=1 to k-2 do
 
for j:=i+1 to k-1 do
 
if b[i]>b[j] then begin
 
tg:=b[i];
 
b[i]:=b[j];
 
b[j]:=tg;
 
end;
 
k:=1;
 
for i:=1 to n do
 
for j:=1 to m do
 
begin
 
a[i,j]:=b[k];
 
k:=k+1;
 
end;
 
writeln(' Ma tran duoc sap xep lai la:');
 
for i:=1 to n do
 
begin
 
for j:=1 to m do
 
write(' ',a[i,j]:4);
 
writeln;
 
end;
 
end;
 
begin
 
clrscr;
 
repeat
 
write(' Nhap n,m:');readln(n,m);
 
until (2<N)AND(M< readln; nhap; hienthi; sapxep;>
 
 
 
 
 
 
Bài 13:
 
program yen13;
 
uses crt;
 
var s1,s2:string;
 
i,j,d,k,t:integer;
 
procedure kiemtra;
 
begin
 
d:=0;
 
for i:=1 to length(s2) do
 
if s2[i]=s1[1] then begin
 
k:=2;t:=1;
 
for j:=i+1 to (i+length(s1)-1) do
 
if s2[j]=s1[k] then begin
 
k:=k+1;
 
t:=t+1;
 
end;
 
if t=length(s1) then d:=d+1;
 
end;
 
if d>0 then begin
 
writeln(' Xau s1 co xuat hien trogn xau s2');
 
writeln(' Xau s1 xuat hien ',d,' lan trong xau s2');
 
end
 
else writeln(' Xau s1 khong xuat hien trong xau s2');
 
end;
 
begin
 
clrscr;
 
write(' Nhap xau s1:');readln(s1);
 
write(' Nhap xau s2:');readln(s2);
 
kiemtra;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 14:
 
program yen14;
 
uses crt;
 
type tap=set of char;
 
var ch:char;
 
st:string;
 
chucai:tap;
 
i,d:integer;
 
procedure kiemtra;
 
begin
 
if ch in chucai then writeln(' Ki tu ',ch,' co trong bang chu cai')
 
else writeln(' Ki tu ',ch,' khong co trong bang chu cai');
 
d:=0;
 
for i:=1 to length(st) do
 
if st[i] in chucai then d:=d+1;
 
writeln(' Trong xau co ',length(st)-d,' ki tu khong la chu cai');
 
end;
 
begin
 
clrscr;
 
write(' Nhap ki tu:');readln(ch);
 
write(' Nhap xau:');readln(st);
 
chucai:=['a'..'z','A'..'Z'];
 
kiemtra;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 15:
 
program yen15;
 
uses crt;
 
type sinhvien=record
 
hoten,dantoc,gioitinh:string;
 
namsinh,diem1,diem2,diem3:integer;
 
dtb:real;
 
end;
 
mang=array [1..10] of sinhvien;
 
var sv:mang;
 
i,n,d:integer;
 
procedure nhap;
 
begin
 
clrscr;
 
writeln('                                                NHAP THONG TIN CHO SINH VIEN');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
write(' Ho ten:');readln(hoten);
 
write(' Gioi tinh:');readln(gioitinh);
 
write(' Dan toc:');readln(dantoc);
 
write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
 
dtb:=(diem1+diem2+diem3)/3;
 
writeln;
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln;writeln;
 
writeln('                                               DANH SACH SINH VIEN VUA NHAP');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
writeln(' Ho ten:',hoten);
 
writeln(' Nam sinh:',namsinh);
 
writeln(' Diem TB:',dtb:2:2);
 
writeln;writeln;
 
end;
 
end;
 
procedure sapxep;
 
begin
 
writeln('                                               DANH SACH SINH VIEN DAT LOAI KHA');
 
writeln;
 
d:=0;
 
for i:=1 to n do
 
if sv[i].dtb>7 then begin
 
writeln(' Ho ten:',sv[i].hoten);
 
writeln(' Diem TB:',sv[i].dtb:2:3);
 
writeln;writeln;
 
d:=d+1;
 
end;
 
if d=0 then writeln('                                                   ( khong co sinh vien nao )');
 
end;
 
begin
 
clrscr;
 
write(' Nhap n=');readln(n);
 
nhap;
 
hienthi;
 
sapxep;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 16:
 
program yen16;
 
uses crt;
 
type sinhvien=record
 
hoten,dantoc,gioitinh:string;
 
namsinh,diem1,diem2,diem3:integer;
 
dtb:real;
 
end;
 
mang=array [1..10] of sinhvien;
 
var sv:mang;
 
i,n,d:integer;
 
p:real;
 
procedure nhap;
 
begin
 
clrscr;
 
writeln('                                                NHAP THONG TIN CHO SINH VIEN');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
write(' Ho ten:');readln(hoten);
 
write(' Gioi tinh:');readln(gioitinh);
 
write(' Dan toc:');readln(dantoc);
 
write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
 
dtb:=(diem1+diem2+diem3)/3;
 
writeln;
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln;writeln;
 
writeln('                                               DANH SACH SINH VIEN VUA NHAP');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
writeln(' Ho ten:',hoten);
 
writeln(' Nam sinh:',namsinh);
 
writeln(' Diem TB:',dtb:2:2);
 
writeln;writeln;
 
end;
 
end;
 
procedure phantram;
 
begin
 
writeln;writeln;
 
writeln('                                                              TY LE NAM NU');
 
d:=0;
 
for i:=1 to n do
 
if sv[i].gioitinh='nam' then d:=d+1;
 
p:=(d/n)*100;
 
writeln('                               Trong danh sach co ',p:2:2,' % la sinh vien nam');
 
writeln('                               Trong danh sach co ',(100-p):2:2,' % la sinh vien nu');
 
end;
 
begin
 
clrscr;
 
write(' Nhap n=');readln(n);
 
nhap;
 
hienthi;
 
phantram;
 
readln;
 
end.
 
 
 
 
 
 
 
Bài 17:
 
program yen17;
 
uses crt;
 
type sinhvien=record
 
hoten,dantoc,gioitinh:string;
 
namsinh,diem1,diem2,diem3:integer;
 
dtb:real;
 
end;
 
mang=array [1..10] of sinhvien;
 
var sv:mang;
 
i,n,j:integer;
 
procedure nhap;
 
begin
 
clrscr;
 
writeln('                                                NHAP THONG TIN CHO SINH VIEN');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
write(' Ho ten:');readln(hoten);
 
write(' Gioi tinh:');readln(gioitinh);
 
write(' Dan toc:');readln(dantoc);
 
write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
 
dtb:=(diem1+diem2+diem3)/3;
 
writeln;
 
end;
 
end;
 
procedure hienthi;
 
begin
 
writeln;writeln;
SACH 
writeln('                                                DANH SINH VIEN VUA NHAP');
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
writeln(' Ho ten:',hoten);
 
writeln(' Nam sinh:',namsinh);
 
writeln(' Diem TB:',dtb:2:2);
 
writeln;writeln;
 
end;
 
end;
 
procedure sapxep;
 
var tg:sinhvien;
 
begin
 
writeln;writeln;
 
writeln('                                        DANH SACH SINH VIEN DUOC SAP XEP LAI LA');
 
for i:=1 to n-1 do
 
for j:=i+1 to n do
 
if sv[i].dtb>sv[j].dtb then begin
 
tg:=sv[i];
 
sv[i]:=sv[j];
 
sv[j]:=tg;
 
end;
 
for i:=1 to n do
 
with sv[i] do
 
begin
 
writeln(' Ho ten:',hoten);
 
writeln(' Diem TB:',dtb:2:2);
 
writeln;
 
end;
 
end;
 
begin
 
clrscr;
 
write(' Nhap n=');readln(n);
 
nhap;
 
hienthi;
 
sapxep;
 
readln;
 
end.
 
 
 
 

program baitap;
 
uses crt;
 
var x:array[1..8]of integer;
 
a:array [1..8]of boolean;
 
b:array[-7..7]of boolean;
 
c:array[2..16]of boolean;
 
k,i:integer;
 
procedure khoitao;
 
begin
 
for i:=1 to 8 do
 
a[i]:=true;
 
for i:=-7 to 7 do
 
b[i]:=true;
 
for i:=2 to 16 do
 
c[i]:=true;
 
end;
 
procedure ghinhan;
 
begin
 
for i:=1 to 8 do
 
write(x[i]);
 
writeln;
 
k:=k+1;
 
end;
 
procedure try(i:integer );
 
var j:integer;
 
begin
 
for j:=1 to 8 do
 
if a[j] and b[i-j] and c[i+j] then
 
begin
 
x[i]:=j;
 
a[j]:=false;
 
b[i-j]:=false;
 
c[i+j]:=false;
 
if i=8 then begin ghinhan;
 
a[j]:=true;
 
b[i-j]:=true;
 
c[i+j]:=true;
 
end
 
else
 
begin
 
try(i+1);
 
a[j]:=true;
 
b[i-j]:=true;
 
c[i+j]:=true;
 
end;
 
end;
 
end;
 
BEGIN
 
clrscr;
 
khoitao;
 
writeln;
 
writeln;
 
try(1);
 
writeln('co the sap xep duoc ',k,' cach');
 
readln;
 
END.
  • Đề:

    Tính giá trị biểu thức bằng pascal :(

    1-x2/2!+x4/4!-x6/6!...



    Quote
1-x2/2!+x4/4!-x6/6!...

Đây là x^2 hay là 2*x .





Đây là x^2 hay là 2*x .


Cái này Em cứ copy vào notepad rùi đổi đuôi thành .Pas là được. Sau đó lưu thành file.