PDA

View Full Version : sự khác nhau giữa Read và Readln trong Turbo Pascal là gì?



lehang_gb1
24-09-2009, 08:21
Trong Turbo Pascal
Sự khác nhau giữa thủ tục chuẩn đưa dữ liệu ra màn hình Write và Writeln là
+ Với thủ tục write(<Danh sách kết quả>) sau khi đưa kết quả con trỏ ở cuối dòng văn bản
+ Thủ tục writeln(<Danh sách kết quả>) sau khi đưa kết quả con trỏ chuyển xuống đầu dòng tiếp theo
Vậy còn sự khác nhau giữa thủ tục nhập dữ liệu từ bàn phím Read(<Danh sách biến> và Readln(<Danh sách biến> là gì mà ta thường dùng Readln(<danh sách biến>?

quangtq
24-09-2009, 18:00
Tương tự chị ạ.
Nhưng thấy rõ hơn khi dùng file.

gs.g
25-09-2009, 08:19
"Ln" trong ReadLn() hoặc WriteLn() là viết tắt của Line, nghĩa là xong lệnh đó thì xuống dòng.

zeldery
25-09-2009, 19:32
Sự khác biệt ở readln và read là ở chỗ nó xử lý các tham số còn lại thế nào.
Ví dụ, bạn ghi hai dòng lệnh
read(a);
read(b);
Và khi chương trình chạy, bạn nhập hai số 20 10 <enter> thì nó sẽ là hai giá trị của biến a,b.
Nhưng khi bạn đổi read thành readln, và nhập như trên, nó sẽ dừng chương trình yêu cầu bạn nhập thêm một số nữa. Vì đối số của readln là biến a (ứng với giá trị 20 đã được đọc), nó sẽ bỏ hết phần còn lại (nghĩa là bỏ giá trị 10 ra khỏi bộ nhớ), do đó nó yêu cầu bạn nhập tiếp. Còn read thì giữ nó trong bộ nhớ, nên đến câu lệnh thứ 2 (read(b)) nó lấy giá trị này gán cho b luôn