یک ماشین محاسبهگر یک حافظهی داخلی به نام $M$ دارد. این ماشین میتواند با انجام دستورهای زیر یک عبارت را محاسبه کند:
در دستورهای فوق $X$ میتواند یک عدد صحیح یا یک متغیر باشد. فرض کنید مقدار $M$ در ابتدا صفر است. برای مثال، دستورهای زیر، از راست به چپ، عبارت $ax+5$ را محاسبه میکند: $a$ ،$Add$ $x$ $Mul$ و ۵ $Add$.
کدام یک از عبارتهای زیر با این ماشین قابل محاسبه نیست؟
پاسخ
گزینه (۳) درست است.
برنامهی گزینهی ۱ از چپ به راست:
$$ax^2+bx+c=(a\times x +b) \\ Add \quad a,Mul \quad x,Add \quad b,Mul\quad x,Add \quad b$$
برنامهی گزینهی ۲ از چپ به راست:
$$(a+b)xy+ya=[(a+b)\times x+a]\times y \\ Add \quad a,Add \quad b,Mul\quad x,Add \quad a,Mul\quad y$$
برنامهی گزینهی ۴ از چپ به راست:
$$3x^5+1=(((((3\times x)\times x)\times x)\times x)\times x)+1 \\ Add \quad x, Mul\quad 3,Mul\quad x,Mul\quad x,Mul\quad x,Mul\quad x,Add \quad 1$$
گزینه ۳ را به صورتهای اشاره شده نمیتوان پرانتزگذاری کرد.