منظور از افراز کردن یک عدد n این است که n را بصورت مجموع اعدادی صحیحی که کوچکتر یا مساوی n هستند بنویسیم.
برنامهای بنویسید که یک عدد n را از ورودی بگیرد و کلیّه روشهای افراز n را در خروجی بنویسد، دقت کنید که ترتیب اعداد موجود در یک افراز اهمیّت دارد مثلاً 2 1 و 1 2 دو افراز مختلف برای ۳ را نشان میدهند. بهعنوان مثال برنامهی شما برای n=3 باید افرازهای مقابل را در خروجی بنویسد:
"1 1 1" "2 1" "1 2" "3"