Министерство образования и науки Российской Федерации Федеральное государственное автономное образовательное учреждение высшего профессионального образования «УНИВЕРСИТЕТ» Институт – Отделение – Направление – Лабораторная работа №5 Одномерные и многомерные массивы по дисциплине: Программирование на Java Выполнил: студент гр. (Номер группы) (Подпись) Проверил: ассистент (Ф.И.О.) . (Подпись) Томск 2022 г. (Ф.И.О.) Цель работы Освоить принципы работы с одномерными и многомерными массивами. Задание Вариант 4 Задание 1 1) В массиве А1, ... , Аn найти количество элементов равных единице, стоящих на чётных местах. 2) Известно, что в массиве А1,А2,...,Аn количество отрицательных чисел равно количству положительных. Составить новый массив так, чтобы чередовались положительные и отрицательные числа. 3) В массиве A1, A2, ... , An найти максимальный элемент и его местоположение в массиве. Задание 2 В матрице определить число столбцов, содержащих мах значение. Текст программы Задание 1.1 import java.util.Arrays; import java.util.Scanner; public class Vectors1 { public static void main(String[] args) { int sum = 0; int[] array = new int[(int) (Math.random() * 10)]; for (int i = 0; i < array.length; i++) { array[i] = (int) (Math.random() * 10); if (array[i] == 1 & i % 2 == 0) { sum++; } System.out.print(array[i] + " "); } System.out.println("\n" + sum); } } Задание 1.2 import java.util.Arrays; import java.util.Scanner; public class Vectors2 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print("Введите количество элементов массива: "); int[] array2 = new int[scan.nextInt()]; for (int i = 0; i < array2.length; i++) { System.out.print("Введите число " + (i + 1) + ": "); array2[i] = scan.nextInt(); } Arrays.sort(array2); int[] pol = new int[array2.length / 2]; int[] otr = new int[array2.length / 2]; for (int i = 0; i < array2.length / 2; i++) otr[i] = array2[i]; for (int i = 0; i < array2.length / 2; i++) pol[i] = array2[i + array2.length / 2]; int s = 0; int[] newArray = new int[array2.length]; for (int i = 0; i < newArray.length; i += 2) { int a = i; System.out.println(pol[s] + " " + otr[s]); newArray[i] = pol[s]; newArray[++a] = otr[s]; s += 1; } for (int i = 0; i < array2.length; i++) System.out.print(newArray[i] + " "); } } Задание 1.3 public class Vectors3 { public static void main(String[] args) { int max = 0; int dex = 0; int[] array = new int[(int) (Math.random() * 10)]; for (int i = 0; i < array.length; i++) { array[i] = (int) (Math.random() * 10); if (array[i] > max) { max = array[i]; dex = i; } System.out.print(array[i] + " "); } System.out.println("\n" + max + " " + (dex + 1)); } } Задание 2 import java.util.Random; import java.util.Scanner; public class Task1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Random random = new Random(); System.out.print("Введите размер матрицы: "); int i = scanner.nextInt(); int j = scanner.nextInt(); int max = 0; int count = 1; int[][] matrix = new int[i][j]; for (int dex1 = 0; dex1 < i; dex1++) { for (int dex2 = 0; dex2 < j; dex2++) { matrix[dex1][dex2] = random.nextInt(1, 25); if (matrix[dex1][dex2] > max) max = matrix[dex1][dex2]; System.out.print(matrix[dex1][dex2] + "\n"); } } for (int dex1 = 0; dex1 < i; dex1++) { for (int dex2 = 0; dex2 < j; dex2++) { matrix[dex1][dex2] = random.nextInt(1, 25); if (matrix[dex1][dex2] == max) count++; } } System.out.println("\n" + count + " " + max); } } Скриншоты На Рисунок 1 результат выполнения 1.1 программы. Рисунок 1 ‒ Скриншот консоли 1.1 задания На Рисунок 1 результат выполнения 1.2 программы. Рисунок 2 ‒ Скриншот консоли 1.2 задания На Рисунок 1 результат выполнения 1.3 программы. Рисунок 3 ‒ Скриншот консоли 1.3 задания На Рисунок 4 результат выполнения 2 программы. Рисунок 4 ‒ Скриншот консоли 2 задания Выводы Освоил принципы работы с одномерными и многомерными массивами.