زبان برنامهنویسی که شرح داده میشود، برای کامپیوتری نوشته شده است که تعدادی خانهی حافظه، با شمارههای ۱، ۲، ۳، … دارد که هر خانه میتواند یک عدد صحیح نامنفی نگه دارد. هر برنامه به این زبان از یک سری بلوکهای احتمالا تودرتو تشکیل شده است. شروع هر بلوک با کلمهی Repeat و پایان آن با کلمه Forever مشخص میشود. دستورات قابل استفاده در این زبان عبارتاند از:
برنامه پس از رسیدن به انتهای هر بلوک اجرای آن بلوک را از سر میگیرد و بنابراین خارج شدن از یک بلوک تنها از طریق دستور $Dec$ ممکن میباشد. یک برنامه، شامل یک بلوک دربرگیرندهی احتمالا چند بلوک و دستور است.
به عنوان مثال برنامه زیر عدد قرار گرفته در خانه ۱ حافظه را به خانه ۲ حافظه منتقل میکند.
$Repeat \\ \quad Repeat \\ \quad\quad Dec(2) \\ \quad Forever \\ \quad Repeat \\ \quad\quad Dec(1) \\ \quad\quad AddTo(2) \\ \quad Forever \\ \quad Dec(1) \\ Forever$
الف) برنامهای بنویسید که اجرای آن باعث شود، خارج قسمت تقسیم عدد ذخیره شده در خانهی ۱ حافظه بر عدد ذخیره شده در خانهی ۲ حافظه در خانهی ۳ ذخیره شود.
ب)برنامهای بنویسید که پس از اتمام اجرای آن در صورتی که عدد ذخیره شده در خانه ۱ حافظه اول بود در خانه ۲ حافظه عدد صفر و اگر نه عدد ۱ ذخیره شده باشد.
توضیح: در هر جای برنامه که لازم میدانید، در مورد ایدهای که دارید، توضیح دهید!