ユーザーが方程式を入力して答えを得ることができる電卓プログラムを作成しようとしています。このための完全なコードは必要ありません。特定の部分について助けが必要なだけです。
私が取ろうとしているアプローチは、ユーザーに式を文字列 ( raw_input
) として入力してもらい、その入力から数値を整数に変換しようとすることです。その後、ユーザーがどのオペランドを使用し、それが方程式のどこにあるかに応じて、オペランドに実行させたいことを実行させる方法を知る必要があります。
このタスクを達成するために使用できる方法は何ですか?
これが基本的に私が今持っているものです:
equation_number = raw_input("\nEnter your equation now: ")
[int(d) for d in equation_number if d.isdigit()]
これらの行は、入力を収集し、数値を整数に変換しようとするためのものです。残念ながら、うまく機能していないようで、とにかく .isdigit は正の数に対してしか機能しません。
Edit- aong152 は、私が調べた再帰的解析について言及しており、望ましい結果が得られているようです。
しかし、この投稿の著者が使用しているコードを理解していません。再帰的な構文解析の基本を知っている人はいますか?