בלאגן...
אתה עשית פה קצת בלאגן... את מה שאתה רוצה לעשות אפשר לעשות ב3 שורות בערך. אני אנסה להסביר: קודם הלולאה הראשונה מיותרת כי אין לך מה לבטל אפסים מובילים כי פשוט לא תהיה להם משמעות אח"כ. האמת היא שאין לי כח לנסות להבין מה עשית פה (ואני אשמח אם תסביר מה כל חלק אמור לעשות - זה ד"א חלק מכתיבה נכונה של קוד: שיהיה מובן, קריא, ועם תיעוד). מה שבטוח זה שיש לך הרבה יותר משתנים, אתה לא צריך לעשות חזקה בשום שלב, והתוכנית הרבהי ותר מידי ארוכה ולא יעילה. אני אנסה להדריך אותך לפתרון: יש לך מספר ביד, num. כדי להפוך את סדר הספרות שלה אתה צריך להוציא אותן אחת אחת ולהכניס אותן לתוך משתנה אחר, כאשר אתה חייב להוסיף אותן מימין למה שקיים שם כבר. דוגמא: נניח שיש לי את המספר num = 123 ואני רוצה להפוך את סדר הספרות ולהכניס לתוך result. אני אקח את הספרה 3 ע"י num%10 ואכניס לתוך result. ואמחק אותה מnum ע"י num/10. קיבלתי num = 12, result = 3. עכשיו אני מוציא את הספרה 2, שוב ע"י num%10. מוחק אותה מnum ע"י num/10 ומכניס אותה מימין לספרה 3. איך אני עושה את זה? המספר שאני אמור לקבל הוא 32 נכון? אז מה שלי קופץ מיד לראש זה להכפיל את מה שיש כרגע בresult 10, ופשוט להוסיף למספר את 3 ככה: result = result*10+3. קיבלתי: num = 1, result = 32. אני עושה אותו דבר עם 1 שנשאר בnum ורואה שאני צריך לעשות אותה פעולה כדי להכניס אותו לresult... עכשיו num יהיה אפס, ואני מפסיק. אתה בטוח יכול להמשיך מפה. רמז: מספיקה לך לולאה אחת ושני משתנים (תלוי כמובן אם אכפת לך שnum יישאר כמו שהוא היה...)