| 
          
           | | נשלח בתאריך: 01 August 2007 בשעה 18:06 | | IP רשוּם | 
 |   |  
           | 
 |  docsworld זה ממש פשוט. ואלצ'קו - מה אתה מסבך אותו??... אתה קולט משתנה מהמשתמש בשם N (מסוג מספר שלם, כמובן) ובנוסף אתה יוצר משתנה של תו בודד (char) - ורק בשביל ההמחשה נקרא לו בשם X. ובתוך לולאת for שרצה N פעמים (לפי מספר התווים שצריך להזיז) אתה רושם קוד כזה: העתק את התו האחרון של המחרוזת לתוך X. כעת אתה פותח לולאה שנייה שיכולה להיות לולאת for או לולאת while לבחירתך. נניח שאורך הלולאה הוא Y תווים, אז הלולאה תעשה את הפעולה הבאה: 1) העתק את המיקום האחד-לפני-האחרון במחרוזת (Y-1) למיקום האחרון (Y) 2) העתק את המיקום השני-לפני-האחרון במחרוזת (Y-2) למיקום האחד-לפני-האחרון (Y-1) 3) העתק את המיקום השלישי-לפני-האחרון במחרוזת (Y-3) למיקום השני-לפני האחרון (Y-2) וכן הלאה, עד שהעברת את כל התווים במחרוזת מיקום אחד ימינה. *פה הלולאה השנייה תסתיים ונצא ממנה, אך עדיין נהיה בתוך לולאת ה-for הראשונה. ואז תכתוב את הפקודה הפשוטה: העתק למיקום הראשון במחרוזת את התו השמור ב-X. *ופה תסתיים לולאת ה-for הראשונה. ושוב אותו תהליך בדיוק יקרה (N פעמים). :) זהו. אם לא הבנת משהו - תשאל! אני אשמח לענות. |