Công cụ tính toán của hãng tìm kiếm Mỹ đôi khi gặp trục trặc với những số lớn - điều nghe có vẻ không phù hợp với một công ty mà tên gọi của nó đại diện cho một con số vĩ đại (Google có nghĩa là googol - số chứa 100 chữ số 0 ở phía sau số 1).

Chẳng hạn, khi lấy 2999999999999999 trừ 2999999999999991, Google sẽ cho kết quả bằng 0 thay vì bằng 8. Hoặc 400000000000002 - 400000000000001 cũng được trả lời là 0. Nhưng Google lại đưa ra đáp án đúng là 2 với phép tính 400000000000002 - 400000000000000.

Ngoài ra, khi người sử dụng nhập 2.00135558564^1023, Google sẽ diễn giải thành 1.79769313 x 10^308. Nhưng nếu tăng lên thành 2.00135558565^1023, công cụ tính toán lại hiểu đó là một lệnh tìm kiếm chứ không phải một phép tính.

Việc mã hóa và viết thuật toán cho các số lớn không hề đơn giản. Hầu hết những máy tính cơ (calculator) thông thường cũng không đủ chỗ cho con người nhập 16 chữ số như trên. Tuy nhiên, một số người sử dụng cho rằng, công ty nào tự đặt tên mình là một con số lớn sẽ cần phải chính xác hơn khi tính toán.

Theo Vnexpress/CNet



Bình luận

  • TTCN (4)
Hải Nam  30903

Chính xác tương đối thôi chứ! Google có lẽ dùng kiểu double (64 bit) để tính toán. Theo chuẩn (IEEE 754) thì 53 bit được dùng cho để biểu diễn phần định trị, 11 bit cho phần số mũ (cao nhất là 10^308, con số nêu trong bài viết). Với 53 bit để biễu diễn giá trị, thì độ chính xác tối đa là 15 chữ số mà thôi.

Người tìm ra mấy phép tính này có lẽ là một kĩ sư hay một nhà nghiên cứu, muốn chọc cho vui vậy thôi. Google chứ có phải Maple hay MatLAB đâu! Mà ngay cả MatLAB cũng mặc định dùng double, còn Maple thì cũng phải khai báo kiểu "siêu dài" để làm việc với độ chính xác cao.

Tất nhiên, sẽ chẳng mất mấy thời gian để cải thiện kết quả. Có lẽ Google hành động ngay thôi!

present  19

cải thiện làm gì nhể? matlab bự chác vậy đã đưa ra định nghĩa INFINITY cho mấy số bự đó. Ba cái trò nhân chia số lớn này có học qua phương pháp tính là biết liền. Đem hù cho bà con xã hội hoạ may.... Smile

present  19

Tất nhiên, sẽ chẳng mất mấy thời gian để cải thiện kết quả. Có lẽ Google hành động ngay thôi!

==> cái này thì bác nhầm to. hạn chế này là hạn chế của máy tính. muốn cải thiện phải xuất phát từ phần cứng à +phần mềm à.

Bác mà cải thiện "dễ" vậy google nó mời bác qua làm researcher thì tội bà con ở việt nam, 0 còn ai viết bài bình luận mà nghe nữa. haha

Hải Nam  30903

Chỉ là thay đổi thuật toán hoặc kiểu dữ liệu thôi mà. Khi nhận biết biểu thức toán, Google sẽ chuyển sang server khác để tính, mà cái server này thì cấu hình có lẽ thuộc loại thường thôi. Thuật toán để làm việc với các số lớn đã được con người hoàn tất từ cách đây vài chục năm rồi.