נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: עזרה c# בבקשה.

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
עומר
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 04 March 2009 בשעה 15:15 | IP רשוּם
ציטוט עומר

שלום!

אני צריך לדעת איך בלולאת For אפשר לקבל מספר נתון..ולהדפיס את סכום הספרות שלו..

לדוגמא: ו39853 זה ידפיס לי 5.

          45 זה ידפיס לי 2.

תודה לעוזרים..

חזרה לתחילת העמוד הצג את כרטיס החבר של עומר חפש הודעות אחרות של עומר בקר בדף הבית של עומר
 
danikel
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 19 December 2008
מדינה: Israel
משתמש: מנותק/ת
הודעות: 32
נשלח בתאריך: 04 March 2009 בשעה 16:51 | IP רשוּם
ציטוט danikel

"  45 זה ידפיס לי 2."?
לא אמור להדפיס 9?!
ואני חושב שיש דרך. העאף ההתחלתי הוא NUM התנאי הוא גדול מאפס, והצעד הוא I=num/10.


__________________

חזרה לתחילת העמוד הצג את כרטיס החבר של danikel חפש הודעות אחרות של danikel
 
פתרון
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 04 March 2009 בשעה 21:41 | IP רשוּם
ציטוט פתרון

פתרון גם לסכום הספרות וגם למספר הספרות

 int num = 12345;
            int mone = 0;
            int sofer = 0;
            while (num > 0)
            {
                sofer += num % 10;
                num = num / 10;
                mone++;
            }
           
חזרה לתחילת העמוד הצג את כרטיס החבר של פתרון חפש הודעות אחרות של פתרון בקר בדף הבית של פתרון
 
danikel
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 19 December 2008
מדינה: Israel
משתמש: מנותק/ת
הודעות: 32
נשלח בתאריך: 05 March 2009 בשעה 01:10 | IP רשוּם
ציטוט danikel

הוא ביקש בלולאת FOR.

__________________

חזרה לתחילת העמוד הצג את כרטיס החבר של danikel חפש הודעות אחרות של danikel
 
carloc
משתמש מתחיל
משתמש מתחיל
סמל אישי

הצטרף / הצטרפה: 23 January 2009
מדינה: Israel
משתמש: מנותק/ת
הודעות: 22
נשלח בתאריך: 05 March 2009 בשעה 08:36 | IP רשוּם
ציטוט carloc

אתה רציני?תשנה את ה- while ל for......

חזרה לתחילת העמוד הצג את כרטיס החבר של carloc חפש הודעות אחרות של carloc
 
גד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 05 March 2009 בשעה 09:35 | IP רשוּם
ציטוט גד

לולאת for פחות יעילה כאן, משום שקודם צריך לדעת את מספר הספרות באמצעות while או רקורסיה, ורק אז ניתן יהיה להריץ לולאת for.
את הפתרון בצורת while כבר נתנו פה.

אם אתה בכל זאת רוצה בעזרת for, תצטרך לבדוק תחילה את מספר הספרות, או לבקש מהמשתמש שיכניס גם את מספר הספרות.
נניח שמספר הספרות נמצא במשתנה Length , כך ייראה פתרון אפשרי בעזרת for :

קוד:
for (int i = 0; i < Length; i++)
{
    sum+= num % 10;
    num /= 10;
}

חזרה לתחילת העמוד הצג את כרטיס החבר של גד חפש הודעות אחרות של גד בקר בדף הבית של גד
 
carloc
משתמש מתחיל
משתמש מתחיל
סמל אישי

הצטרף / הצטרפה: 23 January 2009
מדינה: Israel
משתמש: מנותק/ת
הודעות: 22
נשלח בתאריך: 05 March 2009 בשעה 12:20 | IP רשוּם
ציטוט carloc

אולי אני קצת מפחית מקושי הבעיה אבל לא אפשרי להריץ לולאת for כזאת:
n- המספר שהתקבל
s- קונטר
ובסוף פשוט מדפיסים את S....לי זה עבד.


   
קוד:

    for (i=n; i>0; i=i/10)
    {
        s++;
   
    }
   

חזרה לתחילת העמוד הצג את כרטיס החבר של carloc חפש הודעות אחרות של carloc
 
danikel
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 19 December 2008
מדינה: Israel
משתמש: מנותק/ת
הודעות: 32
נשלח בתאריך: 05 March 2009 בשעה 16:19 | IP רשוּם
ציטוט danikel

אני יודע שזה כמעט אותו דבר WHILE וFOR במקרה הזה, כמובן שעדיף WHIEL אבל אם האדם ביקש בFOR אז הוא רוצה בFOR,הוא כנראה יודע בWHILE.
וכן הלולאה של carloc לולאה שחשבתי עליה.


__________________

חזרה לתחילת העמוד הצג את כרטיס החבר של danikel חפש הודעות אחרות של danikel
 
גד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 05 March 2009 בשעה 17:17 | IP רשוּם
ציטוט גד

תשכח ממה שכתבתי מקודם, carloc גרם לי להבין שרשמתי שטויות.
הנה הפתרון (הוא ביקש את סכום ספרות המספר):
קוד:
int n = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = n; i > 0; i /= 10)
{
    sum += (n % 10);
    n /= 10;
}
Console.WriteLine(sum);

חזרה לתחילת העמוד הצג את כרטיס החבר של גד חפש הודעות אחרות של גד בקר בדף הבית של גד
 
גד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 05 March 2009 בשעה 17:18 | IP רשוּם
ציטוט גד

עכשיו אני שם לב שהוא רשם "סכום הספרות" אבל התכוון למספר הספרות...
אז כמו ש- carloc אמר, הנה:
קוד:
int n = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = n; i > 0; i /= 10)
{
    sum++;
}
Console.WriteLine(sum);

חזרה לתחילת העמוד הצג את כרטיס החבר של גד חפש הודעות אחרות של גד בקר בדף הבית של גד
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה