Lệnh nhập 1 số thực từ bàn phím

Câu lệnh gán [:=]: :=;

- Các lệnh xuất nhập dữ liệu: READ/READLN, WRITE/WRITELN.

- Lời gọi hàm, thủ tục.

1.2. Câu lệnh có cấu trúc

- Câu lệnh ghép: BEGIN ... END;

- Các cấu trúc điều khiển: IF.., CASE..., FOR..., REPEAT..., WHILE...

1.3. Các lệnh xuất nhập dữ liệu

1.3.1. Lệnh xuất dữ liệu

Để xuất dữ liệu ra màn hình, ta sử dụng ba dạng sau:

  1. WRITE[ [, ,...]];
  2. WRITELN[ [, ,...]];
  3. WRITELN;

Các thủ tục trên có chức năng như sau:

  1. Sau khi xuất giá trị của các tham số ra màn hình thì con trỏ không xuống dòng.
  2.  Sau khi xuất giá trị của các tham số ra màn hình thì con trỏ xuống đầu dòng tiếp theo.
  3. Xuống dòng.

Các tham số có thể là các hằng, biến, biểu thức. Nếu có nhiều tham số trong câu lệnh thì các tham số phải được phân cách nhau bởi dấu phẩy.

Khi sử dụng lệnh WRITE/WRITELN, ta có hai cách viết: không quy cách và có qui cách:

Viết không quy cách: dữ liệu xuất ra sẽ được canh lề ở phía bên trái. Nếu dữ liệu là số thực thì sẽ được in ra dưới dạng biểu diễn khoa học.

Ví dụ:

WRITELN[x]; WRITE[sin[3*x]];

Viết có qui cách: dữ liệu xuất ra sẽ được canh lề ở phía bên phải.

Ví dụ:

WRITELN[x:5];

WRITE[sin[13*x]:5:2];

Câu lệnh

Kết quả trên màn hình

Writeln['Hello'];

Writeln['Hello':10];

Writeln[500];

Writeln[500:5];

Writeln[123.457]

Writeln[123.45:8:2]

Hello

     Hello

500

  500

1.2345700000E+02

  123.46

1.3.2. Nhập dữ liệu

Để nhập dữ liệu từ bàn phím vào các biến có kiểu dữ liệu chuẩn [trừ các biến kiểu BOOLEAN], ta sử dụng cú pháp sau đây:

READLN[ [,,...,]];

Chú ý: Khi gặp câu lệnh READLN; [không có tham số], chương trình sẽ dừng lại chờ người sử dụng nhấn phím ENTER mới chạy tiếp. 

1.3.4. Các hàm và thủ tục thường dùng trong nhập xuất dữ liệu

  • Hàm KEYPRESSED: Hàm trả về giá trị TRUE nếu như có một phím bất kỳ được nhấn, nếu không hàm cho giá trị là FALSE.
  • Hàm READKEY: Hàm có chức năng đọc một ký tự từ bộ đệm bàn phím.
  • Thủ tục GOTOXY[X,Y:Integer]: Di chuyển con trỏ đến cột X dòng Y.
  • Thủ tục CLRSCR: Xoá màn hình và đưa con trỏ về góc trên bên trái màn hình.
  • Thủ tục CLREOL: Xóa các ký tự từ vị trí con trỏ đến hết dòng.
  • Thủ tục DELLINE: Xoá dòng tại vị trí con trỏ và dồn các dòng ở phía dưới lên.
  • Thủ tục TEXTCOLOR[color:Byte]: Thiết lập màu cho các ký tự. Trong đó color 

    Î

     [0,15].
  • Thủ tục TEXTBACKGROUND[color:Byte]: Thiết lập màu nền cho màn hình.

Page 2

Viết chương trình tính chu vi và diện tích của hình chữ nhật có chiều dài hai cạnh là a, b [được nhập từ bàn phím].

Hướng dẫn:

- Nhập hai cạnh vào hai biến a, b.

- Chu vi hình chữ nhật bằng 2*[a+b]; Diện tích hình chữ nhật bằng a*b.

