תחילה נגדיר מערל מסוג int ומשתנה מסוג bool עבור מצב true או false , כאשר המשתנה הבוליאני answer מקבל את הערך false אנו יוצאים מלולאת ההשוואות ומודיעים כי המערך אינו סימטרי . כאשר המערך כן סימטרי הרי המשתנה הבוליאני ישאר המצב האתחול כלומר מצב true ולולאת ההשוואות לא תשנה את ערכו ל false ( במצב זה נקבל הודעה כי המערך הוא סימטרי ) .
לולאת ההשוואות למעשה עוברת על חצי מערך ומבצעת בדיקה האם התא הראשון שווה או לא שווה אל התא האחרון במערך בכל איטרציה (סיבוב של הלולאה ) התא הראשון מתקדם אל התא הבא והתא האחרון מתקדם לתא לפני האחרון וכן הלאה (בשיטה זו אנו בודקים את הסימטריות של המערך כפי שמוסבר בהמשך בתמונות )
1
|
using System;
namespace nsEmanuel
{
public class MyClass
{
public static void Main()
{
bool answer = true;
int[] arr = { 1, 2, 3, 4, 3, 2, 1 };
for (int i = 0; i < arr.Length/2; i++)
{
if (arr[i] != arr[arr.Length-i-1])
{
answer = false;
break;
}
}
if (answer == true)
{
Console.WriteLine(" Symmetric Array ");
}
else
{
Console.WriteLine("The Array Is Not Symmetrical");
}
}
}
}
|






|