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

Giáo trình Tin học đại cương part 10

19 12 0

Đ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

Định dạng
Số trang 19
Dung lượng 298,02 KB

Nội dung

Tham khảo tài liệu ''giáo trình tin học đại cương part 10'', tài liệu phổ thông, tin học phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

2: sua; 3: them; 4: doc; end; until i=5; readln; end 2.7 - Tệp văn * Khai báo tệp văn Trong Pascal có kiểu tệp ñịnh nghĩa trước ñó tệp văn bản, ñược ñịnh nghĩa với từ chuẩn TEXT Khai báo kiểu tệp văn bản; Var Ten_bien: TEXT; Các phần tử TEXT kiểu kí tự, tổ chức thành dịng với độ dài dịng khác nhau, nhờ có thêm dấu hết dịng (End of Line) ðó cặp kí tự điều khiển CR (Carriage Return, nhẩy ñầu dòng, mã ASCII 13) LR(Line Feed: xuống dịng, mã ASCII là10), chúng dùng để ngăn cách dãy kí tự tương ứng với dịng khác Ví dụ: ðoạn văn sau: HANOI 123 THUDO ðược chứa tệp văn thành dãy sau: HANOI CR LF 123 CR LF THUDO CR LF EOF Do tệp văn tổ chức thành dịng nên việc ghi đọc tệp văn có thẻ tục ghi đọc theo dịng * Ghi vào tệp văn Có thể ghi giá trị kiểu Integer, real, boolean, string vào tệp văn lệnh Write Writeln, lệnh cho phép chuyển giá trị kiểu nói sang dạng kí tự Có dạng sau: Dạng 1: Write(biến _tệp, biểu_thức_1, biểu_thức_2, , biểu_thức_n); Ghi giá trị biểu thức vào tệp dấu hết dịng Dạng 2: Writeln(biến _tệp, biểu_thức_1, biểu_thức_2, , biểu_thức_n); Ghi giá trị biểu thức vào tệp có dấu hết dịng Dạng 3: Writeln(biến _tệp); Ghi dấu hết dòng vào tệp * ðọc liệu từ tệp vănbản Chúng ta đọc kí tự, số nguyên, số thực, boolean từ tệp văn thông qua thủ tục sau: Dạng 1: read(biến _tệp, biến1, biến2, biến3, , biếnn); ðọc giá trị từ tệp gán cho biến tương ứng không sang ñầu dòng Dạng 2: 172 Trường ðại học Nơng nghiệp - Giáo trình Tin học đại cương - 172 readln(biến _tệp, biến1, biến2, biến3, , biếnn); ðọc giá trị từ tệp gán cho biến tương ứng đưa trỏ sang đầu dịng Dạng 3: readln(biến _tệp); ðưa trỏ sang ñầu dòng Hàm chuẩn EOLN(f) phát dấu hết dòng tệp f Hàm cho giá trị True kết thúc dòng, ngược lại False * Các chương trình xử lý tệp văn Bài toán 1: Tạo tệp văn ghi lại n dịng văn nhập vào từ bàn phím ðọc tệp tạo hình Program Tao_doc_tep_van_ban; uses crt; var i,n: integer; f: text; s: string; {**************} procedure tao; { thu tuc tao } begin clrscr; assign(f, ‘vanban.txt’); rewrite(f); write(‘ So dong van ban: ‘); readln(n); for i:=1 to n begin write(‘ Nhap dong ‘, i ); readln(s); writeln(f, s); end; close(f); end; { ket thuc thu tuc tao} { ***************} Procedure doc; { thu tuc doc } begin clrscr; Assign(f, 'vanban.txt' ); reset(f); Writeln(‘ Tep van ban da tao’); while not eof(f) begin readln(f,s); writeln(s); end; close(f); end; { ket thuc thu tuc doc} {******************} { than chuong trinh chinh} repeat clrscr; 173 Trường ðại học Nơng nghiệp - Giáo trình Tin học ñại cương - 173 writeln(‘ 1- Tao tep’); writeln(‘ 2- Doc tep’); writeln(‘ 3- Ket thuc’); write(‘ Hay chon mot viec ? ‘); readln(i); case i of 1: tao; 2: doc; end; until i=3; readln; end Bài toán 2: ðọc xâu văn từ tệp, kiểm tra xem xâu có đối xứng khơng, sau xếp chữ số xâu theo thứ tự tăng dần chương trình PROGRAM DOC_XAU_SAP_TT_SO; USES CRT; TYPE MANG=ARRAY[1 200] OF CHAR; VAR I,K,L,N:INTEGER;T:BOOLEAN;S:STRING;A:MANG;F:TEXT; PROCEDURE SAPTANG(VAR X:MANG;M:INTEGER); VAR J,Z:INTEGER;P:CHAR; BEGIN FOR J:=1 TO M-1 DO FOR Z:=1 TO M-J DO IF X[Z]>X[Z+1] THEN BEGIN P:=X[Z]; X[Z]:=X[Z+1]; X[Z+1]:=P; END; END; BEGIN { thân chương trinh chính} CLRSCR; ASSIGN(F,'VB.TXT'); RESET(F); READLN(F,S); WRITELN(' XAU DOC DUOC'); WRITELN(S); N:=LENGTH(S); {tim xau doi xung} K:=1;L:=N;T:=TRUE; WHILE (K=48) AND (ORD(S[I])=48) AND (ORD(S[I]) 19 Loại = ‘ TRUOT' Tổng 25 Thưởng = Lương Ngày cơng 500000 Loại = ‘THAP’ Tiền 50000 Loại = ‘TB’ 20000

Ngày đăng: 08/05/2021, 14:02