ismini kullanıcıdan komut satırından paremetre olacak şekilde alacagımız bir metin belgesi içerisinde tanımlanan,rakamlardan oluşan(0-9) matris üzerinde,satırlarındaki sayıların çarpımlarının toplamı ile sutunlarındaki sayıların çarpımınlarının toplamı birbirine eşit olan en az 2*2 boyutundaki tüm matrislerin başlangıç koordinatlari ve boyutlarını bulan koddu nasıl olur yardımci olursaniz cook sevinirim? birşeyler düşündüm ama birleştiremedim
notlar
metin dosyasında tanımlanan matrisin boyutları A*A şeklinde tanımlanacak
eger kullanıcı programı çalştırırken parametre olarak geçerli bir metin dosyası vermez ise,metin dosyası içerisindeki tanımlanmış matris ilk satırındaki degerler ile uyuşmuyor ise bu durumda düzgün hta mesaji verip kullacidan hatasini düzeltmesiini isteyecektir
java ve matris
import java.util.Scanner;
import java.io.*;
public class matris
{
public static void main(String args[])
{
Scanner scanner=new Scanner(System.in);
System.out.println("Lutfen bir dosya adi giriniz:");
String dosyaAdi=scanner.nextLine();
int boy=0;
int [][] tall = new int [3][3];
int baslangicX=0,baslangicY=0;
try
{
scanner=new Scanner(new File(dosyaAdi+".txt"));
try {
boy=scanner.nextInt();
boy=scanner.nextInt();
}
catch(Exception e) { System.out.println("Data Hatasi\n");}
int i = 0,j=0;
while(scanner.nextInt()==-1)
{
j++;
if(j==3)
{
j=0;i++;
}
}
baslangicX=i;baslangicY=j;
while(scanner.hasNextInt())
{
tall[j++] = scanner.nextInt();
if(j==3) {
j=0;i++;
}
}
}
catch(Exception e) {}
int i,j=0;
int sutun[]={0,0,0};
int satir[]={0,0,0};
for(i=0;i<3;i++)
{
satir[j]*=tall[j];
sutun[j]*=tall[j];
if(i==3) {
i=0;j++;
}
}
sutun[0]+=sutun[1]+sutun[2];
satir[0]+=satir[1]+satir[2];
if(satir[0]==sutun[0])
{
System.out.println(boy);
System.out.print(baslangicX+" "+baslangicY);
}
}
}
Algoritma da baslangic koordinatları istendigi icin,txt metin dosyası icerisinde ki bos karakterler,yukarıdaki koda gore -1 degeri ile simgelenmektedir.
Başarılar