Làm thế nào để tạo ra một hàm mà kêu người dùng nhập vào 1 phương trình có tham số rồi dùng tham số mà người dùng n hập trở thành tham số của hàm?

Chào mọi người !
Mọi người giúp mình làm thế nào để tạo ra một hàm mà kêu người dùng nhập vào 1 phương trình có tham số rồi dùng tham số mà người dùng n hập trở thành tham số của hàm không ạ. Vd thế này image làm sao để người dùng chỉ cần nhập biểu thức i/2 thì hàm sẽ nhận i đó rồi tính toán cục bộ. (Hơi khó hiểu mong mn giúp hì hì).

Tức là hàm nhận tham số là hàm một biến à :smiley: nếu phải decode biểu thức (aka. eval) nữa thì hơi căng vì đây là C, không phải Python :slight_smile:

Tức bạn muốn nhập sigma i = 1 to n of i / 2 thì chương trình tự sinh ra hàm sigma trong code. Hay là nó sẽ tự động tính toán cái biểu thức đó? O_O

2 Likes

Vậy là khó lắm à bác :sweat_smile: mới đụng đến lập trình nên cũng k rành haha

mình tự tạo hàm tính toán còn người dùng chỉ cần nhập biểu thức thôi bác :grin:

Mình e là khá khó đó. Đặc biết với biểu thức tạp. Về phức tạp như calculate x^2 + x - 3 hay Sigma như trên thì mình không rõ. Tuy nhiên những biếu thức tính toán đơn giản bạn có thể tham khảo: Giải thuật Shunting yard

2 Likes

Bạn cho ví dụ cụ thể nhé, input, output là gì? Như vậy dễ phân tích đề hơn.


Ví dụ:
image

latex_eval("\\sum_{i=1}^{n}\\frac{i}{2}", "n", 5); // 7.5

image

latex_eval("x^2+x-3", "x", 1); // -1

image

latex_eval(
  "\\sum_{k=i}^{j}{k2^{k-1}}",
  "i", 1,
  "j", 3
); // 17
2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?