Matrix Lab
/**
* Created by spattni on 10/6/16.
*/
public class Matrix {
public Matrix() {
}
public boolean isSymmetric(int[][] matrix) {
if (matrix.length != matrix[0].length) {
return false;
}
int i, j;
boolean isTrue = false;
for (i = 0; i < matrix.length; i++) {
for (j = 0; j < matrix[i].length; j++) {
if (matrix[i][j] == matrix[j][i]) {
isTrue = true;
}
else {
isTrue = false;
break;
}
}
if (isTrue == false) break;
}
return isTrue;
}
public boolean isDiagonal(int[][] matrix) {
if (matrix.length != matrix[0].length) {
return false;
}
int i,j;
for (i = 0; i < matrix.length; i++) {
for (j = 0; j < matrix[i].length; j++) {
if (i != j) {
if (matrix[i][j] != 0) {
return false;
}
}
}
}
return true;
}
public boolean isIdentity(int[][] matrix) {
if (matrix.length != matrix[0].length) {
return false;
}
int i,j;
for (i = 0; i < matrix.length; i++) {
for (j = 0; j < matrix[i].length; j++) {
if (i != j && matrix[i][j] != 0) {
return false;
}
if (i == j && matrix[i][j] != 1)
return false;
}
}
return true;
}
public boolean isUpperTriangular(int[][] matrix) {
if (matrix.length != matrix[0].length) {
return false;
}
int i,j;
for (i = 0; i < matrix.length; i++) {
for (j = 0; j < i; j++) {
if (matrix[i][j] != 0) {
return false;
}
}
}
return true;
}
public boolean isTridiagonal(int[][] matrix) {
if (matrix.length != matrix[0].length) {
return false;
}
int i,j;
for (i = 0; i < matrix.length; i++) {
for (j = 0; j < matrix[i].length; j++) {
if (i != j && i+1 != j && i-1 != j) {
if (matrix[i][j] != 0) {
return false;
}
}
}
}
return true;
}
public static void main(String[] args) {
int[][] matrix = { {1, 4, 0, 0},
{3, 4, 1, 0},
{0, 2, 3, 4},
{0, 0, 1, 3}};
Matrix m = new Matrix();
//----------prints out matrix----------//
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
//-----------------------------------//
System.out.println(m.isTridiagonal(matrix));
}
}