Tìm số chính phương trong 1 biểu thức cho trước (1 người xem)

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

Người dùng đang xem chủ đề này

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia
8/6/06
Bài viết
14,761
Được thích
23,172
Nghề nghiệp
U80
Mình có biểu thức
(x - 2) x (x + 2) - (x + 4) (x + 6)

Tìm giúp kết quả của biểu thức trùng với số chính phương, khi x tăng từ 1 cho tới 1500
 
Không có dấu nhân đâu Hiếu thân mến ơi! X đó nha!
Kiểu này bắt chước theo 10^2 + 11^2 + 12^2 = 13^2 + 14^2 lúc rỗi mà thôi!

Chúc mọi người vui vẻ & hạnh phúc trong ngày!
 
Để xác địng số chính phương, ta cần có hay viết một hàm tự tạo;
Chuyện còn lại là tạo 1 Sub với vòng lặp chạy tứ 1 đến 1500 để tính trị của biểu thức !

$$$$@
[Lưu ý là có thể bị tràn số!]
 
Chạy đến tận 10 ngàn mà chưa tràn số. Dù sao cũng chĩ nhõn 1 kết quả là 15
 
Chạy đến tận 10 ngàn mà chưa tràn số. Dù sao cũng chĩ nhõn 1 kết quả là 15
em chạy đến 1 triệu rồi. vẫn 1 kq
Bài đã được tự động gộp:

screenshot_1761628863.png
có 1 cách nữa chạy đến 10 triệu thì ra 349 kết quả. tăng lên 1 số 0 nữa thì excel hết tài nguyên không tính được nữa. những con số này đã vượt quá 15 chữ số nên excel làm tròn 0000 ở cuối
screenshot_1761629674.png
nếu muốn tìm x thì đây.
 
Lần chỉnh sửa cuối:
em chạy đến 1 triệu rồi. vẫn 1 kq
...
có 1 cách nữa chạy đến 10 triệu thì ra 349 kết quả. tăng lên 1 số 0 nữa thì excel hết tài nguyên không tính được nữa. những con số này đã vượt quá 15 chữ số nên excel làm tròn 0000 ở cuối
Tôi chạy đến 1 triệu chỉ được 29 kết quả.

1761630010844.png

Thử tính căn bậc 2 của số đầu tiên trong hình của bạn thì hơn 1 tỷ.

1761630109270.png
 
Tôi chạy đến 1 triệu chỉ được 29 kết quả.



Thử tính căn bậc 2 của số đầu tiên trong hình của bạn thì hơn 1 tỷ.

View attachment 310168
thầy ơi tại số của em quá 15 chữ số rồi nên excel làm tròn 4 số 0 ở cuối. số thứ 2 của thầy là 3 triệu 462 nghìn 873. thầy chạy đến 10 triệu rồi. trong khi đó số thứ 2, thứ 3... thứ 32 của em mới có 4 triệu, mà em kiểm tra lại rồi, vậy thầy đã bỏ sót khá nhiều số rồi. à mà em không biết làm cách nào để cho excel hiện lên 19 số như của thầy nhỉ?
screenshot_1761632210.png
 
Thử giải phương trình tìm nghiệm, nhưng X mũ 3 là số lẽ qui về dạng mũ 2 của số chính phương khó quá, chịu thua.
Khi số quá 15 chữ số Excel tự lấy số gần đúng và kết quả không chính xác. Trong phương trình trên có X mũ 3, excel chỉ tính đúng khi x <= 100.000
Qua quan sát nghiệm X phải là bội số của 5, chữ số cuối phải là 0 hoặc 5
 
Thử giải phương trình tìm nghiệm, nhưng X mũ 3 là số lẽ qui về dạng mũ 2 của số chính phương khó quá, chịu thua.
Khi số quá 15 chữ số Excel tự lấy số gần đúng và kết quả không chính xác. Trong phương trình trên có X mũ 3, excel chỉ tính đúng khi x <= 100.000
Qua quan sát nghiệm X phải là bội số của 5, chữ số cuối phải là 0 hoặc 5
mình không muốn bắt bẻ đâu nhưng bạn nói sai nhiều quá. x mũ 3 của 2 =8 đâu có lẻ. mũ 2 của số chính phương? số CP là số được số khác mũ 2 mà thành. danh sách nghiệm X mình đã tính ra ở bài trên. qua quan sát thì chữ số cuối của X có thể là bất kỳ số nào.
 
mình không muốn bắt bẻ đâu nhưng bạn nói sai nhiều quá. x mũ 3 của 2 =8 đâu có lẻ. mũ 2 của số chính phương? số CP là số được số khác mũ 2 mà thành. danh sách nghiệm X mình đã tính ra ở bài trên. qua quan sát thì chữ số cuối của X có thể là bất kỳ số nào.
Bạn hiểu nhầm ý mình: "mũ 3 là số lẽ qui về dạng mũ 2 "
Bạn tính tay trên giấy xem kết quả có thật sự đúng không?
 
