Avatar
プログラムが停止するかどうかを一般的に判定するプログラムを作ることはできません(数学的に証明されています)。 特定の問題について考えても、ちょっとしたプログラムでも停止するかどうかを考えるのはとても難しいです。たとえば、↓のプログラムが停止するかを効率的に判定できるプログラムを書けるなら、それでフェルマーの最終定理が解けてしまいます。 outer: for i in 3... { for n in 3...i { for x in 1...i { for y in 1...i { for z in 1...i { if x ** n + y ** n == z ** n { break outer } } } } } }