2D massivin ne olduğunu açıklamadan önce şunu söylerimki önceki partlarda öğrendiğimiz massivler 1D şeklindeydi. 2D masssivde her indexin kendiside 1D massiv. Gelin örnek üzerinde bakalım.
Burdanda göründüğü gibi 1D massiv sıra şeklinde olsada 2D massiv kare şeklinde. 2D massivin modelini gördüğümüze göre şimdi birazcık kod üzerinde bakalım.
Bu fotoğrafta 2D massivin tanımlanması ve girişte alınması yazıyor.
Mesela gelin bir problemi çözelim.
Problem:
Sinemada çalışan Muratın görevi film ücretleri olan kare şeklindeki tablodaki ücretleri doğru bir şekilde diğer tablolarada aktarmak. Ama yanlışlıkla tablo ters tutmuş ve tüm ücretleri yanlış yazmıştı. Murat bunu telafi etmek için tabloları yazmak istiyor ama doğru ücretler olan tablo kayboluyor. Size Muratın yazdığı tablolardan birisi veriliyor ve sizden doğru tabloyu Murata sunmanız isteniliyor.Giriş verileri:
İlk satırda tablonun uzunluğu olan n.
Sonraki n satırda n rakam yazılıyor.Çıkış verileri:
Önce n-i sonra problemin cevabı olan n satırın her birinde n rakam.Çözüm:
Bu problemde dikkat etmemiz gereken tablonun ters tutulması. Tablo ters tutlduğu zaman a[n-1][n-1] de olacak rakam a[0][0]-a geliyor. Diğer rakamlarda aynı şeklide. Yani bizim yapmamız gereken bize verilen tabloyuda ters çevirip çıkışa vermek. Başka sözle şöyle söyleyelim. Her hangi bir şeyi 360 derece çevirdiğimizde önceki haline geri döner. 180 derece çevirdiğimizde ters durur. Muratın yaptığı 180 derece çevirmekdi. Bizim yapıcağımız ise 360 - 180 = 180 derece çevirmek ki, önceki haline geri dönsün. Bunu yapmak için 2D massivimiz 0-dan n-e doğru değil n-den 0-a doğru ekrana vericez. O zaman kodumuz şöyle olucak.
ŞİMDİ OKUDUĞUN
I learn c++
Ficção Científica"Yanlış bir program yazmak doğru bir programı anlamaktan daha kolaydır."