Download Visual Studio

You can download Visual Studio here.

Download Dev C++

You can download Dev C++ here.

Download Python

You can download Python here.

Vài điều cho các bạn trẻ

Quà tặng cuộc sống.

Thứ Ba, 4 tháng 7, 2017

[C++] Bài 5: Toán tử trong C++

1. Định nghĩa và phân loại toán tử

       Trong C++, ta định nghĩa toán tử là một phép tính toán học thực hiện tính toán các toán tử để cho ra kết quả (có thể không có giá trị hoặc có nhiều giá trị phụ thuộc vào toán tử sử dụng). Thông thường ta sử dụng các ký tự đặc biệt (+, -, *, /) để định nghĩa một toán tử nào đó. Ta cũng sử dụng tên để định nghĩa toán tử nhưng chỉ dùng với các toán tử không biểu diễn bằng ký tự đặc biệt.
Ví dụ: 
2+3*5;//ta không sử dụng add(2,(mult(3,5)) (!)
       Có 4 loại toán tử: Số học (Arithmetic), Lý luận (Logical), Quan hệ (Relational) và Nhị phân (Bitwise)

2. Các toán tử trong C++

* Toán tử số học (Arithmetic):
        Các toán tử số học bao gồm cộng (+), trừ (-), nhân (*), chia (/), đồng dư (%), tăng (++), giảm (--),... Các phép toán này sử dụng để tính toán số học thông thường. Toán tử chia (/) có hai kiểu chia: chia số nguyên - lấy kết quả là phần nguyên của thương, chia số thực - lấy kết quả là thương số thực. 
Ví dụ: 
chia nguyên: 5/2 = 2
chia thực: 5.0/2.0 = 2.5
       Toán tử (++) và giảm (--) thực hiện cộng thêm 1 (hoặc trừ đi 1) vào toán hạng sử dụng. 
i++ = i+1
i-- = i-1
      Phân biệt giữa i++ (i--) và ++i (--i): 
i++ thực hiện phép toán với i sau đó mới tăng i lên 1 đơn vị (i tăng lên sau khi tính toán).
++i thực hiện tăng i lên sau đó thực hiện các phép toán đối với i (i tăng lên trước khi tính toán).
Ví dụ:
int j = 5;
int k = 5;
int i1, i2;
i1 = j++;
i2 = ++k;
Kết quả thu được sẽ là i1 = 5, i2 = 6, j = 6, k = 6;

* Toán tử Logic (Logical):
       Trong C++, có các toán tử logic như sau: và (&&), hoặc (||), phủ định (!). Các phép toán logic cho ta kết quả đúng (1) hoặc sai (0).
a
b
a&&b
a||b
!a
1
1
1
1
0
1
0
0
1
0
0
1
0
1
1
0
0
0
0
1
* Toán tử quan hệ (Relation)
Toán tử
     Ý nghĩa
     Lớn hơn
>=
     Lớn hơn hoặc bằng
     Nhỏ hơn
<=
     Nhỏ hơn hoặc bằng
==
     Bằng
!=
     Khác (không bằng)

* Toán tử nhị phân:
Trong C++ ta định nghĩa các phép toán nhị phân như sau:
Toán tử
Kí hiệu
Cách viết
Mô tả
Dịch trái
<< 
x<<y
Các bit trong x dịch trái y bit
Dịch phải
>> 
x>>y
Các bit trong x dịch phải y bit
NOT (bù)
~
~x
Lấy phần bù của các bit trong x
AND (hội)
&
x&y
Từng bit trong x AND với từng bit trong y
OR (tuyển không loại trừ)
|
x | y
Từng bit trong x OR với từng bit trong y
XOR (tuyển có loại trừ)
^
x^y
Từng bit trong x XOR với rừng bit trong y
 Các toán tử NOT, AND, OR, XOR được định nghĩa như sau:
a
b
a & b
a | b
a ^ b
~a
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0








Thứ Sáu, 30 tháng 6, 2017

[C++] Bài 4: Hằng và biến trong C++

"Variables represent storage locations in the computer's memory. Literals are constant values that are assigned to variables."

 Stating out with C++ - Tony Gaddis

