假如有一种语言 A,除了传统的顺序执行语句以外,不支持 for, while,其分支结构、循环结构仅支持使用一种 if-jump 语句实现:
if <condition> jump <line> 表示当执行到此语句时,若满足布尔式 <condition>,则跳转到第 <line> 行继续执行。(约等于 C++ 的 if(<condition>) goto <tag>)
有没有两种算法,
- 能把 C++ 等使用
for, while 的高级语言程序转化为 A 语言程序;
- 能把 A 语言程序转化为 C++ 等使用
for, while 的高级语言程序。
(不考虑顺序执行语句。我认为相比之下,第一个问题更好解决。)
这个问题仅仅是好奇,没有必须解决的必要。