giúp mình tìm lỗi sai, chạy chương trình được nhưng kiểm tra kết quả không đúng.
DE BAI: Viết chương trình nhập vào mảng 1 chiều a với N phần tử < 20. Đếm số phần tử chia hết cho 5 và ghi vào tệp T.TXT
Program demsophantu;
Uses crt;
var N,i,dem,x:integer;
f:text;
a:array[1..100] of integer;
Begin
Clrscr;
write('Nhap so phan tu N = ');
readln(N);
for i:=1 to N do
begin
writeln('Phan tu thu ',i,' : ');
readln(a[i]);
end;
assign(f,'E:\11A9\T.TXT');
rewrite(f);
dem:=0;
For i:=1 to N do write(f,a[i],' ');
reset(f);
while not eof(f) do
begin
readln(f,x);
If x mod 5 = 0 then dem:=dem+1;
end;
writeln('So phan tu chia het cho 5 la:', dem);
close(f);
readln
End.
tới đoạn For i:=1 to N do write(f,a[i],’ ‘); đúng
đoạn còn lại bạn nên viết là
for i :=1 to n do if (a[i] mod 5)=0 then dem:=dem+1;
write(f,’so phan tu chia het cho 5 la:’,dem); close(f);
end.
Có thể do máy ở trường chạy được nhưng máy ở nhà bạn chạy không được vì do ở trường máy có ổ đĩa E đúng với đường dẫn của tệp
Vói bài này ở nhà thì bạn nên đổi Assign(f,’E:\11A9\T.TXT’); thành Asign(‘T.TXT’);