Add Lab 2
This commit is contained in:
parent
75112d90c2
commit
74a44852af
|
@ -0,0 +1,108 @@
|
|||
import java.util.Scanner;
|
||||
import java.util.Arrays;
|
||||
|
||||
public class Lab_2 {
|
||||
|
||||
public static String format(int number) {
|
||||
int width = String.valueOf(number).length() + 1;
|
||||
String format = "|%" + width + "d ";
|
||||
|
||||
return format;
|
||||
}
|
||||
|
||||
public static double average(short[] row) {
|
||||
short sum = 0;
|
||||
|
||||
for (short element : row) {
|
||||
sum += element;
|
||||
}
|
||||
|
||||
double result = sum / row.length;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
short a, rows = 0, columns = 0, width;
|
||||
String format;
|
||||
|
||||
Scanner input = new Scanner(System.in);
|
||||
|
||||
do {
|
||||
try {
|
||||
System.out.println();
|
||||
System.out.print("Input a constant to multipy a matrix by: ");
|
||||
|
||||
a = input.nextShort();
|
||||
break;
|
||||
} catch (Exception e) {
|
||||
System.out.println("A constant must be a short-data type integer, try again.");
|
||||
input.nextLine();
|
||||
}
|
||||
} while (true);
|
||||
|
||||
System.out.println();
|
||||
System.out.println("Input size of the matrix.");
|
||||
|
||||
do {
|
||||
try {
|
||||
System.out.print("Rows: ");
|
||||
rows = input.nextShort();
|
||||
} catch (Exception e) {
|
||||
System.out.println("A number of rows must be a short-data type integer, try again.");
|
||||
input.nextLine();
|
||||
}
|
||||
} while (rows <= 0);
|
||||
|
||||
do {
|
||||
try {
|
||||
System.out.print("Columns: ");
|
||||
columns = input.nextShort();
|
||||
} catch (Exception e) {
|
||||
System.out.println("A number of columns must be a short-data type integer, try again.");
|
||||
input.nextLine();
|
||||
}
|
||||
} while (columns <= 0);
|
||||
|
||||
short[][] matrix_B = new short[rows][columns];
|
||||
|
||||
System.out.println();
|
||||
System.out.println("Matrix B:");
|
||||
|
||||
format = format(rows * columns);
|
||||
|
||||
for (short i = 0; i < rows; i++) {
|
||||
for (short j = 0; j < columns; j++) {
|
||||
matrix_B[i][j] = (short) ((i + 1) * (j + 1));
|
||||
|
||||
System.out.printf(format, matrix_B[i][j]);
|
||||
}
|
||||
|
||||
System.out.println("|");
|
||||
}
|
||||
|
||||
System.out.println();
|
||||
System.out.println("Matrix a×B:");
|
||||
|
||||
format = format(rows * columns * a);
|
||||
|
||||
for (short i = 0; i < rows; i++) {
|
||||
for (short j = 0; j < columns; j++) {
|
||||
matrix_B[i][j] *= (short) (a);
|
||||
|
||||
System.out.printf(format, matrix_B[i][j]);
|
||||
}
|
||||
|
||||
System.out.println("|");
|
||||
}
|
||||
|
||||
System.out.println();
|
||||
System.out.println("Averages of each row:");
|
||||
|
||||
for (short[] row : matrix_B) {
|
||||
System.out.println(average(row));
|
||||
}
|
||||
|
||||
input.close();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue