NMMT - 2 - Bien

(tiếp theo của Nhập môn máy tính - 1)



Chú thích

Trong khi viết mã, để ghi lại các lưu ý cho một đoạn mã, cho một dòng mã, hay một ghi chú bất kì, bạn có thể sử dụng chức năng chú thích.

Chú thích sẽ được bắt đầu bằng dấu //, sau đó là nội dung của chú thích. Toàn bộ nội dung trên một hàng, nằm sau dấu chú thích sẽ được máy tính bỏ qua trong quá trình thực thi đoạn mã.

Ví dụ, bạn nhập đoạn mã sau và chạy thử.

<!DOCTYPE html>
<html>
<body>

<script>
 //Vi du ve chuoi
 document.write(1); //in so 1
 document.write ("document.write(1);"); //in mot chuoi
</script>

</body>
</html>

 

Biến và dấu gán “=”


Phần này trình bày về khái niệm biến và lệnh gán trong đoạn mã lập trình.

Biến giống như một cái hộp trong bộ nhớ máy tính, cái hộp này dùng để chứa: một số, một chuỗi, hoặc một giá trị bất kì (Hình 5).



Từ hình trên (Hình 5), var x là lệnh khai báo một biến có tên là x. Nói một cách hình ảnh, sau lệnh var x, máy tính sẽ tạo một cái hộp trong bộ nhớ và gắn nhãn là x.

Dấu “=” trong lệnh x = 7 sẽ thực hiện gán giá trị cho một biến, ở đây là gán giá trị 7 vào biến x, nghĩa là đem bỏ số 7 vào cái hộp.

Nhập đoạn mã sau và chạy thử.

<!DOCTYPE html>
<html>
<body>

<script>

var x;
 x = 7;

 document.write(x);
 document.write("<br/>" + "Gia tri cua bien la: ", x);  //<br/> lenh xuong hang
 document.write("<br/>" + "Noi dung cua hop la: ", x);

</script>

</body>
</html>

Khi chạy đoạn mã trên, máy tính sẽ xuất ra màn hình ba hàng, với số 7 ở cuối mỗi hàng, cụ thể là:

7
Gia tri cua bien la: 7
Noi dung cua hop la: 7

Trong đoạn mã, các lệnh:

 document.write(x);
 document.write("<br/>" + "Gia tri cua bien la: ", x);  //<br/> lenh xuong hang
 document.write("<br/>" + "Noi dung cua hop la: ", x);

có sử dụng đến biến x, trong trường hợp này là lấy giá trị đang chứa trong biến x để in ra màn hình. Hay nói cách khác là lấy giá trị đang có trong cái hộp x để in ra màn hình.

Tiếp theo, hãy thay đổi hàng x = 7 thành x = 8, rồi chạy thử đoạn mã. Bạn sẽ thấy kết quả xuất sẽ đồng loạt thay số 7 thành số 8.

Như vậy, lệnh x = 8 đã làm thay đổi giá trị của biến x. Do biến x chỉ chứa được một giá trị, nên lệnh x = 8 sẽ bỏ số 7 trong hộp x ra và thay vào đó là số 8.

Chúng ta đã biết có hai kiểu dữ liệu phổ biến là số và chuỗi. Vì vậy, bạn có thể thử bỏ một chuỗi vào trong hộp x xem sao. Để thực hiện chỉ cần thay dòng lệnh x = 8 thành x = “hi”. Chạy đoạn mã, sẽ thấy trong kết quả, toàn bộ số 8 được thay thế bằng chuỗi “hi”.

Để đặt tên cho biến, có thể chọn tên bất kì không nhất thiết phải là x như trong ví dụ. Bạn có thể đặt tên biến là abc, như trong đoạn mã sau.

