Đăng ký học Excel và VBA cùng GPE tháng 11 - TPHCM

Đăng ký học Excel và phân tích số liệu cùng GPE tháng 12 - TPHCM

Mua sách "VBA trong Excel - Cải thiện và tăng tốc" tái bản

Cộng góc lượng giác trong Excel ???

Thảo luận trong 'Hỏi đáp những vấn đề khác' bắt đầu bởi tranngochai1979, 14 Tháng hai 2008.

  1. tranngochai1979

    tranngochai1979 Thành viên mới

    em có các góc lượngg giác, giả sử : 46°58'46" + 158°42'50" thì làm thế nào
    em đã đọc được bài cài đặt thuộc tính độ phút giây nhưng ở đó mới chỉ hướng dẫn trừ góc, còn cộng góc em chưa nghĩ ra, excel em rất dốt, mong các bác chỉ giáo
    &&&%$R
     
  2. haonlh

    haonlh Thành viên tích cực

    góc độ phút giây

    Tôi có nói đến cách nhập giá trị góc theo độ phút giây vô excel bằng cách dùng định dạng Time.
    Khi đó, bạn có thể cộng, trừ chúng bình thường. Chú ý là dạng Time không thể hiện giờ âm, nên công thêm 360:00:00 cho ô có giá trị âm

    Bằng cách này, các giá trị góc đều được tính bình thường (ví dụ như tính trung bình cộng của góc).

    Tuy nhiên, để tính toán khác, phải nhân giá trị đó với 24 (tại sao? xin hẹn 1 dịp khác), đổi sang radian (hàm RADIANS). Ví dụ (đã nêu trong 1 bài)
    Ô A1 nhập 30:1:3 (sẽ thấy 30:01:03)
    Ô A2 nhập = A1*24
    Ô A3 nhập = radians(A2)
    Ô A4 nhập = sin(A3)
    Như của em:
    ô A1 nhập 46:58:46
    ô A2 nhập 158:42:50
    ô A3 nhập = A1 + A2
     
    Lần chỉnh sửa cuối: 14 Tháng hai 2008
  3. hoangedc

    hoangedc Thành viên mới

    Tính toán lượng giác với góc độ/phút/giây trong excel

    Có một cách đơn giản mà không bao giờ sai số học là nhập độ/phút/giây trong 3 cột khác nhau của bảng excel. Cột thứ tư tính tổng (quy đổi phút giây về độ)
    Sau đó tính toán bình thường.
    Ví dụ:
    Ô A1= 89độ
    Ô B1=59 phút
    Ô C1=60giây
    ô D1=A1+B1/60+C1/3600=90
    Ô E1=cos(D1*pi()/180)=0,000

    Chú ý: định dạng 3 số 0 sau dấu phẩy để dễ thấy thay đổi kết quả khi nhập phút/giây có các giá trị nhỏ.

    (Định dạng theo kiểu hh"o"mm""ss""" sẽ hiển thị sai còn định dạng kiểu custom ##"0"##""##""" hiển thị đúng, đẹp, nhưng tính toán lại sai vì lúc đó 1độ = 100phút và 1 phút sẽ bằng 100 giây)
     
  4. namvanvu

    namvanvu Thành viên mới

    thắc mắc trong tính SIN?

    sao khi tính Sin(radians(180)) nó lại ra thế này mà không phải số 0: 1.22515E-16
    Xin cảm ơn mọi người!

    email: vuvannam1988@gmail.com
     
    Lần chỉnh sửa cuối: 27 Tháng bảy 2010
  5. Ếch Xanh

    Ếch Xanh Thành viên tích cực

    Tôi nghĩ với 0 độ thì = 0, nhưng với góc 180 độ thì con số rất nhỏ, nhỏ hơn cả 1 phần tỷ (0.000000000000000122514846) nên ta cho nó = 0, nhưng thực tế, nó vẫn lớn hơn 0.
     
    Lần chỉnh sửa cuối: 27 Tháng bảy 2010
  6. ptm0412

    ptm0412 Excel Ordinary Member Staff Member Super Moderator

    Sin 0 = Sin 180 = 0
    Đó là chân lý bắt buộc rồi. Làm gì có chuyện "vô cùng nhỏ nên cho bằng 0 mà thực tế lớn hơn không". (Coi chừng bị phạt quỳ gai mít nữa bi giờ)

    Còn sở dĩ Excel ra kết quả như vậy là vì Excel tính toán chứ không tra bảng như chúng ta. Tính bằng cách nào thì không biết, nhưng là những phép tính liên tục cho đến khi sai số nhỏ hơn 1 mức cho phép.

    Sau khi tính toán có sai số là hiển nhiên, và sai số này vô cùng nhỏ nên chấp nhận được.
     
    Lần chỉnh sửa cuối: 28 Tháng bảy 2010
  7. Ếch Xanh

    Ếch Xanh Thành viên tích cực

    Nếu vậy thì dùng công thức này vậy:

    =IF(MOD(A1,180)=0,0,SIN(RADIANS(A1)))
     
  8. haonlh

    haonlh Thành viên tích cực

    Excel chỉ cho giá trị cụ thể khi gặp sô vô tỷ, ví dụ như số pi không thể giải quyết tuyệt đối như toán học
    Ví dụ
    Theo toán thì MOD(100000000n, n) = 0
    Theo Excel thì MOD(100000000 * n, n) =0 chỉ với n khá nhỏ, còn với n = 123456789012 thì khác 0 (có len(n) = 12 < 15 )

    Trở lại sin(pi())<>0: Do pi() trong Excel là số gần đúng số pi (không viết được như viết tay) nên sin(pi()) cho kết quả gần đúng bằng sin(pi),
    tức là 0. (tôi viết pi() là hàm của Excel, còn pi là số pi theo định nghĩa là tỷ số của chu vi và đường kính của đường tròn bất kỳ).

    Nói tóm lại: Dù gì thì Excel là công cụ hỗ trợ ta tính toán chứ không hỗ trợ suy diễn.
    Đặc biệt, dù bộ nhớ của máy tính lớn thế nào thì người ta cũng không thể cài đặt đúng giá trị cho số bất kỳ.
    Và khi tính SIN(PI()), nó không quy đổi về các góc đặc biệt, mà tính luôn theo khai triển Macloranh (là tính gần đúng vì không thể tính đến vô cùng) với 1 số pi() gần đúng. Và như vậy sẽ sinh ra sai số.
     
    Lần chỉnh sửa cuối: 19 Tháng tám 2010
  9. Ếch Xanh

    Ếch Xanh Thành viên tích cực

    1) Xin thưa với bạn là Excel chỉ giải quyết giá trị N khi và chỉ khi LEN(N) = 15, lớn hơn 15 số nó tự động biến các số sau 15 thành 0 hết, nên sai số rất lớn!
    2) Như Thầy Mỹ có nói khi Excel tính toán nên có sai số, do sai số nên giá trị vẫn lớn hơn 0 dù rất nhỏ, nên tôi đã bẫy lỗi gặp trường hợp đó ta cho bằng 0 là hợp lý!

    => Mặc dù Excel tính toán tuyệt vời, nhưng cũng có lúc ta phải định nghĩa lại cho nó phù hợp với yêu cầu mục đích của chúng ta.

    Thân ái.
     
  10. baocan

    baocan Thành viên mới

    - số liệu bạn nhập vào excel là độ phút giây, do đó cần chuyển về -> độ thập phân -> tính toán -> xuất kết quả ra độ thập phân -> chuyển đơn vị về lại độ phút giây
     
    Lần chỉnh sửa cuối: 8 Tháng tám 2010

Chia sẻ trang này