Lý thuyết: Ví dụ làm việc với tệp trang 87 SGK Tin học 11

Chương trình đọc các cặp tọa độ từ tệp TRAI.TXT, tính và đưa ra màn hình khoảng cách (với độ chính xác hai chữ số sau dấu chấm thập phân) giữa hai trại của mỗi giáo viên chủ nhiệm và trại của thầy hiệu trưởng:

Bài làm:

Ví dụ 1

Một trường trung học phổ thông 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 tệp văn bản TRAI.TXT (như vậy tệp TRAI.TXT chứa liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cách và không kết thúc bằng kí tự xuống dòng).

Lời giải chi tiết:

Chương trình đọc các cặp tọa độ từ tệp TRAI.TXT, tính và đưa ra màn hình khoảng cách (với độ chính xác hai chữ số sau dấu chấm thập phân) giữa hai trại của mỗi giáo viên chủ nhiệm và trại của thầy hiệu trưởng:

program khoang_cach;

var d: real;

f: text; x,y: integer;

begin

assign(f, ’TRAI.TXT');

reset(f);

while not eof(f) do

begin

read(f,x,y);

d:= sqrt(x*x+y*y);

writeln('Khoang cach:',d:10:2);

readln

end;

close ( f) ,

end.


Ví dụ 2

Tính điện trở tương đương:

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. 

Mỗi cách mắc sẽ cho một điện trở tương đương khác nhau.

Cho tệp văn bản RESIST.DAT gồm nhiều dòng, mỗi dòng chứa ba số thực R1, R2, R3, các số cách nhau một dấu cách, 0<R1, R2, R3 <=105.

Chương trình đọc dữ liệu từ tệp RESIST.DAT và 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. 

Lời giải chi tiết:

Chương trình đọc dữ liệu từ tệp REIST.DAT, tính các điện trở tương đương và ghi kết quả ra tệp văn bản REIST.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:

program Dientro;

var a: array[1.. 5] of real;

R1,R2,R3: real;

i: integer; f1,f2: text;

begin

assign(f1, 'RESIST.DAT'); reset(f1);

assign(f2,'RESIT.EQU'); rewrite(f2);

while not eof(f1) do

begin

readln(f1,R1,R2,R3);

a[1] :=R1*R2*R3/ (R1*R2+R1*R3+R2*R3); a[2]:=R1*R2/(Rl+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 ;

Close(f1); close(f2);

end.

Xemloigiai.com

Xem thêm Bài tập & Lời giải

Trong bài: Bài 16: Ví dụ làm việc với tệp

Xem thêm lời giải SGK Tin học lớp 11

Giải bài tập tin học lớp 11 đầy đủ kiến thức và bài tập thực hành tin học 11 giúp để học tốt môn tin 11

Chương 1: Một số khái niệm về lập trình và ngôn ngữ lập trình

Chương 2: Chương trình đơn giản

Chương 3: Cấu trúc rẽ nhánh và lặp

Chương 4: Kiểu dữ liệu có cấu trúc

Chương 5: Tệp và thao tác với tệp

Chương 6: Chương trình con và lập trình có cấu trúc

Lớp 11 | Các môn học Lớp 11 | Giải bài tập, đề kiểm tra, đề thi Lớp 11 chọn lọc

Danh sách các môn học Lớp 11 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2024 ngắn gọn, chi tiết dễ hiểu.