30/09/2018, 17:04

[Hỏi] Các thao tác trên tập tin

Cho mình hỏi : Cách nhận các toán hạng và toàn tử khi đọc từ tập tin ?
Vd: file a có nội dung : (a + b ) - c%2

Khi đó mình nhập dữ liệu từ file. Vậy làm sao để máy tính nhận ra đâu là toán tử đâu là toán hạng để tiến hành tính toán ?.
Mình có nghe là dùng Ký pháp Ba Lan . Nhưng nó dài và hơi phức tạp.
Không biết là mình có thể dùng cách nào khác không ?. Và nếu chưa có thì cho mình xin code của Ký pháp Ba Lan nha
Tks ạ :3

Truong Pham viết 19:20 ngày 30/09/2018

lấy ký tự rồi dùng lệnh if thôi

ASCII viết 19:07 ngày 30/09/2018

Mình chưa rõ lắm
Ví dụ : a+b . Nếu a[k] == ‘+’ thì tong = a[k-1] + a[k+2] .
Có phải ý tưởng như vậy không ?.

Nhưng nếu a+b/c thì sẽ dùng k được rồi bởi vì các lệnh if cho từng toán hạng nằm rời nhau .
Còn nếu lồng vào nhau thì ứng với mỗi phép kiểm tra thì lại dùng 1 cơ số những cái if lồng nhau, khá là tốn kém .

Demo giúp mình nhé . Mình gà qá >.<

Minh Hoàng viết 19:19 ngày 30/09/2018

Nên dùng ký pháp Balan. Còn không thì phải xét, nhân chia trước, cộng trừ sau, trong ngoặc thực hiện trước…

ASCII viết 19:14 ngày 30/09/2018

Bạn giúp mình cái code theo Ký pháp Ba Lan đi .

Bài liên quan
0