var abc;
 abc = 7;
 document.write(abc);
 document.write("<br/>" + "Gia tri cua bien la: ", abc
 document.write("<br/>" + "Noi dung cua hop la: ", abc);

Sử dụng biến sẽ giúp tăng hiệu quả trong các công việc có tính lặp lại. Ví dụ, khi muốn thử chạy chương trình với một số giá trị nào đó. Chúng ta sẽ tạo ra một biến, gán giá trị cho biến, và các câu lệnh tiếp sau sẽ sử dụng tới tên biến này. Nếu chúng ta cần chạy chương trình trên các giá trị còn lại, chúng ta chỉ cần thay đổi giá trị một lần tại lệnh gán giá trị cho biến.

Lưu ý: dấu = ở đây có ý nghĩa khác so với dấu = trong toán học. Trong toán học khi bạn nói x = y nghĩa là x luôn luôn bằng y. Tuy nhiên, trong đoạn mã lập trình, dấu bằng chỉ là lệnh gán giá trị. Ví dụ, lệnh x = 7 sẽ lấy giá trị 7 bỏ vào cái hộp có gắn nhãn là x, tức là tại thời điểm lệnh này chạy, hộp x sẽ có giá trị bằng 7, còn sau đó trong chương trình nếu có lệnh gán giá trị khác cho x thì lúc đó x không bằng 7 nữa.

Bài tập

Viết một đoạn mã để xuất các nội dung sau ra màn hình. Yêu cầu trong đoạn mã, từ Dalat chỉ được xuất hiện một lần.

Dalat Dalat Dalat Dalat
Mau xanh Dalat
Nho ve Dalat mot chieu mua

Đáp án:

<!DOCTYPE html>
<html>
<body>

<script>

var x;
 x = "Dalat";

 document.write(x, x, x, x);
 document.write("<br/>" + "Mau xanh ", x);
 document.write("<br/>" + "Nho ve ", x, " mot chieu mua");

</script>

</body>
</html>


-------------------------
Tham khảo
Dựa theo bài giảng của tác giả Nick Parlante, trong loạt bài giảng về Computer Science 101 – Đại học Stanford – Mỹ - 2014.
https://class.coursera.org/cs101-selfservice/wiki/view?page=code-1
------------------------
Cập nhật: 2014/6/21

NMMT - 1 - Mo dau



Nhập môn máy tính

 

Mở đầu


Với tài liệu này, hi vọng các bạn sẽ hiểu thêm về chiếc máy vi tính, về thế giới Internet.

Để theo dõi bài viết, bạn không cần phải có bất cứ kiến thức nền tảng nào về máy tính, về mạng máy tính, về Internet.

Tài liệu sẽ trình bày các đặc điểm cơ bản của máy tính, ví dụ: nó hoạt động ra sao, nó có thể làm được những việc gì, và những việc gì nó không thể làm được.

Khi nói đến máy tính, có một công thức phổ biến là:

Computer = Powerful + Stupid

Tạm dịch:

Máy tính = Tính toán nhanh + Trí tuệ tầm thường

-         Tính toán nhanh: là nói về khả năng xử lý các phép toán của máy tính, nó có thể thực hiện hàng tỉ phép toán trong một giây.

-         Trí tuệ tầm thường: muốn nói về cái cách nó làm một công việc, nó làm việc hết sức máy móc, không có sáng tạo, chỉ làm được các phép toán đơn giản, và không có khả năng nhìn nhận vấn đề một cách sâu sắc như con người.

Tuy nhiên, bản thân máy tính lại là một sự kết hợp hiệu quả giữa hai đặc điểm này. Đây là một sự kết hợp khá đặc biệt. Sự kết hợp giữa khả năng làm việc rất nhanh và đặc tính là chỉ làm được các việc rất đơn giản.

Hãy quan sát một đoạn mã lập trình dưới đây, để thấy các công việc mà máy tính có thể thực hiện được là rất đơn giản.

CongViec1 (1+1)
CongViec2  2 < 10 ?
CongViec3 …
CongViec4 …

Ở đoạn mã trên, công việc 1, máy tính sẽ thực hiện phép cộng: 1 + 1 và công việc 2, máy tính sẽ cho biết 2 có nhỏ hơn 10 hay không?

Tuy nhiên, như chúng ta đã biết, máy tính lại là một công cụ rất hữu ích, không thể thiếu trong cuộc sống, nó hỗ trợ con người trong mọi lĩnh vực.

Bằng cách nào, mà từ một chiếc máy chỉ có khả năng thực hiện các công việc đơn giản, làm việc một cách máy móc, lại trở thành một thiết bị rất hữu ích và không thể thiếu trong cuộc sống như vậy? Bạn sẽ tìm được câu trả lời ở các phần sau.

 

Máy tính hoạt động như thế nào?


Máy tính được điều khiển bằng các đoạn mã lập trình.

Hình 1 là mô hình một cái máy tính với đoạn mã lập trình bên trong. Đoạn mã thực hiện hai công việc là: thực hiện phép tính 1 + 1 và cho biết 2 có nhỏ hơn 10 hay không.



Trong mô hình đơn giản này, máy tính sẽ thực hiện tuần tự các lệnh từ trên xuống. Tới đây có thể bạn sẽ thắc mắc: “Tại sao máy tính chỉ làm được các công việc đơn giản như vậy, thì làm sao nó lại có rất nhiều các ứng dụng hữu ích trong cuộc sống?”.

Hãy quan sát Hình 2 dưới đây.



Câu trả lời chính là lập trình cho máy tính.

Sau đây là các bước để có được một chương trình ứng dụng cho máy tính. Ví dụ, chương trình tìm và khử tình trạng bị mắt đỏ trên các tấm hình.

-         Bước đầu lập trình viên sẽ có ý tưởng là tìm và khử tình trạng bị mắt đỏ trên các tấm hình.

-         Bằng trí tưởng tượng và óc sáng tạo, anh ta sẽ nghĩ ra một số giải pháp để giải quyết bài toán này bằng máy tính.

-         Sau đó sẽ thực hiện cấu trúc và phân rã bài toán ban đầu thành nhiều bài toán nhỏ hơn, để máy tính có thể thực hiện được.

-         Sau cùng là lập trình, tức là hướng dẫn cho máy tính làm từng bước để làm sao đạt được mục đích cuối cùng.

Trong thực tế, các tiện ích, các ứng dụng mà bạn đã sử dụng trong điện thoại di động, máy chụp hình kĩ thuật số, hoặc trong máy tính, tất cả đều là kết quả do một hoặc nhiều người đã làm việc vất vả để tạo ra nó.

Ở đây đã có một sự cộng tác hiệu quả, giữa một bên là lập trình viên, là con người với óc sáng tạo và cảm nhận sâu sắc về thế giới, luôn nghĩ ra những việc có ích để làm. Và một bên là máy tính với khả năng xử lý rất nhanh các lệnh do người lập trình đưa ra. Để cuối cùng có được kết quả như mong muốn của con người, xem Hình 3.



Sự cộng tác giữa con người và máy tính đã giúp cho máy tính đang làm được rất nhiều việc hữu ích.

Vì vậy, tài liệu này sẽ tập trung vào hai mảng lớn là tìm hiểu về máy tính và lập trình cho máy tính làm việc.

 

Lập trình cho máy tính


Lập trình là việc sử dụng một ngôn ngữ mà máy tính có thể hiểu được, để lập chương trình (kịch bản) cho máy tính làm việc.

Phần tiếp theo sẽ trình bày một số ví dụ đơn giản về lập trình cho máy tính, mục đích là giúp bạn làm quen với khái niệm lập trình, và phần nào hiểu thêm về bản chất làm việc rất máy móc của máy tính.

Để đơn giản, ví dụ sẽ sử dụng ngôn ngữ lập trình JavaScript. Với ngôn ngữ này bạn chỉ cần có trình duyệt web là có thể lập trình, chạy thử và xem kết quả. Tất nhiên, chỉ là các chương trình đơn giản đầu tiên.

Ví dụ 1: Viết chương trình in các số ra màn hình.

Để thực hiện, bạn mở trình duyệt web lên (Mozilla Firefox, Chrome, Internet Explorer).

Dán đường dẫn sau vào thanh địa chỉ của trình duyệt web: http://www.w3schools.com/js/tryit.asp?filename=tryjs_myfirst

Màn hình kết quả như Hình 4 dưới đây.



Ở Hình 4, bạn nhập mã lập trình vào cửa sổ phía trái, có tên là Source Code, sau đó bấm nút Submit Code để ra lệnh cho máy tính thực thi đoạn mã lập trình, và máy tính sẽ xuất kết quả sang màn hình phía bên phải, có tên là Result.

In số

Để in các số: 1, 2, 3 ra màn hình, bạn xóa sạch màn hình Source Code và nhập vào đoạn mã sau.

<!DOCTYPE html>
<html>
<body>

<script>
 document.write(1);
document.write (2, 3);
</script>

</body>
</html>

Sau đó bấm nút Submit Code để xem kết quả.

Việc học một ngôn ngữ lập trình (ví dụ JavaScript) cũng tương tự như học một ngoại ngữ. Bạn học được càng nhiều thì càng có khả năng nói chuyện được với máy tính nhiều hơn. Vì vậy, bạn phải thật kiên trì.

Vì máy tính làm việc rất máy móc, nên cú pháp của ngôn ngữ lập trình quy định rất chặt chẽ. Bạn không thể viết một cách tự do như khi viết email. Bạn có thể kiểm tra tính chất này bằng cách xóa đi một dấu chấm, một dấu phẩy, hay một dấu ngoặc đơn ở đoạn mã bên trên là máy tính sẽ không hiểu và không thể thực thi đoạn mã.

In chuỗi

Chuỗi là một dãy các kí tự. Ví dụ: địa chỉ một trang web như “www.google.com” được xem là một chuỗi. Hoặc khi các bạn nhập văn bản trong một trình soạn thảo, thì một đoạn văn bản đó cũng có thể được xem là một chuỗi.

Bạn có thể thêm dòng mã:

 document.write (“Chao cac ban”);

vào sau dòng mã:

document.write (2, 3);

ở ví dụ in số, để in chuỗi Chao cac ban ra màn hình.

Trong JavaScript, chuỗi thường được bao lại bằng một cặp dấu nháy kép.

Ví dụ sau phản ánh rất rõ điều này, cũng cùng là nội dung:

document.write(1)

Tuy nhiên, khi viết bình thường nó sẽ là một lệnh để máy tính thực thi, nhưng khi bao nội dung đó bằng một cặp dấu nháy kép, nó sẽ trở thành một chuỗi.

Bạn nhập đoạn mã sau và chạy thử:

<!DOCTYPE html>
<html>
<body>

<script>
 document.write(1);
 document.write ("document.write(1);");
</script>

</body>
</html>

Kết quả sẽ là:

1document.write(1);

-------------------------
Tham khảo
Dựa theo bài giảng của tác giả Nick Parlante, trong loạt bài giảng về Computer Science 101 – Đại học Stanford – Mỹ - 2014.
https://class.coursera.org/cs101-selfservice/wiki/view?page=code-1
------------------------
Cập nhật: 2014/6/18