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.
C dizilerde sıralama :/
2
●487
- 22-03-2014, 13:38:03OpTooM adlı üyeden alıntı: mesajı görüntüle
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 */
}
}
}