بالنظر إلى تعبير رياضي في تدوين infix، يُطلب منك تحويله إلى تدوين postfix باستخدام مقتطف التعليمات البرمجية المقدم. في تدوين postfix، تتم كتابة العوامل بعد المعاملات، بينما في تدوين infix، تتم كتابة العوامل بين المعاملات. يجب أن ينفذ برنامجك كائن Stack `stk` ويستخدم أساليبه `push(op)` و`push(operand)` و`pop()` و`display()` لتنفيذ العمليات المطلوبة. مهمتك هي تعديل مقتطف التعليمات البرمجية المحدد عن طريق كتابة سطور التعليمات البرمجية اللازمة لتحويل تعبير infix إلى تدوين postfix.
{"evolved_from": "Given a mathematical expression in infix notation, your task is to convert it to postfix notation.\n\nInfix notation is the conventional way of writing mathematical expressions, where operators are written between the operands. For example, the expression \"2 + 3 * 4\" is written in infix notation.\n\nPostfix notation, also known as Reverse Polish Notation (RPN), is an alternative way of writing mathematical expressions, where operators are written after the operands. For example, the expression \"2 3 4 * +\" is written in postfix notation.\n\nThe code snippet begins by initializing a Stack object `stk`. The subsequent lines of code perform operations on the `stk` Stack object:\n\n1. The line `stk.push(op)` pushes an operator `op` onto the stack.\n2. The line `stk.push(operand)` pushes an operand `operand` onto the stack.\n3. The line `stk.pop()` removes and returns the top element from the stack.\n4. The line `stk.display()` calls the `display()` method of the `stk` Stack object, which is expected to display the contents of the stack.\n\nWrite a program that takes a mathematical expression in infix notation as input and converts it to postfix notation using the provided code snippet.", "kind": "synthetic", "source": "argilla/distilabel-evol-prompt-collective"}