Exercício sobre matrizes: Instruções gerais para o exercício: - Crie um projeto com uma classe principal. - Neste projeto, criar uma classe chamada MatrixInt, que possui os principais métodos (estáticos) para manipulação de uma matriz de inteiros. - A classe principal fará chamadas a classe para executar parte dos exercícios propostos - os números aleatórios devem ser, obrigatoriamente, entre 0 e 99, inclusive. - Na classe principal, criar um método estático void imprimir(int matriz[][]) que imprime uma matriz de inteiros, sendo que todas as colunas devem ficar na mesma linha e cada linha numa nova linha da tela. Exemplo: 5 6 10 8 9 4 1 2 11 1 5 8 7 3 7 0 11 12 21 30 Exercícios: 1) Na classe MatrixInt, criar os seguintes métodos estáticos: // cria uma matriz de inteiros, sem inicialização dos elementos e retorna a matriz criada int[] newEmptyMatrix(int cols, int rows); // cria um Matrix de inteiros, inicializando os elementos com números aleatórios e retorna o matriz criada. Não esqueça da regra dos números aleatórios: de [0..99]! int[] newRandomMatrix(int cols, int rows); // cria um Matrix de inteiros, inicializando os elementos com números sequenciais (matriz[0][0]=0, matriz[0][1]=1, matriz[1][0] = 10, matriz[4][2] = 42...) e retorna o matriz criada int[] newSequentialMatrix(int cols, int rows); // inverte o matriz! Assim, o primeiro elemento será invertido com o último, o segundo com o penúltimo, ... void revert(int matriz[][]); // ordena as COLUNAS da matriz POR LINHA void sort(int matriz[][]); // procura por um valor dentro da matriz, trocando ele por um outro valor e retorna o número de trocas realizadas. int replace(int matriz[][], int oldvalue, int newvalue); 2) Dentro do método main, utilize a classe MatrixInt para criar 2 matrizes de inteiros: uma com números aleatórios e outra com números sequenciais 3) Imprima as duas matrizes 4) Inverta a matriz de números sequenciais e imprima ela novamente 5) Com a matriz aleatório: (a) imprima a matriz (b) solicite ao usuário que informe um número qualquer. Imprima na tela a posição (linha e coluna) em que o número se encontra na matriz; caso o número não esteja na matriz, imprima uma mensagem adequada. Lembre-se: você deve imprimir apenas a primeira ocorrência (c) com o mesmo número informado anteriormente, imprima separadamente, os números que são menores que o valor informado e os que maiores que o valor informado. (d) solicite um novo número para o usuário e que ele digite um número que pertence a matriz. Executar a troca (replace) do valor atual pelo valor novo valor e imprimir quantas trocas foram feitas; se nenhuma troca foi feita, imprimir uma mensagem adequada. (e) imprima novamente a matriz 6) Imprimir a soma dos números da matriz resultante da questão 5. 7) Crie outro método imprimir que imprima colunas em dois caracteres, lembrando que se o número não ocupa dois dígitos, ele deve imprimir ocupar o mesmo espaço de um número com dois dígitos e alinhado a direita, por exemplo: 5 6 10 8 9 4 1 2 11 1 5 8 7 3 7 0 11 12 21 30 8) Faça outro método imprimir que contenha o mesmo comportamento dos número como o do exercício 7, porém coloque uma bordar entre os elementos. Por exemplo: +--+--+--+--+--+ | 5| 6|10| 8| 9| +--+--+--+--+--+ | 4| 1| 2|11| 1| +--+--+--+--+--+ | 5| 8| 7| 3| 7| +--+--+--+--+--+ |0 |11|12|21|30| +--+--+--+--+--+