Mũ 3 là mũ lẻ, chứ không phải kết quả mũ 3 lẻ.
Tôi tính tới 10 triệu rồi, gõ nhầm. Tôi tính bằng VBA nên khác so với tính bằng hàm Excel. Vả chăng khi vượt 15 ký số thì tất cả đều sai. bình phương lên xong rút căn ra không bằng số cũ nữa. Kết luận là chỉ có con 15 là đúng thôi.
 
Mũ 3 là mũ lẻ, chứ không phải kết quả mũ 3 lẻ.
Tôi tính tới 10 triệu rồi, gõ nhầm. Tôi tính bằng VBA nên khác so với tính bằng hàm Excel. Vả chăng khi vượt 15 ký số thì tất cả đều sai. bình phương lên xong rút căn ra không bằng số cũ nữa. Kết luận là chỉ có con 15 là đúng thôi.
đúng vậy thầy ạ. giá trị của biểu thức khi vượt quá 15 con số là không đúng. xin lỗi Bạn HieuCD vì quá hấp tấp
 
đúng vậy thầy ạ. giá trị của biểu thức khi vượt quá 15 con số là không đúng. xin lỗi Bạn HieuCD vì quá hấp tấp
Tôi cho chạy đến 1 ngàn, 10 ngàn, 10 triệu để xem có tràn số hay không thôi. VBA chỉ tràn số khi khai báo biến Long, thậm chí LongLong, LongPtr. Không khai báo thì không tràn vì là kiểu Variant.
à mà em không biết làm cách nào để cho excel hiện lên 19 số như của thầy nhỉ?
Định dạng number bình thường.
 
Lấy số dòng của trang tính làm giá trị tới hạn thì cũng 1 kết quả chính phương mà thôi;
Thêm dù chỉ 1 đơn vị nữa là số không chính xác?
 
screenshot_1761641233.png
khi kiểm tra bằng autolisp thì kết quả này có vẻ đúng hơn.
 
Lấy số dòng của trang tính làm giá trị tới hạn thì cũng 1 kết quả chính phương mà thôi;
Thêm dù chỉ 1 đơn vị nữa là số không chính xác?
Không phải. Tại giới hạn excel có hơn 1 triệu dòng , lúc đầu tính mảng 1 chiều đến 1 triệu thì không ra dc 1 số. Về sau lấy thành mảng 2 chiều thành 10 triệu ô. Cái này không ảnh hưởng đến độ chính xác. Cái ảnh hưởng là do giới hạn 15 chữ số của excel
 
có 1 cách nữa chạy đến 10 triệu thì ra 349 kết quả. tăng lên 1 số 0 nữa thì excel hết tài nguyên không tính được nữa. những con số này đã vượt quá 15 chữ số nên excel làm tròn 0000 ở cuối
View attachment 310166
nếu muốn tìm x thì đây.
Số chính phương không bao giờ có tận cùng là 1 trong các số 2, 3, 7 & 8

Nên trước khi đem nó đi tra số chính phương cần tìm nhờ hàm MOD để loại bớt
Do vậy chương trình sẽ nhẹ hơn

Nhờ công thức ở bài #6 & với biểu thức mới
=LET(X,SEQUENCE(599641),A,(X-1)*X*(X+1)-(X+2)*(X+3),B,IFERROR(IF(INT(SQRT(A))=SQRT(A),A,0),0),
FILTER(B,B>0))
Mình phát hiện ra thêm vấn đề:
Nếu tăng 599641 lên thêm 1 đơn vị thì hàm cho ra thêm 1 kết quả ĐÁNG NGỜ
(ngoài con số 64)!
 
Lần chỉnh sửa cuối:
Nếu tăng 599641 lên thêm 1 đơn vị thì hàm cho ra thêm 1 kết quả ĐÁNG NGỜ
Rất đáng ngờ, thậm chí rất không nên tin.
Giá trị biểu thức trên với X = 599641 sẽ cho 1 con số có 15 chữ số, chưa bị Excel xử bỉ bằng cách nhồi nhét 1 đống số zero.
Tăng lên 1 tức là 599642 thì biểu thức cho kết quả 1 số có 18 chữ số, bị chê tức khắc.
 
Thôili để sáng mai em nghiên cứu lại. Nên nhớ rằng 11x11 có tận cùng là 1. Như anh hieucd đã nói. . X nhỏ hơn 100.000 không ra kq đúng đâu. Còn em thì tin ở autolisp
 

Bài viết mới nhất

Back
Top Bottom