CHƯƠNG 2 NGÔN NGỮ C++ 1 OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu MỤC TIÊU ySử dụng được một trình biên dịch C/C++ nào đó để viết chương trình.. yViết được chương trình cơ bản dùng
Trang 1CHƯƠNG 2 NGÔN NGỮ C++
1
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
MỤC TIÊU
ySử dụng được một trình biên dịch C/C++ nào đó để viết chương trình
yViết được chương trình cơ bản dùng các cấu trúc điều
2
khiển trên các kiểu dữ liệu cơ bản
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
NỘI DUNG CHI TIẾT
yKhái quát về ngôn ngữ C++
yKiểu dữ liệu cơ bản, phép toán
yNhập xuất dữ liệu
yCác cấu trúc điều khiển
3
yMảng và mẫu tin
yCon trỏ và tham chiếu
yNhâp xuất và tập tin
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
KHÁI QUÁT VỀ C++
y1970, Denis Ritchie (Bell Lab.) phát triển ngôn ngữ C
Language) BCPL (Basic CPL) và ngôn ngữ B
4
Language), BCPL (Basic CPL) và ngôn ngữ B.
Language, Prentice-Hall
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 2KHÁI QUÁT VỀ C++
yĐầu 1980, Bjarne Stroustrup phát triển ngôn ngữ
C++
5
Prentice-Hall
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
CẤU TRÚC CHƯƠNG TRÌNH C++
#include <iostream.h>
void main (void) {
cout << "Hello World\n";
}
Hello.cpp
6
C++
Program
C Code
Object Code
Execut-able
C++
COMPILER NATIVE
C++
TRANSLATOR
LINKER
C COMPILER
C++
Program Hello.cpp
Hello.obj
Hello.exe
}
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
MỞ RỘNG CỦA C++
yBiến, đối tượng:
y Sử dụng ghi chú
Cá h /* Nội d hi hú*/
7
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
y Khai báo hằng số
Trong cách 1:
8
Trong cách 2:
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 3LỆNH ĐƠN & LỆNH PHỨC
yLệnh đơnlà một
sự tính toán được
kết thúc bằng dấu
int min, i = 10, j = 20;
min = (i < j ? i : j);
Ví dụ:
9
yNhiều lệnh đơn có
thể kết nối lại
thành một lệnh
phứcbằng cách
rào chúng bên
trong các dấu
min = (i < j ? i : j);
min + 5;
cout << min << '\n';
; }
Lệnh rỗng Lệnh vô dụng
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
NHẬP XUẤT DỮ LIỆU
yC++ cung cấp các lệnh nhập xuất dữ liệu trong thư viện
<iostream.h>, trong đó có các đối tượng
y Để lấy dữ liệu từ bàn phím vào biến ta dùng lệnh sau:
cin>>Biến 1>>Biến 2>> ;
10
y Toán tử >> của đối tượng cin lấy dữ liệu từ bàn phím đặt vào biến bên phải nó theo thứ tự
y Với lệnh này, khi nhập giá trị cho các biến thì giữa các giá trị phải phân cách nhau bằng Enter hoặc Space hoặc Tab
ví dụ: cin >> intVar >> floatVar;
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
NHẬP XUẤT DỮ LIỆU
y Để nhập dữ liệu cho một chuỗi n ký tự
Hàm cin.getline(Tên_biến,Số_ký_tự_tối_đa) trong đó:
{ Tên_biến: tên của biến chuỗi
{ Số ký tự tối đa mà biến chuỗi có thể nhận
Ví dụ: char hoten[30]; cin getline(hoten 30);
11
Ví dụ: char hoten[30]; cin.getline(hoten,30);
y Hàm cin>> để lại ký tự “\n” trong bộ đệm có thể làm trôi
phương thức cin.getline()
Î khắc phục: dùng cin.ignore(1) để bỏ qua ký tự “\n”
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
y Để đưa dữ liệu ra màn hình ta dùng lệnh sau:
cout<<Biểu thức1<<Biểu thức 2< ;
Toán tử << sẽ đưa giá trị các biểu thức bên phải nó tới màn hình
12
y Muốn đặt con trỏ màn hình xuống đầu dòng tiếp theo ta phải đưa ra ký tự xuống dòng ’\n’ hoặc dùng endl
cout<<Biểu thức<<’\n’;
Ví dụ:cout<<a<<c+b<<’\n’; cout<<100<<endl;
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 4VÍ DỤ NHẬP XUẤT
13
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
y Các hàm xử lý nhập xuất: thư viện “iomanip.h”
y Để thiết lập độ rộng cho giá trị cần in
Ví dụ: cout<<setw(5)<<X;
14
Ví dụ: cout<<setw(5)<<X;
y Để hiển thị số thực
n số phần lẻ thập phân
Ví dụ: cout.setf(ios::showpoint)
cout.precision(2)
showpoint dấu của các biến kiểu số hex In ra số dưới dạng hexa dec In ra số dưới dạng cơ số 10 oct In ra số dưới dạng cơ số 8 left Căn lề bên trái right Căn lề bên phải internal Căn lề giữa
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
#include <iostream.h>
main(){
int age;
cout << "When were you born? ";
15
cin >> age;
cout << "After 10 years, you will be "
<< 2008 – age + 10 << "years old\n"
return 1;
}
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
yPhép toán gán int y, x;
16
y = (x = 100);
Hay
y = x = 100;
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 5int n, m = 10;
n = m++;
cout << n++ << endl;
int n, m = 10;
n = m;
m = m + 1;
cout << n << endl;
int n,m = 10;
n = ++m;
cout << ++n << endl;
cout << n << endl;
n = n + 1;
int n,m = 10;
m = m + 1;
n = m;
n = n + 1;
cout << n << endl;
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
18
yPhép toán điều kiện
if ( a > 100.0 )
m = 5;
m = a + 10;
if ( a > b )
else max = b;
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Độ ưu tiên phép toán
Phép
toán
Mô tả Ưu tiên Thứ tự trong
biểu thức
Toán hạng
Ví dụ
:: Truy cập biến toàn cục 17 Phải sang 1 ::x
:: Phân định thành phần của lớp 17 Trái sang 2 NAME::x
Truy cập thành phần của đối 16 - nt - - nt - obj.n
19
y ập p tượng hay mẩu tin
-> Truy cập đến thành phần của con
trỏ đối tượng (hoặc mẩu tin)
16 - nt - - nt - obj->n [] Truy cập chỉ số 16 - nt - - nt - a[i]
() Gọi hàm 16 nt
-() Chuyển đổi kiểu 16 - nt - int(ch)
++ Tăng sau 16 Phải sang 1 n++
Giảm sau 16 - nt - - nt -
n OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ
Hồng Bảo
Châu
Phép toán
tiên Thứ tự trong biểu thức
Toán hạng
Ví dụ
sizeof Kích thước của đối tượng hoặc của kiểu dữ liệu 15 - nt - - nt - sizeof(a) ++ Tăng trước 15 - nt - - nt - ++n Giảm trước 15 - nt - - nt - n
20
Giảm trước 15 - nt - - nt - n
~ Bitwise NOT 15 - nt - - nt - ~s
! Phủ định 15 - nt - 1 !q + Chuyển thành dương 15 - nt - - nt - +n
- Chuyển thành âm 15 - nt - - nt - -n
* Lấy giá trị tại địa chỉ 15 Phải sang - nt - *ptr
& Truy cập địa chỉ 15 - nt - - nt - &x
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 6toán Mô tả tiên Ưu Thứ tự trong biểu thức Toán hạng Ví dụ
new Cấp phát bộ nhớ 15 - nt - - nt - new p
delete Thu hồi bộ nhớ 15 - nt - - nt - delete p
() Chuyển đổi kiểu 15 - nt - - nt - (int)ch
* Truy cập đến thành phần của đối 14 Trái sang 2 x *ptr
21
Truy cập đến thành phần của đối
tượng hay của mẩu tin 14 Trái sang 2 x ptr ->* Truy cập đến thành phần của con
trỏ đối tượng (hoặc mẩu tin)
14 - nt - - nt - p->*ptr
* Nhân 13 - nt - - nt - a*b
/ Chia 13 - nt - - nt - m/n
% Chia lấy phần dư 13 - nt - - nt - m%n
+ Cộng 12 - nt - - nt - m+n
- Trừ 12 - nt - - nt - m-n
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ
Hồng Bảo
Châu
Phép toán Mô tả tiên Ưu Thứ tự trong biểu thức Toán hạng Ví dụ
<< Bit shift left 11 - nt - nt
->> Bit shift right 11 - nt - nt
-< Nhỏ hơn 10 - nt - - nt - x < y
<= Nhỏ hơn hay bằng 10 - nt - - nt - x <= y
22
> Lớn hơn 10 - nt - - nt - x > y
>= Lớn hơn hay bằng 10 - nt - - nt - x >= y
== So sánh bằng 9 - nt - - nt - x == y
!= Không bằng 9 - nt - 2 x != y
& Bitwise AND 8 - nt - - nt - m & n
^ Bitwise XOR 7 - nt - - nt - m ^ n
| Bitwise OR 6 - nt - - nt - m | n
&& Phép toán AND 5 - nt - - nt - p && q
|| Phép toán OR 4 - nt - - nt - p || q
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Phép
toán
tiên Thứ tự trong biểu thức
Toán hạng
Ví dụ
?: Điều kiện 3 Phải sang - nt - q ? x : y
= Gán 2 - nt - - nt - n = 10
+= Gán cộng dồn 2 - nt - - nt - n += 10
-= Gán trừ dồn 2 - nt - - nt - n -= 10
*= Gán nhân 2 - nt - - nt - n *= 2
23
/= Gán chia 2 - nt - - nt - n /= 5
%= Gán modulo 2 - nt - - nt - n %= 2
&= Gán Bitwise AND 2 - nt - - nt - n &= mask
^= Gán Bitwise XOR 2 - nt - - nt - n ^= mask
|= Gán Bitwise OR 2 - nt - - nt - n |= mask
<<= Gán Bit shift left 2 - nt - - nt - n <<= 1
>>= Gán Bit shift right 2 - nt - - nt - n >>= 1
throw Throw exception 1 - nt - 1 throw(20)
, Dấu phẩy 0 Trái sang 2 ++m, n
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ
Hồng Bảo
Châu
24
Cấu trúc điều khiển
yTuần tự
yCấu trúc điều kiện
yCấu trúc lặp
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 7CẤU TRÚC ĐIỀU KIỆN
yLệnh if và if-else
if (biểu thức)
lệnh;
Lệnh switch
switch(biểu thức) {
casehằng 1: các lệnh; break;
25
các lệnh; break;
casehằng n: các lệnh; break;
default : các lệnh;
}
if(biểu thức)
lệnh 1;
else
lệnh 2;
Khi nào chúng ta nên sử dụng if-else và khi nào chúng ta nên sử dụng switch?
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
CẤU TRÚC LẶP
yLệnh while; do-while
while (biểu thức)
lệnh;
Lệnh for
for (biểu thức1; biểu thức2; biểu thức3)
lệnh;
26
do lệnh;
while(biểu thức);
khởi tạo điều kiện dừng
điều khiển lặp
Sử dụng từng kiểu lệnh lặp để in ra các số từ 0 đến 9 ?
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
LỆNH NHẢY
dừng lần lặp hiện tại của một vòng lặp và nhảy tới lần lặp kế tiếp
nhảy trực tiếp đến nhãn được chỉ định.
27
Lệnh break Lệnh return
nhảy ra bên ngoài những lệnh lặp hoặc switch và kết thúc chúng.
cho phép một hàm trả về một giá trị cho thành phần gọi nó.
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
28
yLưu ý, trong C/C++ không có kiểu luận lý, nên các biểu thức có giá trị nguyên
yGiá trị khác không, mang ý nghĩa đúng Ngược lại, mang ý nghĩa sai
Ví dụ: int a=3<1 Î a=?
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 8CON TRỎ
yCon trỏđơn giản chỉ là địa chỉcủa một vị trí bộ nhớ
và cung cấp cách gián tiếp để truy xuất dữ liệu trong
bộ nhớ
yVí dụ
Chương 5
29
it num = 10;
int *ptr1 = #
cout << *ptr1;
10
1000
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
CẤP PHÁT BỘ NHỚ ĐỘNG
y Trong C++: sử dụng các toán tử
{ Cấp phát: dùng toán tửnew
{ Hủy bỏ: dùng toán tửdelete
Ví dụ: float *p,*q; p=new float; q= new float[10];
30
delete p;
void Foo (void) {
int *ptr = newint;
char *str = newchar[10];
//
deleteptr;
delete[ ]str;
} OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
BIẾN THAM CHIẾU
y Trong C++: biến tham chiếu có đặc điểm
{ Không được cấp phát bộ nhớ, không có địa chỉ riêng
{ Dùng như một tên khác (bí danh_ alias) cho biến được
tham chiếu đến
Ví dụ: int X, &Y=X; //Y là biến tham chiếu của X, như vậy X và
Y đề hỉ đế ột ù hớ (Y là tê khá ủ X)
31
Y đều chỉ đến một vùng nhớ (Y là tên khác của X) { Trong mọi hoàn cảnh thì cách dùng X và Y là như nhau
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
TRUYỀN GIÁ TRỊ CHO HÀM
y Truyền tham trị: (by values)
{ Tham số được khai báo như khai báo biến { Giá trị của đối số được truyền cho hàm không bị thay đổi
Ví dụ: void Hoanvi (int A, int B) Æ gọi hàm Hoanvi(A,B)
32
oa ( , )
y Truyền bằng con trỏ: (by pointer)
{ Tham số được khai báo dạng con trỏ { Địa chỉ của đối số được truyền cho hàm Æ có thể thay đổi giá trị của đối số
Ví dụ: void Hoanvi (int*A, int*B) Æ gọi Hoanvi(&A,&B)
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 9TRUYỀN GIÁ TRỊ CHO HÀM
y Truyền tham chiếu: (by reference)
{ Tham số được khai báo như biến tham chiếu
{ Địa chỉ của đối số được truyền cho hàm Æ có thể thay đổi
giá trị của đối số
Ví dụ: void Hoanvi (int&A int&B) Æ gọi Hoanvi(A B)
33
Ví dụ: void Hoanvi (int&A, int&B) Æ gọi Hoanvi(A,B)
y Ưu điểm khi truyền tham chiếu
{ Không cần tạo ra bản sao các giá trị của đối số vì thế tiết
kiệm bộ nhớ và tăng hiệu quả thực thi của chương trình { Hàm thao tác trực tiếp trên vùng nhớ của đối số thông qua
địa chỉ Æ dễ dàng thay đổi giá trị đối số khi cần
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
VÍ DỤ
1 3
4 5
// Truyền bằng trị (đối tượng)
void Swap1 (int x, int y) {
int temp = x;
x = y;
y = temp;
}
// T ề bằ đị hỉ ( t ỏ)
int main (void) { int i = 10, j = 20;
Swap1(i, j); cout << i << ", " << j << '\n';
Swap2(&i, &j); cout << i << ", " << j << '\n';
Swap3(i, j); cout << i << ", " << j << '\n';
}
34
7 9 10 11 12 14 16
18
// Truyền bằng địa chỉ (con trỏ)
void Swap2 (int *x, int *y) {
int temp = *x;
*x = *y;
*y = temp;
}
// Truyền bằng tham chiếu
void Swap3 (int &x, int &y) {
int temp = x;
x = y;
y = temp;
}
??
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
CÁC THAM SỐ MẶC ĐỊNH
y Khai báo hàm với tham số có giá trị mặc định ví dụ:
int myFunction(int x=10) { }
y Khi đó khi chúng ta thực hiện gọi hàm và không
truyền tham số, giá trị mặc định khi khai báo sẽ
đ dù t thâ hà
35
được dùng trong thân hàm
Ví dụ: int A; A=myFunction(); //x=10
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
HÀM TRỰC TUYẾN (INLINE FUNCTION)
y Khai báo bằng từ khóa inline.
Ví dụ: inline int myFunction(int A, int B)
y Khi gọi hàm trực tuyến trình biên dịch sẽ chèn đoạn
36
mã của hàm vào đúng chỗ mà nó được gọi tới trong chương trình
y Các hàm phức tạp (chẳng hạn như có vòng lặp) thì không nên dùng inline
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 10XỬ LÝ TẬP TIN
y Để làm việc với các file chúng ta tạo ra các đối tượng
ofstream và ifstream sử dụng thư viện “fstream.h”
y Mở file
{ Ghi dữ liệu: ofstream fout(“đường dẫn tên file”);
{ Đọc dữ liệu: ifstream fin(“đường dẫn tên file”);
37
{ Đọc dữ liệu: ifstream fin( đường dẫn tên file );
Ví dụ:
ifstream fin(“data.txt”);//mở file
while(fin.get(ch)) //đọc ký tự
cout << ch; //xuất ký tự fin.close(); // kết thúc thao tác và đóng tập tin
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
XỬ LÝ TẬP TIN
y ĐỌC FILE: Mặc định file được đọc ghi dạng văn bản nếu muốn chuyển sang dạng nhị phân ta dùng
{ Ghi: ofstream fout(“đường dẫn tên file”,ios::binary);
{ Đọc: ifstream fin(“đường dẫn tên file”, ios::binary);
GHI FILE Để hi dữ liệ fil t dù t á tử
38
y GHI FILE: Để ghi dữ liệu ra file ta dùng toán tử <<
f<<setw(5)<<X;
f<<setw(10)<<“ABC”;
f.close();
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Để đọc dữ liệu từ file ta dùng toán tử >>
Ví dụ: int X, char S[10];
ifstream f(“C:\\Baitap\\myfile.txt”); //mở file f>>X; //đọc dữ liệu từ file vào biến X
ể
39
f.ignore(); //bỏ qua ký tự chuyển dòng “\n”
f.get(S,10); //đọc 10 ký tự vào chuỗi S f.close(); //đóng file
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
VIẾT CHƯƠNG TRÌNH
yTrên môi trường Windows, có thể sử dụng Visual C++, hoặc DJGPP, v.v
yTrên Linux, có thể sử dụng GNU C++
40
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 11DÙNG VISUAL C++ 6.0
yChọn chức năng
File/New/Project
s
yĐưa vào tên của
Project
41
Project
yVà vị trí lưu trữ
trên đĩa
yLưu ý, chọn
Win32 Console
Application
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ
Hồng Bảo
Châu
ySau khi đưa vào Project Name và Location, hộp hội thoại xuất hiện
42
yChọn Finish
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
yĐưa các tập tin
nguồn vào để sử
dụng, bằng cách
yProject/Add to
43
Project/New/Files
yChọn C++ Source
file
yĐưa vào tên file
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ
Hồng Bảo
Châu
ySau khi chọn, có màn hình để soạn thảo tập tin One.cpp
yVào menu Build để biên dịch và thực thi chương trình
44
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
Trang 12BÀI TẬP TỰ HỌC
yNÊU NHỮNG ĐẶC TÍNH MỞ RỘNG CỦA C++ SO
VỚI C
yHIỆN THỰC HÓA 1 LỚP BẤT KỲ Ở BÀI TRƯỚC
BẰNG NGÔN NGỮ C++
45
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
BÀI TẬP TẠI LỚP
yCÁC BÀI TẬP SAU ViẾT DẠNG HÀM VÀ CẤU TRÚC
1) Viết chương trình tính tổng, hiệu, tích, thương của hai phân số Trong đó phân số thuộc kiểu cấu trúc
ó thà h hầ ố ê tử à ẫ
46
có 2 thành phần số nguyên tử và mẫu
2) Xây dựng cấu trúc điểm để lưu trữ hoành độ, tung
độ của 1 điểm trong mặt phẳng Nhập vào toạ độ 2 điểm Tính khoảng cách giữa 2 điểm đó
3) Xây dựng cấu trúc Số phức gồm 2 thành phần: phần thực và phần ào Tính tổng, hiệu 2 số phức
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
BÀI TẬP TẠI LỚP
4) Xây dựng cấu trúc nhiệt độ gồm 2 thành phần: giá
trị (số nguyên) và loại (kí tự C hoặc F) Viết chương
trình nhập vào 1 loại nhiệt độ, đổi sang loại nhiệt độ
kia
) Xâ d ấ t ú hì h hữ hật ồ thà h hầ
47
5) Xây dựng cấu trúc hình chữ nhật gồm 2 thành phần:
chiều dài và chiều rộng Nhập vào 2 hình chữ nhật
In ra thông tin của hình chữ nhật nào có diện tích
lớn hơn
6) Viết chương trình nhập hồ sơ học sinh của lớp học
gồm: tên, tuổi, điểm trung bình cả năm In ra tuổi
lớn nhất, điểm trung bình cao nhất của lớp
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu
THANK YOU
48
OOP-CHƯƠNG 2-NGÔN NGỮ C++ GV: Võ Hồng Bảo Châu