של הספרה. כל ספרות הן בין 48 ל 57 (כמו שאתה עושה בבדיקה ב IF) עכשיו אן למשל הספרה היא '2' אז האסקי שלה הוא 50. ופחות האסקי של '0' שהוא 48 יתן 2 (כערך מספרי) ןלכן ניתן גם היה לרשום 48 במקום '0'.
מחזירה בכל פעם שהתו הוא מספר את הערך המספרי שלה למשל אם המחרוזת היא "123" אז ב 1 יחזיר 100 ב 2 יחזיר 20 ב 3 יחזיר 3 במצב הזה הסכום נותן את המספר המבוקש. ומה התו הבא ? כמובן '0\' ובמקרה זה אין מה להוסיף אז הוספתי אפס. כמובן שאפשר היה גם לתת תנאי עצירה במקום זה. זה מה שעלה לי בראש באותו הרגע.
אם לא ניתן להחזיר את המחרוזת כמיספר יש לכתוב 1- אז לפי התוכנית שלך אני מנסה לדחוף את 1- איכשהו וזה לא עובד.. - זה מחזיר לי בכל אופן מס' מוזר הנה הקוד: מה אני צריך לעשות?
double Mispar(char a[],int len) { int n = strlen(a) - len; if ((a[n]>=48)&&(a[n]<=57)) { return (a[n] - '0') * pow(10, len - 1) + Mispar(a,len-1); } if ((a[n]<48)&&(a[n]>57)) return -1; else return 0; }