Bài tập 1.2:

Viết chương trình tính chu vi, diện tích hình vuông có cạnh a [được nhập từ bàn phím].

Hướng dẫn:

- Nhập cạnh vào biến canh.

- Chu vi hình vuông bằng 4*canh; Diện tích hình vuông bằng canh*canh.

Bài tập 1.3:

Viết chương trình tính chu vi và diện tích hình tròn có bán kính r [được nhập từ bàn phím].

Hướng dẫn:

- Nhập bán kính vào biến r.

- Chu vi đường tròn bằng 2*p*r.

- Diện tích hình tròn bằng p*r*r.

Bài tập 1.4:

Viết chương trình tính diện tích của tam giác có ba cạnh là a,b,c [được nhập từ bàn phím]

Hướng dẫn:

- Nhập ba cạnh của tam giác vào ba biến a,b,c.

- Nửa chu vi của tam giác p = [a+b+c]/2.

- Diện tích của tam giác: s =.

Bài tập 1.5:

Viết chương trình cho phép tính trung bình cộng của bốn số.

Hướng dẫn:

- Nhập bốn số vào bốn biến a, b, c, d

- Trung bình cộng của a, b, c, d bằng [a + b + c + d]/4.

Bài tập 1.6:

Viết chương trình cho phép tính trung bình cộng của bốn số với điều kiện chỉ được sử dụng hai biến.

Hướng dẫn:

- Dùng một biến S có giá trị ban đầu bằng 0.

- Dùng một biến để nhập số.

- Sau khi nhập một số cộng ngay vào biến S.

Bài tập 1.7:

Viết chương trình cho phép tính trung bình nhân của bốn số với điều kiện chỉ được sử dụng hai biến.

Hướng dẫn:

- Dùng một biến S có giá trị ban đầu bằng 1.

- Dùng một biến để nhập số.

- Sau khi nhập một số nhân ngay vào biến S.

- Trung bình nhân bốn số là căn bậc 4 tích của chúng [Dùng hai lần căn bậc hai].

Bài tập 1.8:

Viết chương trình nhập hai số, đổi giá trị hai số rồi in ra hai số.

Hướng dẫn:

- Dùng các biến a, b để lưu hai số được nhập từ bàn phím;

- Gán cho biến tam giá trị của a.

- Gán giá trị của b cho a. [Sau lệnh  này a có giá trị của b].

- Gán giá trị của tạm cho cho b [Sau lệnh này b có giá trị của tam = a].

Bài tập 1.9:

Giải bài tập 1.8 mà chỉ được sử dụng hai biến [Tức không được dùng thêm biến tạm].

Hướng dẫn:

- Cộng thêm b vào a. [Giá trị hai biến sau lệnh này là: a+b, b]

- Gán b bằng tổng trừ đi b [Sau lệnh này b có giá trị bằng a];

- Gán giá trị a bằng tổng trừ đi b mới [Sau lệnh này a có giá trị bằng b].

Bài tập 1.10:

Viết chương trình cho biết chữ số hàng trăm, hàng chục, hàng đơn vị của một số có ba chữ số. Ví dụ khi nhập số 357 thì máy in ra:

- Chữ số hàng trăm: 3.

- Chữ số hàng chục: 5.

- Chữ số hàng đơn vị: 7.

Hướng dẫn:

Sử dụng hàm mov để lấy số dư. Khi chia cho 10 để lấy số dư ta được chữ số hàng đơn vị. Sử dụng DIV để lấy phần nguyên. Khi chia cho 10 để lấy phần nguyên ta đã bỏ đi chữ số hàng đơn vị để số có ba chữ số còn số có hai chữ số.

program tinh_tich ;uses crt ;var a, b, x, y: integer ;beginclrscr ;writeln['Moi ban nhap so a'] ; read[a] ;writeln['Moi ban nhap so b'] ; read[b] ;x:= a*b ;writeln['Tich cua a va b la', x] ;

end.

  • lý thuyết
  • trắc nghiệm
  • hỏi đáp
  • bài tập sgk

