שלח תשובה

זירת השאלות

2212
צפיות
4
תשובות

שאלה בסיסית על מערכים (C#)

,‏ 19 באוגוסט, 2014

היי,
אז ככה יש לי STRING שהפכתי למערך של CHAR.
השאלה היא איך אני מנסח משפט תנאי (בישביל לולאת IF) שיחזיר TRUE בתאני שיש סימן שאלה בתוך המערך?

תודה מראש לעוזרים

תגיות:

4 תשובות

  1. גיא גבע הגיב:

    bool Question(string s)
    {
    foreach(char c in s)
    if(c == '?')
    return true;
    return false;
    }

  2. Roi Trigerman הגיב:

    *** שים לב שהכתיבה הזאת (בפתרון של גיא גבע) מעט מטעה (למרות שנכונה לחלוטין), ומתבססת על כך שאם אין בלוק פקודות (תחומות בסוגריים מסולסלים) אחרי תחילת לולאה, או אחרי תנאי if, ההתייחסות היא כאילו הבלוק מכיל רק את הפקודה שבשורה הבאה.
    במקרה הזה, בתוך לולאת ה-foreach יש רק תנאי if, ובתוך הבלוק של התנאי נמצאת רק השורה שאחרי (return true), ולא השורה הבאה, שמחוץ לתנאי וגם ללולאה.

  3. Roi Trigerman הגיב:

    עוד פתרון (עם לולאת for):

    public static bool Check(char[] arr)
    {
    for(int i = 0; i < arr.Length ; i++)
    {
    if(arr[i] == '?')
    {
    return true;
    }
    }
    return false;
    }

  4. Yonatan Arbel הגיב:

    כן, אבל זה לא יצא בריטרן הראשון מהפונקצייה ?

שלח תשובה