• [THÔNG BÁO] CẢNH BÁO LỪA ĐẢO MẠO DANH QUẢN TRỊ VIÊN
    Chào các thành viên GameVN,
    Dạo gần đây tình trạng lừa đảo scamming và phishing đang gia tăng. Ban quản trị GameVN xin lưu ý toàn bộ thành viên:
    KHÔNG/ ĐỪNG / CẤM cho bất kỳ ai tự xưng là quản trị viên của server vay tiền.
    Mọi hành vi lân la làm quen, tự tiện nhắn tin trên Discord, Facebook, Zalo hoặc các nền tảng mạng xã hội khác,
    núp bóng dưới danh nghĩa sinh hoạt của quản trị viên, đều có tỉ lệ rất, rất cao là lừa đảo.
    Nếu có tài khoản lạ add friend hoặc nhắn tin xin tiền dưới danh nghĩa admin:
    Block ngay
    Report ngay
    Không chuyển khoản, không cung cấp thông tin cá nhân


    Quản trị viên của forum và Discord server GameVN không có nhu cầu vay tiền thành viên.
    Không có lý do nào để admin chủ động kết bạn rồi xin tiền.
    Mọi thông báo chính thức chỉ được đăng trên kênh thông báo của server và topic chính thức trên forum.
    Tin nhắn riêng từ tài khoản lạ không phải thông báo của ban quản trị.
    Cảm ơn các bạn đã chú ý và cùng giữ cộng đồng an toàn.
    — Ban quản trị GameVN

    Tắt thông báo bằng nút X bên góc phải của bảng thông báo*

Giúp mình làm bài tập VB6

  • Thread starter Thread starter TKH
  • Ngày gửi Ngày gửi

TKH

Mega Man
Lão Làng GVN
Tham gia ngày
28/11/04
Bài viết
3,301
Reaction score
1,754
Mình nhận 1 bài tập từ thầy, đề là: Chuyển số thập phân sang hệ 2, hệ 8 và hệ 16, cho phép xài code sưu tầm nhưng phải hiểu, ko dc phép xài code có sẵn của bác Bill (lệnh hex() và oct() cho hệ 8 và hệ 16). Yêu cầu là cái gì cũng phải chuyển dc, kể cả dấu - và phần thập phân (như 1.25)

Mấy bạn giúp mình dc hem, ý tưởng của mình là:
-Dùng lệnh InStr để dò dấu ".", nếu thấy sẽ tách ra 2 phần nguyên và thập phân, ko thì gán cho nó là phần nguyên.
-Dấu "-" thì cũng dùng lệnh InStr để tìm, nếu thấy nó sẽ chuyển kết quả cuối cùng từ 0 ->1 và từ 1 ->0 (phương pháp bù 1)
-Phần thập phân sẽ dc nhân lên (tuỳ hệ nào mà sẽ x2, x8 hay x16), dùng left lấy số đầu tiên, mid để lấy phần còn lại x tiếp. Khi x mà gặp số vô hạn tuần hoàn (dạng như số 0.3 mà x2 mãi ko thành 0) thì sẽ dừng lại (thầy bảo dùng bit giới hạn nhưng mình ko hiểu lắm)
-Phần nguyên sẽ dc chia lấy dư mãi cho đến khi ko chia dc nữa, ghép và đảo các số dư (chắc dùng reverse() ). Sau đó ghép phần nguyên và phần thập phân (đã tính) cho ra kết quả
-Riêng hệ 16 sẽ có hàm để đổi các số từ 10 trở lên sang các chữ cái.

Ý tưởng là thế, nhưng lúc thực hiện mình tắc luôn (chủ yếu ở phần chia số nguyên, nhân thập phân và đảo số khi đụng số âm). Theo mình chỉ cần làm dc hệ 2 là hệ 8 và 16 cũng làm dc tương tự, hy vọng các bạn giúp mình T.T
 
Hix, ko ai chỉ giúp, buồn ghê :(

Thôi mấy cái kia chắc mình tự làm dc, nhưng còn 1 phần mình thực sự bí, xin các bạn chỉ giùm, gần đến hạn rồi >.<

Khi tách phần thập phân ra thì mình sẽ cứ x lên rồi lấy số đầu tiên cho đến khi = 0, thế nhưng nếu gặp phải số thập phân vô hạn tuần hoàn (0.3 thì nhân cỡ nào cũng ko = 0) thì phải làm thế nào ?

Và ở hệ nhị phân số âm có thể dùng phương pháp bù 1, bù 2, nhưng ở hệ 8, hệ 16 thì biểu diễn nhưng thế nào ?
 
Back
Top