Viết chương trình nhập 1 dãy N số thực từ bàn phím.Thông báo ra màn hình số lần xuất hiện của từng số trong mảng.

Các câu hỏi tương tự

Viết chương trình nhập 10 số tự nhiên bất kì từ bàn phím rồi thống kê xem chúng có bao nhiêu số chẵn, bao nhiêu số lẻ. Thực hiện in ra màn hình các số chẵn và số lẻ đó.

VD: INPUT: 5,6,9,10,20,23,7,8,13,31.

OUTPUT: + co 6 so le

                + co 4 so chan

                 + cac so chan la: 6  10   20   8

                + cac so le la:  5   9   23   7   13   31


5.3.2.1 Ý nghĩa Để đưa 1 giá trị vào 1 biến, ngoài phép gán rất thuận tiện và dễ sử dụng nhưng phải gán sẵn trong chương trình, ta còn có thể dùng các thủ tục READ và READLN để nhập dữ liệu từ các thiết bị nhập của máy tính. Trong phạm vi chương này, chúng ta chỉ xét việc dùng các lệnh nêu trên để nhập dữ liệu từ bàn phím - thiết bị nhập chuẩn.

5.3.2.2 Cú pháp

READ[biến1, biến2, ..., biếnn]; [1]

READLN[biến1, biến2, ..., biếnn]; [2]

READLN; [3]


5.3.2.3 Sự thực hiện

Dạng [1]: Khi thực hiện chương trình, gặp lệnh này máy tính dừng lại chờ người sử dụng gõ dữ liệu [từ bàn phím] lần lượt cho các biến theo thứ tự đã liệt kê trong câu lệnh. Kết thúc việc nhập, người sử dụng gõ phím ENTER. Với dạng [1] nếu số lượng dữ liệu nhập vào nhiều hơn số lượng biến được chỉ ra trong câu lệnh thì những dữ liệu dư ra vẫn được lưu lại trong vùng đệm và sẽ tự động chuyển vào các biến trong các lệnh READ hoặc READLN tiếp theo trong chương trình.

Dạng [2]: Khi thực hiện chương trình, gặp lệnh này máy tính dừng lại chờ người sử dụng gõ dữ liệu [từ bàn phím] lần lượt cho các biến theo thứ tự đã liệt kê trong câu lệnh. Kết thúc việc nhập, người sử dụng gõ phím ENTER. Dạng [2] khác với dạng [1] ở chỗ: nếu số lượng dữ liệu nhập vào nhiều hơn số lượng biến được chỉ ra trong câu lệnh thì những dữ liệu dư ra sẽ bị loại bỏ mà không được lưu lại trong vùng đệm, nên không gây ảnh hưởng gì tới các lệnh READ hoặc READLN tiếp theo trong chương trình.

Dạng [3]: Tạm dừng chương trình, chờ người sử dụng gõ phím ENTER để tiếp tục thực hiện các lệnh tiếp theo trong chương trình.


5.3.2.4 Chú ý
  • Các tham số của các lệnh nhập dữ liệu đặt trong dấu ngoặc [] chỉ cho phép là các biến mà thôi;
  • Khi nhập dữ liệu từ bàn phím lưu ý dùng ít nhất một dấu cách [khoảng trống] để phân cách các giá trị cần nhập cho các biến khác nhau, không hạn chế số dấu cách.
  • Trong qúa trình nhập dữ liệu, các lệnh nhập đã nêu sẽ tự kiểm tra tính tương thích giữa dữ liệu nhập vào với kiểu của biến đã được khai báo. Nếu không phù hợp về kiểu, máy tính sẽ thông báo lỗi và ngay lập tức cho dừng việc nhập dữ liệu.
  • Biến kiểu Boolean không nhập được bằng hình thức này.
  • Để nhập dữ liệu từ bàn phím người ta thường dùng dạng [2] để tránh việc dữ liệu còn lưu ở vùng đệm tự động chuyển vào biến khi người sử dụng không kiểm soát được.

Ví dụ 5.18 :

VAR a, b, c: INTEGER;

x: REAL;

