Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
********************************************************
--Lệnh write và write cùng là lệnh xuất dữ liệu ra màn hình nhưng lệnh writeln thì in dữ liệu ra màn hình hình rồi đưa con trỏ xuống dòng còn write thì không đưa con trỏ xuống dòng
--Lệnh readln và read cùng là lệnh đọc giá trị của 1 biến nào đó nhưng lệnh readln đọc rồi đồng thời cũng đưa con trỏ xuống dòng còn read thì không đưa con trỏ xuống dòng
*Write ('...'); có chức năng: in một dòng chữ ... ra màn hình sau đó con trỏ không xuống dòng
Writeln('...'); có chức năng: in dòng chữ .... ra màn hình sau đó con trỏ xuống dòng
Read(a); có chức năng: nhập giá trị của biến a sau đó con trỏ không xuống dòng
Readln(a); có chức năng: nhập giá trị của biến a sau đó con trỏ xuống dòng
Sự khác nhau giữa lệnh Writeln và Write là ở chỗ: sau khi in xong giá trị của các biểu thức, lệnh Writeln sẽ đưa con trỏ xuống đầu dòng dưới, còn lệnh Write thì không. Ðiều này chỉ ảnh hưởng đến lệnh in tiếp theo mà thôi
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 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
program bang_cuu_chuong ;
Uses crt;
Var N , i : integer ;
Begin
Clrscr ;
write('Nhap so N=');
readln(N);
writeln;
write ('Bang nhan',N) ;
writeln;
for i:=1 to 10 do
writeln(N,'x',i:2,'=',N*i);
readln ;
End.
Ctrl + F9 : Chạy chương trình.
Alt + F9 : Dịch chương trình.
Write/Writeln : In kết quả ra màn hình nền.
Read/Readln : Dừng để xem kết quả trên màn hình nền.
Câu 1 : Theo mình thì :
- Lệnh Read : Ko xuống dòng sau khi lưu biến
- Lệnh Readln : Cóa xuống dòng sau khi lưu biến
var a,b,c,P,S:real;
begin
write('nhap a: ');readln(a);
write('nhap b: ');readln(b);
write('nhap c: ');readln(c);
P:=a+b+c;
S:=a*a/2;
writeln('chu vi: ',P);
write('dien tich: ',S);
readln
end.
- Vì là số đo cạnh tam giác nên bạn nên khai báo bằng kiểu dữ liệu real (số thực) thay vì integer (số nguyên).
- Phần giá trị biến S, vì a ứng với h nên \(\frac{ah}{2}=\frac{aa}{2}\)
- Xét tổng quan về nội dung cả hai chương trình này đều chưa đủ. Vì a=h => tam giác cần tìm diện tích và chu vi là tam giác vuông => phải thỏa mãn aa = bb + cc hoặc bb=aa+cc hoặc cc=aa+bb (định lí pitago)
- Nhưng trước hết, phải thỏa mãn bất đẳng thức tam giác: (dài lắm........ko viết đâu). Nếu bạn chưa học câu lệnh điều kiện thì chắc là 2 chương trình này đã đủ nội dung.
- 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() sau khi đưa kết quả con trỏ ở cuối dòng văn bản
+ Thủ tục writeln() sau khi đưa kết quả con trỏ chuyển xuống đầu dòng tiếp theo
"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.