Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
1280
Tıklama
0
Öne Çıkarma
JAVA 3D matrix yardım (c++ ya da herhangi programlama bilenler de yardım edebilir)
L
17 yıl (1512 mesaj)
Binbaşı
Konu Sahibi

Beyler hocadan extra proje istedim fakat bir türlü yapalıyorum
Olay şu ki normalde 2d matrix tanımlayıp bu matrixe mesela 5x5 rastgele sayılar atayacağız.Sonra da shift up diyince belli sıradaki dizi bir üst sütuna gelecek ve her yer yer değiştirecek.
bu program kolay bunu yapmakta bişey yok fakat proje 3Dmatrix üzerine.
3dmatrixi tanımladım. fakat ekrana bastırınca bütün sayıları yanyana yazıyor.Bunu nasıl 2d bastırabilirim.yani bir KÜP düşünün bu küpün sadece ön yüzeyi bastırılacak.shift front yapınca da ön yüzeyinin bir arka yüzeyindeki kızım ön tarafa gelecek.Yazdığım kodlar şunlar ;

import java.util.Scanner;
public class shiftfront
{
public static void main(String[] args)
{
int i,j,k;

Scanner input=new Scanner(System.in);
int a[][][]=new int[3][3][3];
int b[][][]=new int[3][3][3];

for(i=0;i<3;i++)

for(j=0;j<3;j++)

for(k=0;k<3;k++)

a[j][k]=(int)(Math.random()*9);





for(i=0;i<3;i++)

for(j=0;j<2;j++)

for(k=0;k<3;k++)

b[j][k]=a[j+1][k];


for(i=0;i<3;i++)
for(k=0;k<3;k++)

b[2][k]=a[0][k];




for(i=0;i<3;i++)
{

for(j=0;j<3;j++)
{

for(k=0;k<3;k++)
System.out.print(a[j][k]+" ");
}
System.out.println();

}

System.out.println();


for(i=0;i<3;i++)
{

for(j=0;j<3;j++)
{

for(k=0;k<3;k++)
System.out.print(b[j][k]+" ");
}
System.out.println();

}
}
}


ekrana bastırınca ise ;

//birinci matrix shiftfront olmamıs olan//

7 1 2 6 1 7 0 3 8
1 1 4 3 7 0 3 0 1
6 0 4 3 0 8 4 5 8

//ikinci matrix 3x3 lük 2d satır ve sütunlar öne gelmiş matrix.bu 3x3 lük matrixlerin arka arkaya bastırılması gerekiyor.
yani sadece en öndeki 3x3 lük matrix gözükse yeter.o zaman programın 3d olup olmadığını rahat yazıp kanıtlayabilirim.//

6 1 7 0 3 8 7 1 2
3 7 0 3 0 1 1 1 4
3 0 8 4 5 8 6 0 4

dikkat ederseniz 1. bastırılan matrixte 6 1 7 ile baslayan bir öne gelmiş.Fakat ben bu 3lü leri arka arkaya bastırmak istiyorum yani 3d gibi fakat 2d yani sadece ön kısım gözükecek. GUI kullanmadan siyah beyaz ekrana bastırılacak.tamamen 2 boyutlu bastırılacak.sonra ben gui moda çevirebilirim.
sizce nasıl yapabilirim ?
en ufak bir fikir bile paylaşırsanız sevinirim.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi lucasthehacker -- 1 Haziran 2009; 5:13:27 >

O
17 yıl (3888 mesaj)
Yarbay

küp gibi düşününce kutunun açılmış halini temsili bir şekil çizdirebilirsin.
şöyleki ön kısım ilk yazdırılcak kısım onun sağında dizinin 3. boyutu altında 2. boyutu. bunların arasınada | karakteri yazdırırsan daha açıklayıcı olacaktır.

bu işide parametre olarak 3 boyutlu dizi alıp bu hale getiren bir fonksiyon olarak tasarlarsan. sayısal olarak shift front yaptıkdan sonra bu fonksiyon ile sonucu gösterebilirsin



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.