Yeni üyelik için üyelik formunu yada Facebook bağlantısını kullanabilirsiniz.
0 beğenilme 0 beğenilmeme
370 okundu
Internet kategorisinde (60 puan) tarafından 1 2 0 1
kendisine parametre olarak 2 adet tam sayı dizisi gönderilen metot bu iki dizide ortak bulunan sayıları geriye döndürmesi istenmektedir. bu metodu kodlayıp main metodu içinde kullanın.

1 cevap

0 beğenilme 0 beğenilmeme
(13.2k puan) tarafından 26 153 159
tarafından düzenlendi
0

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.

Soru Cevap Sitesine hoş geldiniz. Sitemizde üyeler soruyor ve yine üyeler cevaplıyor. Tamamen ücretsiz üyelik oluşturarak bilmediğiniz yada kafanıza takılan konuları sorun üyelerimizden bu konu yada konularla ilgili bilgisi olan(lar) cevaplasın. Paylaşıma dayalı sistem umarız işinize yarar.

Kategoriler

5.0k soru

3.2k cevap

389 yorum

11.7k kullanıcı

...