Bài 16. Ví dụ làm việc với tệp
Chia sẻ bởi Trần Viết Cách |
Ngày 10/05/2019 |
99
Chia sẻ tài liệu: Bài 16. Ví dụ làm việc với tệp thuộc Tin học 11
Nội dung tài liệu:
Bài 16
ví dụ làm việc với tệp
Ví dụ 1: Một trường học phổ thông tổ chức cho giáo viên và học sinh của trường c?m trại, sinh hoạt ngoài trời ở Bãi biển Nhật Lệ. Để lên lịch đến thăm khu trại các lớp, Ban giám hiệu cần biết khoảng cách từ trại của mình(ở vị trí tọa độ (0;0)) đến trại của các lớp(giáo viên chủ nhiệm). Mỗi lớp có một khu trại, vị trí trại mỗi lớpđều có tọa độ nguyên (x;y).
Yêu cầu: Tính khoảng cách giữa trại của mỗi lớp và trại của Ban giám hiệu; sau đó xuất dữ liệu ra màn hình.
Dữ liệu vào: Cho file văn bản TRAI.INP gồm liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cách.
File TRAI.INP
Khi đọc file ta nên đọc một lần bao nhiêu số?
Nên đọc một lần 2 số
Đọc file tới khi nào dừng và dùng hàm gì để kiểm tra?
- Đọc cho tới cuối file
- Dùng hàm eof(f)
Công thức tính khoảng cách giữa gốc tọa độ đến tọa độ (x,y)?
D=sqrt(x*x+y*y)
- Khai báo;
Program vd1;
Uses crt;
Var tep : TEXT;
d : real;
x,y : Integer;
- Gán tên tệp;
BEGIN
Clrscr;
ASSIGN(tep, ‘TRAI.INP’);
- Mở tệp ra để đọc;
RESET(tep);
Các bước:
Thể hiện bằng pascal
- Đọc từng tọa độ trong file, mỗi lần đọc 2 số
Begin
read(f,x,y) ;
d:=sqrt(x*x+y*y);
Writeln(`Khoang cach: `,d:10:2);
End;
While not eof(f) do
- Đóng tệp.
Close(tep);
Readln;
END.
Nhấn F3 để mở tệp BAITAP.INP xem nội dung.
Nội dung tệp BAITAP.INP
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 các sơ đồ nêu ở hình 17
Ví dụ 2: Tính điện trở tương đương
Sơ đồ I
Sơ đồ V
Yêu cầu: Tính các điện trở tương đương
Dữ liệu vào: Cho file văn bản RESIST.DAT gồm nhiều dòng, mỗi dòng chứa ba số thực R1, R2 và R3 các số cách nhau một dấu cách. 0<=R1,R2,R3<=105
Dữ liệu ra: Ghi ra file RESIST.EQU. Năm điện trở tương đương của ba điện trở R1, R2, R3.
- Khai báo;
Program vd2;
Uses crt;
Var a: array[1..5] of real;
f1,f2 : TEXT;
R1,R2,R3 : real;
i : Integer;
- Gán tên tệp;
BEGIN
Clrscr;
- Mở tệp ra để đọc;
RESET(f1);
Các bước:
Thể hiện bằng pascal
- Đọc file
Begin
readln(f1,R1,R2,R3) ;
a[1]:=R1*R2*R3/(R1*R2+R1*R3+R2*R3);
a[2]:=R1*R2/(R1+R2)+R3;
a[3]:=R1*R3/(R1+R3)+R2;
a[4]:=R2*R3/(R2+R3)+R1;
a[5]:=R1+R2+R3;
for i:=1 to 5 do write(f2,a[i]:9:3,` `);
Writeln(f2);
End;
While not eof(f) do
- Đóng tệp.
Close(f1);
Readln;
END.
Close(f2);
ví dụ làm việc với tệp
Ví dụ 1: Một trường học phổ thông tổ chức cho giáo viên và học sinh của trường c?m trại, sinh hoạt ngoài trời ở Bãi biển Nhật Lệ. Để lên lịch đến thăm khu trại các lớp, Ban giám hiệu cần biết khoảng cách từ trại của mình(ở vị trí tọa độ (0;0)) đến trại của các lớp(giáo viên chủ nhiệm). Mỗi lớp có một khu trại, vị trí trại mỗi lớpđều có tọa độ nguyên (x;y).
Yêu cầu: Tính khoảng cách giữa trại của mỗi lớp và trại của Ban giám hiệu; sau đó xuất dữ liệu ra màn hình.
Dữ liệu vào: Cho file văn bản TRAI.INP gồm liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cách.
File TRAI.INP
Khi đọc file ta nên đọc một lần bao nhiêu số?
Nên đọc một lần 2 số
Đọc file tới khi nào dừng và dùng hàm gì để kiểm tra?
- Đọc cho tới cuối file
- Dùng hàm eof(f)
Công thức tính khoảng cách giữa gốc tọa độ đến tọa độ (x,y)?
D=sqrt(x*x+y*y)
- Khai báo;
Program vd1;
Uses crt;
Var tep : TEXT;
d : real;
x,y : Integer;
- Gán tên tệp;
BEGIN
Clrscr;
ASSIGN(tep, ‘TRAI.INP’);
- Mở tệp ra để đọc;
RESET(tep);
Các bước:
Thể hiện bằng pascal
- Đọc từng tọa độ trong file, mỗi lần đọc 2 số
Begin
read(f,x,y) ;
d:=sqrt(x*x+y*y);
Writeln(`Khoang cach: `,d:10:2);
End;
While not eof(f) do
- Đóng tệp.
Close(tep);
Readln;
END.
Nhấn F3 để mở tệp BAITAP.INP xem nội dung.
Nội dung tệp BAITAP.INP
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 các sơ đồ nêu ở hình 17
Ví dụ 2: Tính điện trở tương đương
Sơ đồ I
Sơ đồ V
Yêu cầu: Tính các điện trở tương đương
Dữ liệu vào: Cho file văn bản RESIST.DAT gồm nhiều dòng, mỗi dòng chứa ba số thực R1, R2 và R3 các số cách nhau một dấu cách. 0<=R1,R2,R3<=105
Dữ liệu ra: Ghi ra file RESIST.EQU. Năm điện trở tương đương của ba điện trở R1, R2, R3.
- Khai báo;
Program vd2;
Uses crt;
Var a: array[1..5] of real;
f1,f2 : TEXT;
R1,R2,R3 : real;
i : Integer;
- Gán tên tệp;
BEGIN
Clrscr;
- Mở tệp ra để đọc;
RESET(f1);
Các bước:
Thể hiện bằng pascal
- Đọc file
Begin
readln(f1,R1,R2,R3) ;
a[1]:=R1*R2*R3/(R1*R2+R1*R3+R2*R3);
a[2]:=R1*R2/(R1+R2)+R3;
a[3]:=R1*R3/(R1+R3)+R2;
a[4]:=R2*R3/(R2+R3)+R1;
a[5]:=R1+R2+R3;
for i:=1 to 5 do write(f2,a[i]:9:3,` `);
Writeln(f2);
End;
While not eof(f) do
- Đóng tệp.
Close(f1);
Readln;
END.
Close(f2);
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Trần Viết Cách
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)