• 21-03-2014, 20:07:50
    #1
    Arkadaşlar c de şöyle bir sorunum var. 2 boyutlu dizi tanımladım. 2. boyutunu buyukten kucuge dogru sıralamak ıstıyorum fakat 2, boyuta ait değerin 1. boyutu aynı kalsın .

    yani şöyle ;

    3 5
    6 4
    8 7

    sıralı hali ;

    8 7
    3 5
    6 4

    yani 2. sütundakilerin değerleri sıralanırken yanındaki sayıları dogru yerlerınde olacak.

    şöyle olmayacak ;

    37
    65
    84

    arkadaşlar bu canımı çok sıktı. Günlerdir uğraşıyorum mantıgını hala kuramadım . Yardımcı olursanız sevinirim.
  • 22-03-2014, 12:44:09
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    scanf te sıralama sonrası ilk durumdaki eşleşme indislerine göre dizilim yapılmasını girmen gerekiyor sanırım.
  • 22-03-2014, 13:38:03
    #3
    OpTooM adlı üyeden alıntı: mesajı görüntüle
    scanf te sıralama sonrası ilk durumdaki eşleşme indislerine göre dizilim yapılmasını girmen gerekiyor sanırım.

    Teşekkür ederim hocam . Sonunda mantıgını buldum.
    int oynanan_enaz_sayilar_liste_dizi[53][2]; /* for dongusuyloe ıcını doldurmak gerekıyor tabı */
    int j,sayac,g,b;
    /* oynanan_enaz_sayilar_liste_dizi isimli diziyi sıralama başlangıç */
    for(sayac=0;sayac<54;sayac++)
    {
    for(j=sayac+1;j<54;j++)
    {
    if(oynanan_enaz_sayilar_liste_dizi[j][1]>oynanan_enaz_sayilar_liste_dizi[sayac][1]) /* dizinin bir önceki ve bir sonraki satırların 1 sutunlarını buyukluk yonununden karsılastırır */
    {
    g=oynanan_enaz_sayilar_liste_dizi[sayac][1]; /*önceki satırın 1. sutununu tutar */
    b=oynanan_enaz_sayilar_liste_dizi[sayac][0]; /*önceki satırın 0 sütununu tutar */
    oynanan_enaz_sayilar_liste_dizi[sayac][1]=oynanan_enaz_sayilar_liste_dizi[j][1]; /* önceki satırın sutununa bir sonraki satırın sutununu atar */
    oynanan_enaz_sayilar_liste_dizi[sayac][0]=oynanan_enaz_sayilar_liste_dizi[j][0]; /* önceki satırın 0. sutununa bir sonraki satırın 0. sutununu atar */
    oynanan_enaz_sayilar_liste_dizi[j][1]=g; /* sonraki satırın 1. boyutuna g degiskenını atar */
    oynanan_enaz_sayilar_liste_dizi[j][0]=b; /* sonraki satırın 0. sutununa b degiskenını atar */
    }
    }
    }