Nếu dùng dạng [1] ta viết các câu lệnh:

READ[a, b];

READ[x];


và nhập các số từ bàn phím như sau:

164 188 2 []

5.5 []

ta thu được dữ liệu trong các biến là:

a = 164

b = 188


x = 2

Vì dữ liệu nhập thừa từ lệnh nhập phía trên đã tự động chuyển vào lệnh nhập ngay tiếp sau, do đó đôi khi ta nhận được dữ liệu không hoàn toàn theo ý muốn.


Trái lại, nếu dùng dạng [2] ta viết các câu lệnh:

READLN[a, b];

READLN[x];

và nhập các số từ bàn phím như sau:

164 188 2 []

5.5 []


ta thu được dữ liệu trong các biến là:

a=164


b=188

x=5.5

Vì các dữ liệu nhập thừa từ lệnh nhập trên không còn tác dụng khi lệnh đó kết thúc.

5.3.2.5 Ví dụ

Ví dụ 5.19: Lập chương trình nhập từ bàn phím kích thước 2 cạnh của một hình chữ nhật. Tính chu vi, diện tích của hình chữ nhật đó. In kết quả ra màn hình.


PROGRAM vidu_5_19;

USES Crt;

VAR a,b,cv,dt:Real;

{a: cạnh dai, b: canh ngan, cv: chu vi, dt: dien tich}

BEGIN

CLRSCR;


READLN[a,b];

cv:=2*[a+b];

dt:=a*b;

WRITELN[‘Chu vi hinh chu nhat = ‘,cv:8:3];

WRITELN[‘Dien tich hinh chu nhat = ‘,dt:8:3]:

READLN;

END.
5.3.3.1 Ý nghĩa

Trong chương trình nếu chỉ dùng lệnh READLN để nhập dữ liệu từ bàn phím vào biến sẽ có nhược điểm là không có sự chỉ dẫn cho người sử dụng biết cần nhập loại dữ liệu gì, cho biến nào. Để khắc phục nhược điểm trên, ta có thể kết hợp 2 thủ tục WRITE - in ra lời chỉ dẫn và READLN để nhập dữ liệu từ bàn phím vào biến, như vậy sẽ làm cho chương trình trở nên dễ sử dụng và đẹp mắt hơn.


5.3.3.2 Cú pháp

WRITE[ Lời chỉ dẫn.......];

READLN[biến1, biến2,..., biếnn];


5.3.3.3 Chú ý

Không nên dùng WRITELN để in ra lời chỉ dẫn nhập dữ liệu vì sau khi in xong lời chỉ dẫn con trỏ màn hình sẽ bị dời xuống đầu dòng tiếp theo.


5.3.3.4 Ví dụ

Ví dụ 5.20: Xét đoạn chương trình 1:

WRITE[‘ Chieu dai cua hinh chu nhat a= ‘];

READLN[a];

WRITE[‘ Chieu rong cua hinh chu nhat b= ‘];

READLN[b];

.....

Kết quả khi chạy chương trình:

Chieu dai cua hinh chu nhat a=  {Chờ NSD nhập dữ liệu cho biến a}

Chieu rong cua hinh chu nhat b= _ {Chờ NSD nhập dữ liệu cho biến b}


WRITELN[‘ Chieu dai cua hinh chu nhat a= ‘];

READLN[a];

WRITELN[‘ Chieu rong cua hinh chu nhat b= ‘];

READLN[b];

......

  • Kết quả khi chạy chương trình:

Chieu dai cua hinh chu nhat a=

_ {Chờ NSD nhập dữ liệu cho biến a}

Chieu rong cua hinh chu nhat b=

_ {Chờ NSD nhập dữ liệu cho biến b}

Cả 2 cách thực hiện đều đúng nhưng nên viết theo đoạn chương trình 1 sẽ hợp lý hơn.

Bài 5.1. Trong một chương trình có các khai báo sau:

Const max = 100;

Var x, y: real;

m, n,: integer;

a: char;

b: boolean;

Cho biết câu lệnh nào sau đây là sai? Vì sao?

