BÀI 16 VÍ DỤ LÀM VIỆC VỚI FILE Thời gian 1 tiết.

Download Report

Transcript BÀI 16 VÍ DỤ LÀM VIỆC VỚI FILE Thời gian 1 tiết.

Slide 1

BÀI 16

VÍ DỤ LÀM VIỆC VỚI FILE

Thời gian 1 tiết


Slide 2

Quan sát sách giáo khoa trang 87, một trường
THPT tổ chức cho giáo viên và học sinh của
trường đi cắm trại, sinh hoạt ngoài trời ở vườn
quốc gia Cúc Phương. Để lên lịch đến thăm khu
trại các lớp. Thầy hiệu trưởng cần biết khoảng
cách từ trại của mình (ở vị trí có tọa độ (0,0))
đến trại của các giáo viên chủ nhiệm. Mỗi lớp có
một khu trại, vị trí trại của mỗi giáo viên chủ
nhiệm đều có tọa độ nguyên (x,y). Được ghi
trong file văn bản TRAI.TXT.

Viết chương trình đọc các cặp tọa độ từ
file TRAI.TXT. Tính rồi đưa ra màn hình
khoảng cách giữa trại của mỗi giáo viên
chủ nhiệm với trại của thầy hiệu trưởng.


Slide 3

Quan sát chương trình


Slide 4

Cho ba điện trở R1, R2, R3. Sử dụng cả
ba điện trở để tạo ra năm mạch điện có
điện trở tương đương khác nhau bằng
cách mắc theo sơ đồ (hình 17 _trang 88 _
SGK). Cho file văn bản RESIST.DAT gồm
nhiều dòng mỗi dòng ba số thực R1, R2,
R3, các số cách nhau một dấu cách,
0< R1, R2, R3<105 .
Viết chương trình đọc dữ liệu từ file
RESIST.DAT, Tính các điện trở tương
đương và ghi kết quả ra file văn bản
RESIST.EQU, mỗi dòng ghi năm điện trở
tương đương của ba điện trở ở dòng dữ
liệu vào tương ứng.


Slide 5

Quan sát chương trình


Slide 6

Đọc vào n một dãy số nguyên
(n<=100). Ghi dãy số đó vào file
có tên BAITAP.INP


Slide 7

- Khai báo

- Gắn tên file
- Mở file ra để ghi
- Nhập số lượng phần tử trong mảng;
- Đọc vào mảng;
- Ghi ra file BAITAP.INP;

- Đóng file.

Program Bai_tap_1;
Uses crt;
Var
tep2: TEXT;
A:ARRAY[1 .. 100] of Integer;
i,n:integer;
Begin
Clrscr;
ASSIGN(tep2, ‘D:\BAITAP.INP’);
REWRITE (tep2);
Write(‘Nhap n = ');Readln(n);
For i:=1 to n do
Begin
Write(‘Nhap so thu ',i,'=');
Readln(A[i]);
Write(tep2,A[i]);
End;
Close(tep2);
Readln;
END.


Slide 8

Quan sát chương trình


Slide 9

Nhấn F3 để mở
BAITAP.INP
xem nội dung

Nội dung file
BAITAP.INP


Slide 10

Mở file Baitap.inp, in dãy số
trong file ra màn hình. Tính tổng
của các dãy số đó.


Slide 11

Program Bai_tap_2;
Uses crt;
Var
tep: TEXT;
A:ARRAY[1 .. 100] of Integer;
S,i,n:Integer;
Begin
Clrscr;

- Khai báo

- Gắn tên file

ASSIGN(tep, 'D:\BAITAP.INP’);

- Mở file ra để đọc
- Gán tổng S của dãy= 0;
- Dãy số nguyên (không
biết bao nhiêu số nhưng
vẫn in ra được)

RESET(tep);

-

Đọc dữ liệu
BAITAP.INP;

từ

file

S:=0;
WHILE NOT(EOF(tep)) DO
Begin
Readln(tep,A[i]);


Slide 12

Write(A[i]:5);
S:=S+A[i];
End;
- In ra màn hình dãy số;

- Tính tổng;
- Đóng file.

Writeln;
Writeln('Tong cua day so la : ',S);
Close(tep);
Readln;
END.


Slide 13

Quan sát chương trình