1. Hằng trong C++ (Literals Constants)

      Ta có thể định nghĩa hằng là một giá trị không đổi trong quá trình sử dụng. Trong C++ hằng là một giá trị được đặt trực tiếp trong chương trình và nó là không đổi vì bạn không thể thay đổi giá trị của nó. Với cách đơn giản nhất có thể nói rằng hằng là giá trị của biến vì đây là cách dùng thông dụng nhất của hằng (nhưng không phải là duy nhất).
      Ví dụ:
int x = 5; //5 là hằng nguyên được gán vào biến x hay biến x được gán giá trị nguyên là 5
double y = 1.23123; //1.23123 là hằng số thực được gán vào biến y hay biến y được gán giá trị thực là 1.23123
      Đối với các hằng số, ta có thể thêm các hậu tố (suffixes) để chỉ rõ kiểu dữ liệu của chúng. Các hậu tố thường đi kèm là u (unsigned), l (long), f (float). Đối với số nguyên thì việc này cũng không quá cần thiết. Đối với số thực dấu phẩy động, mặc định kiểu dữ liệu được định nghĩa là double, để đưa về dạng float ta dùng hậu tố f.
Ví dụ:
unsigned int n = 100u;
long m = 1245l;
float x = 126.36f;
      C++ cũng hỗ trợ các hằng ký tự và chuỗi (string).
Ví dụ:
char c = 'A';
cout<< "Hello World!!";

2. Biến hằng (Symbolic Constants)


      Tác giả xin được gọi nó là biến hằng, trong C++, hằng được chia ra làm 2 loại đó là hằng (Literals) và (tạm gọi) biến hằng (Symbolic). Biến hằng cũng là một hằng nhưng nó không cố định mà có thể thay đổi (!). Nói cách khác biến hằng là hằng có thể thay đổi giá trị của nó bất cứ thời điểm nào ta muốn. Nghe thì sai sai nhưng thật ra thì lại đúng đúng, nếu ai từng học C++ rồi thì ta có thể biết đến 2 từ khoá là constant và #define đúng không?? Và ta được biết nó là để khai báo hằng, nhưng thật ra là ta hiểu sai về nó chứ không phải được dạy sai đâu nhá (!). Ta cứ nghĩ nó là hằng, là hằng đơn thuần (Literals), thế mà nhiều người vẫn thay đổi nó mà không nhận ra nó là biến hằng (Symbolic).
      Với biến hằng ta phải gán giá trị khởi tạo cho nó trước nếu không sẽ xảy ra lỗi.
Ví dụ:
const int n = 5;
const int n {5};
      Với biến hằng ta có thể khai báo chúng với giá trị khởi tạo là một biến.
Ví dụ:
int x;
cin>>x;
const int n {x}; //biến hằng n được gán giá trị khởi tạo là giá trị của biến x
     Như đã nói ở trên, ta có thể dùng 2 cách để khai báo một biến hằng.
Ví dụ:
const int n = 5;
#define n 5;
      Tuy nhiên ta lại không hay (không khuyến khích) sử dụng khai báo chỉ thị #define để khai báo một biến hằng bởi vì:
Thứ nhất: việc khai báo bằng chỉ thị #define gây khó khăn cho trình biên dịch do khi biên dịch, trình biên dịch không trực tiếp thay giá trị được định nghĩa của biến hằng vào mà phải tìm xem biến hằng được định nghĩa ở đâu rồi mới quay lại biên dịch đoạn code đó.
Thứ hai: việc sử dụng #define có thể gây ra xung đột giữa các biến sử dụng, về phạm vi sử dụng của biến (biến cục bộ và biến toàn cục) sẽ được nói ở phần biến.
      Vậy nên ta không khuyến khích sử dụng chỉ thị #define để khai báo biến hằng mà thay vào đó ta sử dụng khai báo const.

3. Biến trong C++ (Variables)


      Biến là thành phần mà ta luôn sử dụng cho mỗi chương trình C++. Biến như đã được định nghĩa ở trên đầu bài nó cho phép ta sử dụng bộ nhớ của máy tính để lưu trữ và làm việc với các giá trị. Để sử dụng một biến ta buộc phải khai báo biến đó trước.'
