Mã chết ngồi đó không làm gì cả, nhìn chằm chằm vào chúng tôi biết rằng nó sẽ không bao giờ bị xử tử ... nhưng hôm nay chúng tôi có thể trả thù.
Đặc điểm kỹ thuật
Đầu vào sẽ là một chuỗi nhiều dòng.
Mỗi dòng có thể là một bài tập hoặc một biểu thức .
Bài tập
Một bài tập có dạng <name> = number
trong đó tên là một chuỗi các chữ cái, dấu gạch dưới và số, nhưng không bắt đầu bằng một số.
Các biến có thể được chỉ định bất kỳ số lần.
Biểu hiện
Một biểu thức có dạng <var_name OR number> <operation> <var_name OR number> ...
Một biểu thức có thể là bất kỳ sự kết hợp nào của:
- Các biến đã được xác định
- Toán tử số học cơ bản
+-*/
- Số (số nguyên)
Sản lượng dự kiến
Bạn nên xuất chuỗi với các bài tập dự phòng , các bài tập không bao giờ được sử dụng bởi bất kỳ biểu thức nào sau nó, được loại bỏ. Xin lưu ý rằng các bài tập cũng có thể được thực hiện dự phòng nếu một phép gán bổ sung cho cùng một biến được thực hiện trước khi một biểu thức sử dụng biến được thực thi.
Các trường hợp thử nghiệm
trong
a = 10
a * 3
ngoài
a = 10
a * 3
trong
foo = 8
2 - 1
a = 18
ngoài
2 - 1
trong
a = 10
a = 8
b = 4
ab = 72
b / 6
b + 1
ngoài
b = 4
b / 6
b + 1
trong
a = 1
a = 2
a + 1
ngoài
a = 2
a + 1
trong
FooBar1 = 0
Fuz__ = 8
Fuz__ / 1
ngoài
Fuz__ = 8
Fuz__ / 1
trong
a = 1
a + 1
a = 2
a + 1
ngoài
a = 1
a + 1
a = 2
a + 1
trong
a = 1
1 / 5 * 8 + 4
ngoài
1 / 5 * 8 + 4
trong
a = 1
a + 1
a = 1
a + 1
ngoài
a = 1
a + 1
a = 1
a + 1
trong
a = 7
5 / a
ngoài
a = 7
5 / a
a = 1; a + 1; a = 1; a + 1;
? Trường hợp thứ hai chỉa = 1
có thể bị loại bỏ vìa
trước đây được đặt thành cùng giá trị (1
).