פורסם 2011 בנובמבר 2914 שנים ניסיתי לחשוב על דרך לסכום את מס' הספרות במספר מטיפוס signed ולא כ"כ הצלחתי..חשבתי לבודד כל מספר ע"י מודולוס ולהקפיץ איזשהו מונה ככה לאורך כל המספר אבל,לא הצלחתי ליצור תנאי לולאה נכון..
פורסם 2011 בנובמבר 2914 שנים 106 / 10 = 10you lost 6106 % 10 = 6only then you use /לפחות ככה אני זוכר את זה.
פורסם 2011 בנובמבר 2914 שנים למה מודולו ולא חלוקה רגילה? אתה מקצץ את המספר עד שהוא שווה 0. בבירור, אבל צריך גם מודולו בשביל לשלוף את הספרות עצמן. סתם לאפס את המספר לא יעזור לאף אחד
פורסם 2011 בנובמבר 2914 שנים למה אני צריך לשלוף את הספרות? אני פשוט מגדיל counter כלשהו. אם אתה רוצה לשמור על המספר תעתיק אותו למשתנה אחר.
פורסם 2011 בנובמבר 2914 שנים מחבר אבל זה עדיין לא משנה את את ערך המספר...אני לא יודע כמה ספרות יש במספר או ליתר דיוק כמה ספרות הטיפוס יכול להכיל.בנוסף,להעתיק אותו ממש לא יעזור לי אני צריך למנות מאפס את מס' הספרות המופיעות במס'.שניצל,עדיין לא מסתדר לי אלגוריתם כלשהו אני מסתבך עם זה ואין לי עוד אינדיקציה לאיך לעשות את זה...
פורסם 2011 בנובמבר 2914 שנים מה זה משנה כמה ספרות יש בו?לולאה שמתבצעת כל עוד המספר אינו 0. בלולאה אתה מקצץ את המספר ומגדיל מונה. אחרי הלולאה אתה מחזיר את המונה.תחשוב על מקרה הבסיס בו המספר הוא 0.
פורסם 2011 בנובמבר 2914 שנים יש פה קצר בתקשורת שנובע מאי בהירות של ההודעה הראשונה.למיטב הבנתי (ולפי ההודעה האחרונה שלו), פותח הת'רד רוצה לסכום את הספרות במספר, לא לחשב כמה ספרות יש בו.פותח הת'רד: להבא, תנסה להיות יותר ברור (לדוגמה, לספק דוגמאות לקלט ופלט).אני מבקש ממך שוב - כתוב כאן את האלגוריתם הבסיסי שאתה מנסה לעבוד עליו.
פורסם 2011 בנובמבר 2914 שנים int digital_sum(int n){ int s = 0; do { s += n%10; }while(n/=10); return s;}
פורסם 2011 בנובמבר 2914 שנים אני, אישית, הייתי יורה במישהו שכותב קוד כזה, כי הוא ממש לא קריא. באמת שעדיף לכתוב את הלולאה ככה:while (n > 0) { s += n%10; n /= 10;}
פורסם 2011 בנובמבר 3014 שנים מחבר אני אחדד -> התוכנית קולטת מספר שלם,יתכן גם שלילי ומדפיסה את מס' הספרות שיש במספר.לדו' אם הוקלד 12530 התוכנית תדפיס 5.ניסתי איזושהי לולאה,כושלת אומנם אבל אני לא יכול לחשוב על משהו אחר......void D(signed n){ int cnt=0; do { n%10==cnt++; n=n/10; } while(n>0);}ד"א כשאני מנסה לעשות דיבאג ולעקוב אחרי כל שורה משום מה התוכנית זורקת אותי החוצה..
פורסם 2011 בנובמבר 3014 שנים מה ההגיון בשורה הזו?n%10==cnt++;מה הקשר בין n%10 (ששווה לספרת האחדות ב-n) ל-cnt (ששווה למספר הספרות שספרת עד עכשיו)?
פורסם 2011 בנובמבר 3014 שנים מחבר אני רוצה שימנה את הספרה הכי ימנית ואחרי זה "יקצץ" אותה ויקפיץ את המונה..ז"א אם נסתכל על המספר 12345 שיקח את 5 לחוד יעלה את המונה ואז יחלק ב10 ז"א שזה נכנס מחד ללואה עם 1324 וחוזר חלילה
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.