Ví dụ:
int x;
float y = 532.333;
      Việc khai báo biến chúng ta cho máy tính và trình biên dịch biết được tên biến , kiểu dữ liệu của biến và giá trị khởi tạo của biến. Với một biến khi được khai báo mà chưa khởi tạo thì tuỳ theo trình biên dịch gán giá trị khởi tạo cho nó. Ví dụ trong Dev C là ), trong Visual Studio là 0xccccc,...
      Trong C++, ta chia biến ra làm 2 loại là biến cục bộ/địa phương (Local) và biến toàn cục (Global).
        Biến cục bộ là biến chỉ được khai báo và sử dụng trong một phạm vi nhất định như một hàm, một biểu thức, một vòng lặp. Biến toàn cục là biến được sử dụng trong cả chương trình.
Ví dụ:
#include <iostream>
using namespace std;
int x = 5;
int main()
{
        while(x>0)
        {
                  int a = 1;
                  cout << a<< end;
                  x--;
         }
        return 0;
}
         Trong ví dụ trên, x là biến toàn cục có thể sử dụng mọi chỗ trong hàm main(), còn a là biến cục bộ, chỉ sử dụng trong vòng while, nếu ra khỏi vòng while biến a không có giá trị và ta phải khai báo lại để sử dụng.
        Chú ý:
Không được phép khai báo biến hai lần trong cùng một phạm vi (1 hàm, 1 vòng lặp,...).
Không khuyến khích sử dụng tên biến cục bộ và toàn cục trùng nhau (mặc dù được phép) để tránh nhầm lẫn giữa các biến 

Thứ Năm, 29 tháng 6, 2017

[C++] Bài 3: Tên và Kiểu dữ liệu trong C++


1. Tên trong C++

Các từ khoá trong C/C++

Auto
Break
Case
Char
Continue
Default
Do
Double
Enum
Extern
Float
For
If
Int
Long
Register
Short
Signed
Sizeof
Static
Switch
Typedef
Union
Unsiged
Volatile
while












Các từ khoá trong C++

Asm
Bool
Catch
Class
Delete
Dynamic_cast
Explicit
False
Inline
Mutable
Namespace
New
Private
Protected
Public
Reinterpret_cast
Static_cast
Template
This
Throw
Try
Typeid
Typename
Using
Wchar_t













Quy ước đặt tên trong C++

Trong một chương trình C++, chúng ta sử dụng rất nhiều tên hay định danh (identificater) như tên chương trình, tên hàm, tên biến,… Với mỗi tên trong chương trình ta phải khai báo chúng trước khi được sử dụng.

Tên là dãy các ký tự liền nhau bao gồm các chữ cái thường a, b, c,…, các chữ cái hoa A, B, C,…, các chữ số 0, 1, 2,…, và dấu gạch dưới _. Tên không thể bắt đầu bằng chữ số và không chứa các ký tự đặc biệt khác.

Ví dụ:

Tên đúng: abc123_, Abc12345,…

Tên sai: 123abc, #ab

Trong C++ phân biệt chữ thường và chữ hoa nên các tên như PI, pi, Pi, pI là khác nhau.
Tên không được trùng với các từ khoá có sẵn trong C++.

Chú thích trong C++

Khi viết một chương trình, để giải thích rõ các câu lệnh, các hàm hay mục đích sử dụng của các biến ta thường sử dụng chú thích. Việc sử dụng chú thích là không bắt buộc nhưng vô cùng cần thiết để thể hiện sự chuyên nghiệp và dễ hiểu cho chương trình mình viết ra.

Chú thích trong C++ được đặt sau dấu // nếu chỉ chú thích trên một dòng, khi hết dòng thì chú thích chấm dứt. Nếu muốn chú thích trên nhiều dòng, ta sử dụng cặp /* để bắt đầu và */ để kết thúc chú thích.
Ví dụ:
/*đây là chương trình đầu tiên của tôi
chương trình mang tên Hello World!!*/
int main()//Hàm main
{
     cout << “Hello World!!”<<endl;
     return 0;
}

2. Các kiểu dữ liệu trong C++

Kiểu dữ liệu dựng sẵn

