Bu sorunun cevabını C# dilinde vereceğim. Öncelikle, metodu oluşturmak için aşağıdaki şablonu kullanabilirsiniz:
public static int[] GetCommonNumbers(int[] array1, int[] array2)
{
// Burada metodun içeriği yazılacak
}
public static int[] GetCommonNumbers(int[] array1, int[] array2)
{
// Burada metodun içeriği yazılacak
}
Bu metodun görevi, iki adet tam sayı dizisi alıp ortak bulunan sayıları geriye döndürmek. Bunun için, metodun içinde iki döngü kullanabiliriz. Birinci döngü, array1 dizisini gezerek, ikinci döngü ise array2 dizisini gezerek her sayının array1'de olup olmadığını kontrol eder. Eğer array1'de varsa, bu sayıyı ortak sayılar dizisine ekleriz. Bu işlemi bütün sayılar için yapıp, sonunda ortak sayılar dizisini geriye döndürürüz.
Aşağıda bu metodun tam olarak nasıl yazılacağını gösteriyorum:
public static int[] GetCommonNumbers(int[] array1, int[] array2)
{
// Ortak sayıları tutacağımız dizi
List<int> commonNumbers = new List<int>();
// array1'deki her sayı için
foreach (int number in array1)
{
// array2'de bu sayı var mı?
if (Array.IndexOf(array2, number) >= 0)
{
// Eğer var, ortak sayılar dizisine ekle
commonNumbers.Add(number);
}
}
// Ortak sayıları döndür
return commonNumbers.ToArray();
}
public static int[] GetCommonNumbers(int[] array1, int[] array2)
{
// Ortak sayıları tutacağımız dizi
List<int> commonNumbers = new List<int>();
// array1'deki her sayı için
foreach (int number in array1)
{
// array2'de bu sayı var mı?
if (Array.IndexOf(array2, number) >= 0)
{
// Eğer var, ortak sayılar dizisine ekle
commonNumbers.Add(number);
}
}
// Ortak sayıları döndür
return commonNumbers.ToArray();
}
Bu metodu kullanmak için ise main metodunda aşağıdaki gibi bir kod yazabilirsiniz:
int[] array1 = { 1, 2, 3, 4, 5 };
int[] array2 = { 3, 4, 5, 6, 7 };
int[] commonNumbers = GetCommonNumbers(array1, array2);
foreach (int number in commonNumbers)
{
Console.WriteLine(number);
}
Bu kod çalıştırıldığında, ekrana "3 4 5" yazdırılacaktır.