נתונה הפעולה secret המקבלת מחרוזת, ופעולה mystery המקבלת מערך מחרוזות ומשתמשת ב-secret.
נתונה הפעולה secret המקבלת מחרוזת, ופעולה mystery המקבלת מערך מחרוזות ומשתמשת ב-secret.
public static bool Secret(string str)
{
for (int i = 0; i < str.Length; i+=2)
{
if (str[i] >= 'A' && str[i] <= 'Z')
{
return false;
}
}
for (int i = 1; i < str.Length; i+=2)
{
if (str[i] < 'A' || str[i] > 'Z')
{
return false;
}
}
return true;
}
public static bool Mystery(string[] arr)
{
for (int i = 0; i < arr.Length -1; i+=2)
{
if (Secret(arr[i]) == Secret(arr[i+1]))
return false;
}
return true;
}
סעיף א
- תנו דוגמה למחרוזת באורך של שישה תווים שעבורה הפעולה secret תחזיר ערך true.
- נתונה טענה: אם זימון הפעולה secret(str) מחזיר ערך true, במחרוזת str אין רצף תווים זהים. האם הטענה נכונה? הסבירו את תשובתכם.
- מהי סיבוכיות הפעולה? הסבירו את תשובתכם.
סעיף ב
- תנו דוגמה למערך arr בגודל שישה תאים שעבורו הפעולה mystery תחזיר ערך true.
- נתונה הטענה: אם זימון הפעולה mystery(arr) מחזיר ערך true, המערך arr לא כולל זוג מחרוזות זהות אשר נמצאות בתאים סמוכים. האם הטענה נכונה? הסבירו את תשובתכם.
- מהי סיבוכיות הפעולה mystery? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.