Kiểu dữ liệu (Data type) có thể hiểu là một tập hợp các giá trị mà một biến thuộc kiểu đó có thể nhận được và trên đó xác định một số phép toán.
Trong C/C++ có 5 kiểu dữ liệu cơ bản gồm
      char               Kiểu dữ liệu ký tự
      int                Kiểu dữ liệu số nguyên
      float             Kiểu dữ liệu số thực
      double          Kiểu dữ liệu số thực chính xác kép
      void               Kiểu dữ liệu không gì cả
Kiểu dữ liệu char (character) là kiểu dữ liệu ký tự có bộ nhớ lưu trữ cho mỗi hằng/biến là 1 byte (8 bits), các ký tự được biểu diễn bằng chữ cái nằm trong dấu nháy đơn: ‘A’, ‘a’, ‘9’,…
Kiểu dữ liệu int (integer) là kiểu dữ liệu số nguyên có bộ nhớ lưu trữ là 2 bytes (16 bits) có khả năng biểu diễn được các số nguyên có giá trị từ -32768 đến 32767.
Kiểu dữ liệu float là kiểu dữ liệu số thực lưu trữ các dữ liệu chứa phần thập phân có bộ nhớ lưu trữ là 4 bytes (32 bits).
Kiểu dữ liệu double là kiểu số thực có bộ nhớ lưu trữ là 8 bytes (64 bits).
Kiểu void là kiểu dữ liệu không lưu trữ gì cả và không có giá trị trả về sau khi chạy chương trình.
Ví dụ:
int main()
{
     char x = ‘a’;
     int n = 100;
     float f = 1.234;
     double m = 0.8084397;
     //Your code here
     return 0;
}
Với các kiểu dữ liệu cơ bản trên ta có các kiểu dữ liệu mở rộng của chúng tương ứng như long int, long double,…
Ngoài ra, C++ cung cấp thêm hai kiểu dữ liệu nứa đó là
      bool               kiểu dữ liệu logic trả về giá trị đúng (true) hoặc sai (fale)
            wchar_t         kiểu dữ liệu ký tự mở rộng của char, sử dụng 16 bits thay vì 8 bits như char giúp ta viết được các ký tự không nằm trong bảng ASCII.

Kiểu dữ liệu bậc cao, người dùng tự định nghĩa

Ta có các kiểu dữ liệu bậc cao hơn như sau
            array             tập các phần tử có cùng kiểu dữ liệu (dãy)
            pointer         con trỏ, trỏ vào địa chỉ của ô nhớ
            reference     tham chiếu, khá giống con trỏ nhưng kém hiệu quả hơn
            structure     kiểu cấu trúc
            union             kiểu liên minh, một ô nhớ có thể chứa nhiều kiểu dữ liệu
            class             lớp, cao cấp hơn cáu trúc, là cơ sở của lập trình hướng đối tượng
Các kiểu dữ liệu bậc cao và người dùng định nghĩa sẽ được trình bày cụ thể tại các bài riêng.

Thứ Tư, 28 tháng 6, 2017

Vài điều cho các bạn trẻ


1. Đừng lãng phí thời gian nữa. Khi các bạn cả ngày ngồi lướt new feeds Facebook thì xã hội đã bỏ các bạn quá xa rồi. Tụ tập ít thôi, shopping ít thôi, mạng xã hội ít thôi. Nếu tốt nghiệp Đại học mà bạn vẫn phải nhờ vả xin việc, thì nên tự hỏi cả thời Đại học bạn đã giết thời gian thế nào.

2. Đừng để công nghệ chi phối mình. Dùng Internet để học, để giải trí, để kết nối, chứ đừng biến nó thành cuộc sống. Không nhất thiết ăn gì, mặc gì, nghĩ gì, làm gì, khó chịu gì, yêu thương gì cũng phải post lên mạng xã hội. Không cần thiết phải biến mình thành nô lệ của chiếc "Smart Phone" . Nếu đi ra ngoài chơi thì đừng cắm đầu vào điện thoại; nếu định chơi với điện thoại, thì đừng ra ngoài.

3. Tiêu tiền cho đúng cách. Cái gì cần dùng và có ích thì hẵng mua, cái gì chỉ để khoa trương thì đừng mua. Nếu không cần thiết phải lên đời điện thoại từ iPhone 6 lên iPphone 7 chỉ vì chụp hình đẹp hơn một chút thì dùng iPhone 6 cũng được. Đừng có khoa trương khi thực chất bản thân chưa làm được gì.
Nếu vẫn sống chật vật với đồng lương mới ra trường, hay vẫn phải xin tiền bố mẹ, thì đi xe đạp cũng được, không cần đi Vision hay Vespa làm gì. Đồng tiền kiếm thực sự không dễ.

4. Sống có kỷ luật đi. Đừng có lười biếng, lộn xộn, hay ham vui quá đà. Tự kiểm soát cuộc sống cuả mình, vì không ai làm điều đó hộ mình cả. Tuổi trẻ, đừng biến cuộc sống của mình thành một mớ hỗn độn.

5. Đọc sách. Sách gì cũng được, miễn là đừng để não mình rơi vào tình trạng chán tư duy, chán thay đổi, và thậm chí là thấy chán đời. Tuổi trẻ, có biết bao nơi phải đến, bao người thú vị phải gặp, bao thứ để học, và bao điều hay ho để làm. Lúc nào thấy chán nản, nên đi mua một cuốn sách mới.

6. Đừng trì hoãn. Việc cần làm thì phải ép mình làm, mà làm cho xong. Ai cũng sống ngần ấy thời gian, người ta hơn nhau ở cái biết dùng thời ấy thế nào. Trì hoãn là lười biếng. Trì hoãn là không tôn trọng thời gian của chính mình, không tôn trọng chính mình.
Không ai ăn cắp hay giết thời gian của bạn cả, chỉ có bạn tự giết chết thời gian của chính mình, giết chết tuổi trẻ của chính mình. Tuổi trẻ chỉ có một lần, nên nghĩ kỹ về điều đó.

7. Đi thật nhiều. Mỗi bước đi xa hơn là một bước lớn khôn hơn, để biết trân trọng quãng đời này, thực ra chỉ vài chục năm, không dài như mình tưởng.
Đi đúng nghĩa của đi. Đi trải nghiệm, cảm nhận, suy ngẫm, chứ không phải đi theo phong trào. Đi ào ào và chỉ để pose hình thì cũng không khác gì không đi là mấy.




8. Rèn luyện sự tự tin từ bây giờ đi. Mình không tin vào mình thì không ai tin mình cả. Cũng như luyện tập thể chất, tinh thần cũng phải luyện. Nếu sợ không làm được thì phải ép mình làm, thất bại nhiều lần rồi thì khắc hết sợ. Nếu sợ nói trước đám đông thì càng nên nói trước đám đông, sợ giao tiếp thì càng nên giao tiếp.
Tự tin không phải là thứ tự dưng có, nhưng chắc chắn là luyện được. Phải tự tin là mình làm được thì làm việc mới thành.

9. Sống có lý tưởng lên. Nghĩ thoáng ra, nghĩ rộng ra, làm thật nhiều vào và đừng sợ sai. Đạp lên định kiến với áp lực xã hội mà sống. Tuổi trẻ, phải sống như chưa từng được sống.

10. Cứ yêu đi. Đổ vỡ cũng không sao, buồn cũng không sao, đau cũng không sao. Đổ vỡ thì làm lại, làm lại hai lần chưa được thì nhiều lần. Đừng sợ không tìm thấy người yêu mình cả đời, chỉ sợ mình quá hèn nhát không dám yêu thêm. Tình yêu là cách nhanh nhất khiến người ta hoàn thiện bản thân.

11. Độc thân cũng được. Độc thân thì vui kiểu độc thân, dành thời gian mà làm nhiều thứ cho riêng mình. Đừng có vì thấy người ta có đôi có cặp còn mình Valentine một mình và kêu gào FA hay sinh chán nản. Cô đơn cũng là cái hay.

12. Đừng lập gia đình quá sớm. Đừng ổn định quá sớm. Hãy độc thân tới khi nào thực sự sẵn sàng cho một cuộc sống mà mình phải gắn với rất nhiều sự ràng buộc và trách nhiệm. Nếu chưa cảm thấy mình có thể chăm sóc tốt cho bản thân mình, thì đừng vội lập ra đình. Hãy tập sống cuộc đời một mình cho tốt đã. Ai hỏi bao giờ lấy chồng hay lấy vợ, thì cứ kệ đi.

