Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Random;
- public class Lab9
- {
- public static void main(String[] args)
- {
- int[] [] testArrayOne = random(5, 0, 5);
- int[] [] testArrayTwo = random(10, 2, 10);
- int[] [] testArrayThree = random(3, 0, 3);
- int[] [] testArrayFour = random(15, 0, 55);
- int[] [] testArrayFive = random(25, 0, 25);
- int[][] allneg = { {-10,-12,-3}, {-4,-5,-6,-8}, {-7,-8} };
- int[][] nonsquare = { {1,2,3}, {4,5}, {6,7,8,9} };
- int[][] latin = { {1,2,3}, {2,3,1}, {3,1,2} };
- int[][] notlatin = { {2,1,3}, {2,3,1}, {3,1,2} };
- testArray(testArrayOne);
- testArray(testArrayTwo);
- testArray(testArrayThree);
- testArray(testArrayFour);
- testArray(testArrayFive);
- testArray(allneg);
- testArray(nonsquare);
- testArray(latin);
- testArray(notlatin);
- }
- private static void testArray(int [] [] arrayTested)
- {
- System.out.println("The sum of the first row is " + rowSum(arrayTested, 0));
- System.out.println("The sum of the first column is " + columnSum(arrayTested, 0));
- System.out.println("Is the array a square? : " + isSquare(arrayTested));
- System.out.println("Is the array a latin square? : " + isLatin(arrayTested));
- }
- public static int [] [] random(int N, int start, int end)
- {
- int [] [] returnArray = new int[N] [N];
- for(int i = 0; i < N; i++)
- {
- for(int j = 0; j < N; j++)
- {
- returnArray[i][j] = randInt(start, end);
- }
- }
- return returnArray;
- }
- private static int randInt(int min, int max)
- {
- Random rand = new Random();
- int randomNum = rand.nextInt((max - min) + 1) + min;
- return randomNum;
- }
- public static int rowSum(int [] [] arrayOne, int rowNum)
- {
- int sum = 0;
- for(int i = 0; i < arrayOne.length; i++)
- {
- sum += arrayOne[i][rowNum];
- }
- return sum;
- }
- public static int columnSum(int [] [] arrayOne, int colNum)
- {
- int sum = 0;
- for(int i = 0; i< arrayOne[colNum].length; i++)
- {
- sum+= arrayOne[colNum][i];
- }
- return sum;
- }
- public static boolean isSquare(int [] [] arrayOne)
- {
- boolean squareArray = true;
- for(int i = 0; i < arrayOne.length; i++)
- {
- if(arrayOne.length != arrayOne[i].length)
- {
- squareArray = false;
- }
- }
- return squareArray;
- }
- public static boolean isLatin(int [] [] arrayOne)
- {
- boolean isLatin = true;
- int checkSum = 0;
- if(isSquare(arrayOne))
- {
- for(int i = arrayOne.length; i > 0; i--)
- {
- checkSum += i;
- }
- for(int i = 0; i < arrayOne.length; i++)
- {
- int sumArrayNums = 0;
- if(isLatin == true)
- {
- for(int j = 0; j < arrayOne.length; j++)
- {
- sumArrayNums += (arrayOne[i][j]);
- }
- if(sumArrayNums != checkSum)
- {
- isLatin = false;
- }
- }
- }
- if(isLatin == true)
- {
- for(int i = 0; i < arrayOne.length; i++)
- {
- int sumArrayNums = 0;
- if(isLatin == true)
- {
- for(int j = 0; j < arrayOne.length; j++)
- {
- sumArrayNums += arrayOne[j][i];
- }
- if(sumArrayNums != checkSum)
- {
- isLatin = false;
- }
- }
- }
- }
- }
- else
- {
- isLatin = false;
- }
- return isLatin;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement