package Lab2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Random;
//input class
class insert {
//input method
public static void enter() {
// Var 10
//input
{
BufferedReader reader = new BufferedReader (new InputStreamReader (System. in));
System. out. println("input the size of matrix (more than 2 and less than 10)");
try {
javamulti. n = Integer. parseInt (reader.readLine());
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if ((javamulti. n <2)|(javamulti. n >10)){
javamulti. n =10;
System. out. println("Invalid input! N set to 10");
}
System. out. println("Would you like to fill matrix manually(1) or randomly(0)?");
int answer = 0;
try {
answer= Integer. parseInt (reader.readLine());
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (answer == 1){
for (int a=0;a<javamulti. n;a++){
for (int b=0;b<javamulti. n;b++){
System. out. println("Please,input the element FIRST"+a+b+":");
try {
javamulti. first [a][b] = Integer. parseInt (reader.readLine());
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
for (int a=0;a<javamulti. n;a++){
for (int b=0;b<javamulti. n;b++){
System. out. println("Please,input the element SECOND"+a+b+":");
|
|
try {
javamulti. second [a][b] = Integer. parseInt (reader.readLine());
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}}
else {
Random random = new Random();
for (int a=0;a<javamulti. n;a++){
for (int b=0;b<javamulti. n;b++){
javamulti. first [a][b] = (random.nextInt(100)-random.nextInt(100));
javamulti. second [a][b] = (random.nextInt(100)-random.nextInt(100));
}}}
System. out. println(" ");
System. out. println("Matrix 1 below");
System. out. println(" ");
for (int i=0; i<javamulti. n;i++){
System. out. println(" ");
for (int j=0;j<javamulti. n;j++){
System. out. print(javamulti. first [i][j]+" ");
}}
System. out. println(" ");
System. out. println("Matrix 2 below");
System. out. println(" ");
for (int i=0; i<javamulti. n;i++){
System. out. println(" ");
for (int j=0;j<javamulti. n;j++){
System. out. print(javamulti. second [i][j]+" ");
}}
}
//end of input
}//end of input method
}//end of input class
class process extends Thread{//start of process
public void run(){
//main body
{
int sum = 0;
int dif = 0;
for (int a=0;a<javamulti. n;a++){
sum = javamulti. first [0][a]+javamulti. second [a][0];
dif = javamulti. second [a][0]-javamulti. second [0][a];
for (int b=1;b<javamulti. n;b++){
sum+=(javamulti. first [b][a]+javamulti. second [a][b]);
dif+=(javamulti. second [a][b]-javamulti. second [b][a]);
}
if (sum<dif){
for (int x=0;x<javamulti. n;x++)
javamulti. result [x][a]=javamulti. first [a][x];
}
else {
for (int x=0;x<javamulti. n;x++)
javamulti. result [x][a]=(javamulti. first [x][a]*javamulti. second [a][x]);
}
}
}
//end of main body
}}
class print extends Thread{
public void run(){//start of print and class
//output
System. out. println(" ");
System. out. println("Resulting matrix below");
System. out. println(" ");
for (int i=0; i<javamulti. n;i++){
System. out. println(" ");
for (int j=0;j<javamulti. n;j++){
System. out. print(javamulti. result [i][j]+" ");
}}
//end of output
}}//end of print and class
public class javamulti {
//global
public static int n = 10;
public static int [][] first = new int [ n ][ n ];
public static int [][] second = new int [ n ][ n ];
public static int [][] result = new int [ n ][ n ];
//end of global
//declaration
static print three;
static process two;
// end of declaration
public static void main(String[] args){
//start of main body
|
|
// init
three = new print();
two = new process();
// init
insert. enter ();
two. start();
three. start();
//end of main body
}
}
// end of program