13. Phải độc lập. Phải cố gắng. Tự mình học, tự mình cố gắng, tự mình kiếm việc làm, tự mình kiếm tiền, tự xây dựng sự nghiệp. Rồi sau này có con cái, sẽ có nhiều hơn những câu chuyện để kể. Có nhiều con đường dễ để đi, nhưng nếu con đường được trải thảm sẵn thì đi tới đích rồi cũng chả thấy gì vui thú. Những gì tự mình có mới là cuả mình.
*****Nghĩ khác đi. Tìm cái mới, nghĩ điều mới, làm điều mới, thậm chí là điều điên rồ và kỳ quặc.
Tuổi trẻ, đừng sống mòn như một chiếc máy cũ kỹ, hay như một con robot đã được lập trình****
-------
Vì mình còn trẻ, nên không điều gì là không thể.

:)
Hoàng Ngọc Quỳnh
United Kingdom
11/5/2017

Hai năm nữa hãy về Bách Khoa lấy bằng đại học nhé...



Hà nội, thứ ba ngày 27 tháng 6 năm 2017, trời sáng gió nhẹ mà se se khác hẳn những ngày hè nóng nực thường thấy, phố xá yên tĩnh lạ, Urban Station cũng ít khách hơn và tâm trạng của ai đó cũng trùng xuống. Ngày hôm nay là ngày cuối cùng tao gặp mày với tư cách là một sinh viên của trường đại học Bách Khoa Hà Nội.
Biết ngày này sẽ đến từ cái hôm mà mày nói với tao quyết định ra đi của mày, nhưng tao vẫn buồn, vẫn không thể kìm nén được sự buồn tủi giăng kín tâm trạng mình. Quán café có 4 khách ngồi, 2 người tâm trạng thư giãn, hai người kia không nói ra nhưng cũng cảm nhận một nỗi buồn phảng phất dễ nhận ra. Thế là cuối cùng tao với mày đã không còn học cùng nhau nữa, cuối cùng như một quy luật tự nhiên xảy ra với tao là những người bạn thân nhất, tốt nhất lần lượt rời xa tao. Đứa thứ nhất – niềm hãnh diện của tao khi quen hắn – đã bỏ bạn bè mà sang Nhật Bản với tư cách là học sinh ưu tú nhất K13 SIE. Ngày tạm biệt hắn tao hãnh diện phết, vui và ghen tị với hắn lắm, vừa là bạn vừa là idol của tao đã đi mất rầu *cười*. Hắn đi như một điều tất yếu mà ai cũng biết vì sự chăm chỉ, trách nhiệm của hắn trong việc học, con người của lý trí và bản lĩnh, biết thế mà vẫn ghen tị vãi @@
Mày ấy. Ngày mày nói với tao là mày nghỉ học để theo đuổi ước mơ, tao sock cả sáng hôm ấy. Học thì giỏi, kiến thức xã hội tốt, biết suy nghĩ và cư xử đúng đắn chứ dốt nát gì đâu chứ mà nghỉ học?? Nhưng những lời mày nói khiến tao tự tủi hổ và khâm phục thêm bản lĩnh của mày. Khi quen biết mày, tao cũng không biết rằng mình quen được một người như vậy là một điều may mắn mà tao không nhận ra. Mày là người dạy tao những cách cư xử, lối sống hàng ngày, là người dám nghĩ, dám nói, dám nhận trách nhiệm. Từng nhớ có những lần mà mày sỉ vả tao không thương tiếc vì cái thói ích kỷ của mình khiến tao hận mày thấu xương, nhưng cũng vì thế mà tao nhận ra đâu đó tao có một người bạn luôn quan tâm mình như vậy. Ba năm đại học, tao quen vô số bạn bè có lẽ là nhiều hơn cả số bạn tao quen trong 12 năm học phổ thông, nhưng cũng chính vì thế tao không biết rõ ai thật lòng thân với mình, tốt với mình. Nhưng mà cũng may mắn, tao có được những thằng bạn như mày, như cái gã Nhật Bổn kia kìa, như những đứa đang hết lòng giúp tao bây giờ này, chúng mày sống thật lòng với tao quá rồi đấy. 

