Матрица Тёплица на Java
Матрица Тёплица (диагонально-постоянная матрица) - это такая матрица, в которой на всех диагоналях, параллельных главной, расположены одинаковые элементы. В коде ниже я покажу вам, как создать (заполнить) такую матрицу, вывести на экран, а также проверить, является ли матрица матрицей Тёплица.
public class MyClass { //метод проверки public static boolean isMatrix(int[][] mat) { int m=mat.length; int n=mat[0].length; for(int i=0; i<m; i++){ for(int j=0; j<n; j++){ if(i+1<m && j+1<n && mat[i][j]!=mat[i+1][j+1]){ return false; } } } return true; } public static void main(String args[]) { //параметры матрицы int size = 10; int a1[][] = new int[size][size]; int data[] = new int[size]; data[0] = 8; data[1] = 2; data[2] = 4; data[3] = 9; //заполнение матрицы for(int i=4; i<size; i++){ data[i] = 0; } for(int i=0; i<size; i++) { for(int j=0; j<size; j++) { if(j>i){ a1[i][j] = data[j-i]; }else if(j==i){ a1[i][j] = data[0]; }else{ a1[i][j] = data[i-j]; } } } //вывод матрицы на экран for(int i=0; i<size; i++){ for(int j=0; j<size; j++) { System.out.print(a1[i][j]+" "); } System.out.println(""); } System.out.println(""); // Готовим консоль к выводу кириллицы String str1 = "Это Матрица Тёплица"; String str2 = "Увы, это не Матрица Тёплица"; try{ System.setOut(new java.io.PrintStream(System.out, true, "UTF-8")); } catch (Exception ex) {} //проверка if (isMatrix(a1)) System.out.println(str1); else System.out.println(str2); } }И вот что у нас получается:
Есть вопросы? Пишите и я с удовольствием за небольшую плату помогу вам решить онлайн задачи по Java и не только.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.