Trang ChínhTrang Chính  CalendarCalendar  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
News & Announcements
  • Top posters
 Mr.Pakapun (256)
 ddtan90 (178)
 tvduong (147)
 dthnam90 (137)
 minhquankq (101)
 arianbo (70)
 DoanhNhan (54)
 chicken (53)
 stormit (52)
 gentle_storm (47)

Share | 
 

 Swap 2 số tự nhiên

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
ddtan90
Admin
Admin
avatar

Tổng số bài gửi : 178
Join date : 30/12/2010
Age : 26
Đến từ : SE 3 - K34

Bài gửiTiêu đề: Swap 2 số tự nhiên   Mon Jan 10, 2011 4:38 pm

Swap là thuật toán dùng để đổi giá trị 2 biến.
Ví dụ:
a=3
b=5

sau khi gọi hàm Swap(a,b) thì : a=5, b=3.

Cách đơn giản nhất để viết hàm này là dùng thêm một biến tạm:
Code:

void Swap (int &a, int &b) { //lưu ý phải có dấu & trước a và b để truyền vào kiểu tham chiếu
              int t;
              t=a;
              a=b;
              b=t;
}

Đây là cách phổ biến nhất. Tuy nhiên trong giải thuật trên, chúng ta thấy rằng phải dùng biến tạm t để lưu giá trị a.
Có một cách khác không cần dùng biến tạm mà vẫn có thể đổi giá trị của 2 số như sau:
Code:

void Swap (int &a, int &b) {
              a+=b;
              b=a-b;
              a-=b;
}

ví dụ: a=5 b=3
a+=b; => a=8 b=3
b=a-b; => a=8 b=5
a-=b; => a=3 b=5

_____________________
Nothing is impossible!
Về Đầu Trang Go down
Xem lý lịch thành viên
 
Swap 2 số tự nhiên
Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» [Tin công nghệ] Công nghệ mới làm giảm tiêu thụ nhiên liệu cho đội tàu biển
» [GAME] Thử tài: "Bạn hiểu BIG BANG được bao nhiêu phần trăm"???
» Các phương pháp cập cầu
» [Spam House No.15] Học mà không chơi là chôn vùi tuổi trẻ
» Phân phối máy nén bitzer tại Việt Nam

Permissions in this forum:Bạn không có quyền trả lời bài viết
Câu lạc bộ Hỗ Trợ Học Tập :: LẬP TRÌNH :: .::LẬP TRÌNH C/C++-
Chuyển đến