y := -0.1;

max := m+n;

m+n := max;

m := n;

m := x;


x := n;

m := m mod x;

m := max + n;


b := m > n;

b := a +m >n;

a := a + 1;

m := m +1;

inc[m];

inc[x];


readln[x];

readln[a];

readln[m,n,x,y];


readln[m+n,x,y];

readln[a];

read[b];

readln[max,x,y,m,n];

writeln[b];

writeln[m+n];

writeln[x+m>y+n];

writeln[a:8:2];

write[x:8:2,m+n:8];

Page 2


CÁC VẤN ĐỀ CƠ BẢN CỦA TIN HỌC
Khái niệm thông tin [information] được sử dụng thường ngày. Con người có nhu cầu đọc báo, nghe đài, xem phim, video, đi tham quan, du lịch, tham khảo ý kiến người khác, ... để nhận được thêm thông tin mới. Thông tin mang lại cho con người sự hiểu biết, nhận thức tốt hơn về những đối tượng trong đời sống xã hội, trong thiên nhiên, ... giúp cho họ thực hiện hợp lý công việc cần làm để đạt tới mục đích một cách tốt nhất.

Khi tiếp nhận được thông tin, con người thường phải xử lý nó để tạo ra những thông tin mới, có ích hơn, từ đó có những phản ứng nhất định. Người tài xế chăm chú quan sát người, xe cộ đi lại trên đường, độ tốt xấu mặt đường, tính năng kỹ thuật cũng như vị trí của chiếc xe để quyết định, cần tăng tốc độ hay hãm phanh, cần bẻ lái sang trái hay sang phải... nhằm đảm bảo an toàn tối đa cho chuyến xe đi.

Thông tin có thể được phát sinh, được lưu trữ, được truyền, được tìm kiếm, được sao chép, được xử lý, nhân bản. Thông tin cũng có thể biến dạng, sai lệch hoặc bị phá hủy.

Mỗi tế bào sinh dục của những cá thể sinh vật mang thông tin di truyền quyết định những đặc trưng phát triển của cá thể đó. Gặp môi trường không thuận lợi, các thông tin di truyền đó có thể bị biến dạng, sai lệch dẫn đến sự hình thành những cá thể dị dạng. Ngược lại, bằng những tác động tốt của di truyền học chọn giống, ta có thể cấy hoặc làm thay đổi các thông tin di truyền theo hướng có lợi cho con người.

Thông tin được thể hiện dưới nhiều dạng thức khác nhau như sóng ánh sáng, sóng âm, điện từ, các ký hiệu viết trên giấy hoặc khắc trên gỗ, trên đá, trên các tấm kim loại ... Về nguyên tắc, bất kỳ cấu trúc vật chất nào hoặc bất kỳ dòng năng lượng nào cũng có thể mang thông tin. Chúng được gọi là những vật [giá] mang tin. Dữ liệu [data] là biểu diễn của thông tin và được thể hiện bằng các tín hiệu [signal] vật lý.

Thông tin chứa đựng ý nghĩa, còn dữ liệu là các dữ kiện không có cấu trúc và không có ý nghĩa rõ ràng nếu nó không được tổ chức và xử lý. Cùng một thông tin, có thể được biểu diễn bằng những dữ liệu khác nhau. Cùng biểu diễn một đơn vị, nhưng trong chữ số thập phân ta cùng ký hiệu 1, còn trong hệ đếm La Mã lại dùng ký hiệu I. Mỗi dữ liệu lại có thể được thể hiện bằng những ký hiệu vật lý khác nhau. Cũng là gật đầu, đối với nhiều dân tộc trên thế giới thì đó là tín hiệu thể hiện sự đồng tình; nhưng ngược lại, đối với người Hy Lạp, gật đầu để biểu lộ sự bất đồng. Cùng là ký hiệu I nhưng trong tiếng Anh có nghĩa là đại từ nhân xưng ngôi thứ nhất [tôi] còn trong toán học lại là chữ số La Mã có giá trị là 1. Mỗi tín hiệu có thể dùng để thể hiện các thông tin khác nhau. Chẳng hạn như trong máy tính điện tử [MTĐT], nhóm 8 chữ số 01000001, nếu là số sẽ thể hiện số 65, còn nếu là chữ sẽ là chữ “A”.