Có đứa hơn tao một tuổi nhưng vẫn là bạn kể cho tao rằng cấp 3 hắn từng bỏ học làm mọi thứ trên Hà Nội tiếp xúc đủ thứ nhưng hắn không sa ngã, bị mọi người ghét bỏ rồi tự mình đứng lên học tiếp thi đỗ Bách Khoa và giờ là thần tượng của tao, của cái đất Quảng Bình đầy nắng, gió và cát ấy (cái này tao chém gió). Hiếm có ai thật lòng với tao như hắn, thế mà hắn đi mất rồi. Có đứa mới quen được một kỳ mà vẫn luôn sẵn lòng thức đêm vì tao hỏi ngu về C++, vì tao bảo máy tao lại cài ứng dụng chứa mã độc :v.
 Thế còn mày? Tao thấy mày khốn nạn lắm, cái thằng mà tao quen từ năm nhất chuyên ra nói vào tim đen của tao (dù thi thoảng sai) khiến tao giật mình. Tao ghét mày lắm mà tại sao tao lại chơi được với mày :3. Năm nhất, mày dạy tao đi thi nói không với phao khiến tao suýt tạch triết 1, bố mày thù tới giờ. Mày dạy tao thấy ngứa mắt thì phải nói khiến tao bị tụi nó ghét, còn dạy tao tỉ thứ nữa khiến tao thù mày tới tận giờ này. Nhưng mày cũng là đài tiếng nói của bạn bè, truyền đi thông điệp của bạn bè mà không ngại ngần gì cả (điều tao khâm phục nhất ở mày đấy). Mày cũng là đứa sống vì tập thể nữa (tuyệt cmn vời luôn @@). Thế mà mày lại ngừng việc học ở đây.
Chẳng biết tao nên vui hay buồn khi mày chỉ nói với tao thôi ấy. Nhưng tao trân trọng những gì mày dành cho tao. Bề ngoài không ai biết tao chơi với mày và cũng chẳng ai nghĩ là tao chơi với mày và cũng chính lẽ đó khiến cho tao có được tình bạn bền chặt hơn với mày. Tao thầm cảm ơn mày khi những đứa bạn thân của mày không biết mày đi đâu còn thằng có vẻ không thân như tao lại được quyền chất vấn mày tại sao ra đi. Mày từng nói, mày học không có đam mê nên thấy xấu hổ khi đầu tư học. Vậy sao điểm mày cao thế.hic. Tao chỉ biết húc đầu vào học mấy thứ vớ vẩn, chán thì lại thôi nên không hiểu trách nhiệm đối với việc học của mày, thấy xấu hổ với mày quá.!!!
Ngày mày quyết định đi, tao chẳng biết nói gì, chỉ biết dặn mày một điều: “Hãy quay trở lại Bách Khoa để học lấy bằng đại học nhé!”. Và mày cũng đã hứa, mình có 7,5 năm ở trường cơ mà, lo gì *cười*. Tao hi vọng đến lúc mày về trường đi học thì nhớ mang ô tô qua chỗ tao làm bốc vác phụ hồ đón tao cho cái bọn làm cùng tao lúc ấy nó lác mắt ra @@. Đến vùng đất mới, nhớ hoàn thành ước mơ của mày, trở thành tỷ phú sau đó quay lại đây, lấy bằng đại học như Bill Gate nhé. Tao vẫn hẹn mày ở Urban Station và vẫn đi ô tô đến đó, có lái xe riêng, phục vụ xe và mất có 100k 1 tháng thôi.
Ba năm đại học của tao trôi qua tẻ nhạt và chẳng có gì ngoài những biến động và có những người bạn thân như mày và những thằng kia. Có đứa nó nói dù quên ai thì quên chứ không quên tao khiến tao muốn trói nó lại Việt Nam luôn. Còn mày, mày nói gì khiến tao phải viết cho mày? “Tao trân trọng mày và trân trọng tình bạn này” – Nó khiến tao muốn đốt hết tàu xe máy bay để mày không đi đâu khỏi Hà Nội nữa.
Mày từng nói với tao “Đời người ngắn lắm, mỗi con người chỉ sống một lần”
Tạm biệt,