В цьому уроці я наведу два приклади роботи з двовимірними масивами. Простими словами двовимірний масив , це масив масивів. Тому робота з матрицею не сильно відрізняється від роботи із звичайним масивом.
Приклад 1
Задано дві квадратних матриці A(n,n) і B(n,n), n ≤ 15 . Розробити програму, яка будує і друкує вектор X(n) за правилом: X(i) = 1, якщо елементи i -го рядка матриці A більші ніж відповідні елементи i -го рядка матриці B та X(i) = 0 в інших випадках.
package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[][] matr1 = new int[15][15];
int[][] matr2 = new int[15][15];
int[] vectr = new int[225];
int n;
int t = 0;
int sum1 = 0;
int sum2 = 0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
n = scn.nextInt();
System.out.println("Матриця 1");
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + i+1 + "][" + j+1+"]");
matr1[i][j] = scn.nextInt();
}
System.out.println("Матриця 2");
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + i+1 + "][" + j+1+"]");
matr2[i][j] = scn.nextInt();
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
sum1 += matr1[i][j];
sum2 += matr2[i][j];
}
if (sum1 > sum2)
vectr[t] = 1;
else
vectr[t] = 0;
t++;
}
for (int i = 0; i < t; i++)
System.out.print(vectr[i] + " ");
scn.close();}}
Приклад 2
Задана дійсна матриця A(n, n), n ≤ 15 . Розробити програму, яка обчислює суму її елементів, розміщених на головній діагоналі і вище неї, які перевищують за величиною всі елементи, розміщені нижче головної діагоналі. Якщо таких елементів немає, то виводить повідомлення про це.
package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[][] matr = new int[15][15];
int n;
int sum = 0;
int sum1 = 0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
n = scn.nextInt();
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + (i+1) + "][" + (j+1)+"]");
matr[i][j] = scn.nextInt();
}int m=1;
for(int i=1;i<n;i++){
for(int j=0;j<m;j++)
sum+=matr[i][j];
m++;}
sum = sum / m;
int k = 0;
for(int i = k; i < n; i++)
for(int j=0;j<n;j++)
if(matr[i][j] > sum)
sum1 += matr[i][j];
if(sum == 0)
System.out.println("Таких елементів матриці немає");
else System.out.println("Cума = "+sum1);
scn.close();}}
Приклад 1
Задано дві квадратних матриці A(n,n) і B(n,n), n ≤ 15 . Розробити програму, яка будує і друкує вектор X(n) за правилом: X(i) = 1, якщо елементи i -го рядка матриці A більші ніж відповідні елементи i -го рядка матриці B та X(i) = 0 в інших випадках.
package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[][] matr1 = new int[15][15];
int[][] matr2 = new int[15][15];
int[] vectr = new int[225];
int n;
int t = 0;
int sum1 = 0;
int sum2 = 0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
n = scn.nextInt();
System.out.println("Матриця 1");
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + i+1 + "][" + j+1+"]");
matr1[i][j] = scn.nextInt();
}
System.out.println("Матриця 2");
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + i+1 + "][" + j+1+"]");
matr2[i][j] = scn.nextInt();
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
sum1 += matr1[i][j];
sum2 += matr2[i][j];
}
if (sum1 > sum2)
vectr[t] = 1;
else
vectr[t] = 0;
t++;
}
for (int i = 0; i < t; i++)
System.out.print(vectr[i] + " ");
scn.close();}}
Приклад 2
Задана дійсна матриця A(n, n), n ≤ 15 . Розробити програму, яка обчислює суму її елементів, розміщених на головній діагоналі і вище неї, які перевищують за величиною всі елементи, розміщені нижче головної діагоналі. Якщо таких елементів немає, то виводить повідомлення про це.
package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[][] matr = new int[15][15];
int n;
int sum = 0;
int sum1 = 0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
n = scn.nextInt();
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
System.out.println("Ведіть елемент [" + (i+1) + "][" + (j+1)+"]");
matr[i][j] = scn.nextInt();
}int m=1;
for(int i=1;i<n;i++){
for(int j=0;j<m;j++)
sum+=matr[i][j];
m++;}
sum = sum / m;
int k = 0;
for(int i = k; i < n; i++)
for(int j=0;j<n;j++)
if(matr[i][j] > sum)
sum1 += matr[i][j];
if(sum == 0)
System.out.println("Таких елементів матриці немає");
else System.out.println("Cума = "+sum1);
scn.close();}}
Комментариев нет:
Отправить комментарий