Như vậy, Thông tin là một khái niệm trừu tượng, tồn tại khách quan, có thể nhớ trong đối tượng, biến đổi trong đối tượng và áp dụng để điều khiển đối tượng. Thông tin làm tăng thêm hiểu biết của con người, là nguồn gốc của nhận thức. Thông tin về một đối tượng chính là một dữ kiện về đối tượng đó, chúng giúp ta nhận biết và hiểu được đối tượng.

Dữ liệu [data] là hình thức thể hiện của thông tin trong mục đích lưu trữ và xử lý nhất định. Khái niệm dữ liệu xuất hiện cùng với việc xử lý thông tin bằng máy tính. Vì thế trong nhiều tài liệu người ta định nghĩa dữ liệu là đối tượng xử lý của máy tính. Thông tin luôn mang một ý nghĩa xác định nhưng hình thức thể hiện của thông tin rõ ràng mang tính quy ước.

Tri thức [knowledge] có ý nghĩa khái quát hơn thông tin. Những nhận thức thu nhận được từ nhiều thông tin trong một lĩnh vực cụ thể nào đó, có tính hướng mục đích mới trở thành tri thức. Như vậy tri thức là mục đích của nhận thức trên cơ sở tiếp nhận thông tin. Quá trình xử lý thông tin chính là quá trình nhận thức để có tri thức.



Thông tin được chia làm hai loại là thông tin liên tục và thông tin không liên tục [thông tin rời rạc]. Thông tin liên tục đặc trưng cho các đại lượng mà số lượng các giá trị có thể tiếp nhận được là vô hạn như độ dài dịch chuyển cơ học, điện áp, …. Còn thông tin rời rạc đặc trưng cho các đại lượng mà số lượng các giá trị có thể kể ra được như số trang sách của một cuốn sách, tên sinh viên trong lớp, địa chỉ của hộ gia đình trên phố, …

Thông tin rời rạc có thể biểu diễn thông tin qua các bộ ký hiệu [mã ký tự] mà ta gọi là bảng chữ. Giả sử, ta có tập đối tượng X cần biểu diễn. Để làm điều này, ta chọn một tập hữu hạn A các kí hiệu làm bảng chữ mà mỗi kí hiệu là một chữ. Chúng ta sẽ gọi mỗi dãy hữu hạn các chữ là một từ trên A. Ví dụ nếu A là tập các chữ số thì mỗi từ chính là một số [cho bằng một dãy số]. Mã hoá các thông tin rời rạc của một tập trên một bảng chữ A chính là cách gán cho mỗi phần tử x thuộc X, một từ y trên A. Phép gán mã phải đảm bảo tính chất: mã của hai đối tượng khác nhau phải khác nhau. Tính chất này đảm bảo khi biết mã có thể tìm được đối tượng tương ứng. Quá trình gán mã được gọi là phép lập mã. Quá trình ngược được gọi là phép giải mã. Ví dụ, nếu X là tập các thí sinh, chọn A là tập các chữ số thì mã của một thí sinh có thể lấy là số báo danh của thí sinh đó. Số báo danh phải cho phép chỉ định duy nhất một thí sinh.

Dữ liệu là hình thức biểu diễn thông tin với mục đích xử lý thông tin. Vậy mã hoá chính là con đường chuyển từ thông tin thành dữ liệu. Các thông tin dưới dạng số, văn bản, âm thanh, hình ảnh, … đều phải chuyển dưới dạng mã phù hợp để máy tính có thể làm việc được.




Chia sẻ với bạn bè của bạn:

Page 3

trang14/63
Chuyển đổi dữ liệu20.05.2018
Kích4.67 Mb.
#39016

1   ...   10   11   12   13   14   15   16   17   ...   63

1   ...   10   11   12   13   14   15   16   17   ...   63


Video liên quan

Chủ Đề