Uploaded by Дмитрий Сапронов

отчёт по программированию

advertisement
Министерство образования и науки Российской Федерации
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
«УНИВЕРСИТЕТ»
Институт –
Отделение –
Направление –
Лабораторная работа №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 задания
Выводы
Освоил принципы работы с одномерными и многомерными массивами.
Download