2212
צפיות
צפיות
4
תשובות
תשובות
שאלה בסיסית על מערכים (C#)
היי,
אז ככה יש לי STRING שהפכתי למערך של CHAR.
השאלה היא איך אני מנסח משפט תנאי (בישביל לולאת IF) שיחזיר TRUE בתאני שיש סימן שאלה בתוך המערך?
תודה מראש לעוזרים
היי,
אז ככה יש לי STRING שהפכתי למערך של CHAR.
השאלה היא איך אני מנסח משפט תנאי (בישביל לולאת IF) שיחזיר TRUE בתאני שיש סימן שאלה בתוך המערך?
תודה מראש לעוזרים
4 תשובות
bool Question(string s)
{
foreach(char c in s)
if(c == '?')
return true;
return false;
}
*** שים לב שהכתיבה הזאת (בפתרון של גיא גבע) מעט מטעה (למרות שנכונה לחלוטין), ומתבססת על כך שאם אין בלוק פקודות (תחומות בסוגריים מסולסלים) אחרי תחילת לולאה, או אחרי תנאי if, ההתייחסות היא כאילו הבלוק מכיל רק את הפקודה שבשורה הבאה.
במקרה הזה, בתוך לולאת ה-foreach יש רק תנאי if, ובתוך הבלוק של התנאי נמצאת רק השורה שאחרי (return true), ולא השורה הבאה, שמחוץ לתנאי וגם ללולאה.
עוד פתרון (עם לולאת for):
public static bool Check(char[] arr)
{
for(int i = 0; i < arr.Length ; i++)
{
if(arr[i] == '?')
{
return true;
}
}
return false;
}
כן, אבל זה לא יצא בריטרן הראשון מהפונקצייה ?