Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.itsjava.arrays.homework;
- import java.util.Arrays;
- public class ArraysHomeWork2 {
- public static void main(String[] args) {
- int[] nums = new int[]{-8, 9, 2, 4, 15, 5, -3, 10};
- System.out.println(Arrays.toString(nums));
- // 1. Вывести элементы большие нуля в обратном порядке
- System.out.println("Вывести элементы большие нуля в обратном порядке");
- for (int i = nums.length - 1; i >= 0; i--) {
- if (nums[i] > 0) {
- System.out.print(nums[i] + " ");
- }
- }
- // 2. Вывести индексы элементов равных нулю
- System.out.println("\nВывести индексы элементов равных нулю");
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] == 0) {
- System.out.print(i + " ");
- }
- }
- // 3. Произведение всех элементов массива
- System.out.println("\nПроизведение всех элементов массива");
- int multiplication = 1;
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] == 0) {
- multiplication = 0;
- break;
- } else {
- multiplication *= nums[i];
- }
- }
- System.out.println("multiplication = " + multiplication);
- // 4. Найти среднеарифметическое массива
- System.out.println("Найти среднеарифметическое массива");
- double amount = 0;
- for (int i = 0; i < nums.length; i++) {
- amount += nums[i];
- }
- System.out.println("average = " + amount / nums.length);
- // 5. Найти сумму элементов с четными индексами
- System.out.println("Найти сумму элементов с четными индексами");
- int amountEven = 0;
- for (int i = 0; i < nums.length; i += 2) {
- amountEven += nums[i];
- }
- System.out.println("amountEven = " + amountEven);
- // 6. Произведение элементов с нечетными индексами
- System.out.println("Произведение элементов с нечетными индексами");
- int multiplicationOdd = 1;
- for (int i = 1; i < nums.length; i += 2) {
- if (nums[i] == 0) {
- multiplicationOdd = 0;
- break;
- } else {
- multiplicationOdd *= nums[i];
- }
- }
- System.out.println("multiplicationOdd = " + multiplicationOdd);
- // 7. Найти минимальный элемент массива
- System.out.println("Найти минимальный элемент массива");
- int minElement = nums[0];
- for (int i = 0; i < nums.length; i++) {
- minElement = Math.min(minElement, nums[i]);
- }
- System.out.println("minElement = " + minElement);
- // 8. Найти сумму отрицательных элементов массива
- System.out.println("Найти сумму отрицательных элементов массива");
- int amountNegative = 0;
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] < 0) {
- amountNegative += nums[i];
- }
- }
- System.out.println("amountNegative = " + amountNegative);
- // 9. Найти элементы делящиеся на 5
- System.out.println("Найти элементы делящиеся на 5");
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] % 5 == 0 & nums[i] > 0) {
- System.out.print(nums[i] + " ");
- }
- }
- //10. Реализовать свою задачу.
- System.out.println("\nНайти произведение ненулевых элементов");
- int multiplicationNotZero = 1;
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] != 0) {
- multiplicationNotZero *= nums[i];
- }
- }
- System.out.println("multiplicationNotZero = " + multiplicationNotZero);
- //10* Найти 2 максимальных элемента массива, элементы не повторяются
- System.out.println("Найти 2 максимальных элемента массива, элементы не повторяются");
- int[] numsSort = new int[nums.length];
- numsSort = Arrays.copyOf(nums, nums.length);
- Arrays.sort(numsSort);
- for (int i = numsSort.length - 1; i > numsSort.length - 3; i--) {
- System.out.print(numsSort[i] + " ");
- }
- //Поиск двух максимумов через цикл for
- System.out.println("\nНайти 2 максимальных элемента массива, элементы не повторяются");
- int firstMax = nums[0];
- int secondMax = nums[1];
- for (int i = 0; i < nums.length - 1; i++) {
- if (nums[i] > firstMax) {
- secondMax = firstMax;
- firstMax = nums[i];
- } else {
- if (nums[i + 1] > secondMax) {
- secondMax = nums[i + 1];
- }
- }
- }
- System.out.println("firstMax = " + firstMax);
- System.out.println("secondMax = " + secondMax);
- //Bubble sort
- System.out.println("Найти 2 максимальных элемента массива, элементы не повторяются");
- int[] numsSort2 = new int[nums.length];
- numsSort2 = Arrays.copyOf(nums, nums.length);
- for (int i = numsSort2.length - 1; i > 0; i--) {
- for (int j = 0; j < i; j++) {
- if (numsSort2[j] > numsSort2[j + 1]) {
- int tmp = numsSort2[j];
- numsSort2[j] = numsSort2[j + 1];
- numsSort2[j + 1] = tmp;
- }
- }
- }
- System.out.println(numsSort2[nums.length - 1] + " " + numsSort2[nums.length - 2]);
- System.out.println(Arrays.toString(numsSort2));
- //11. Найти индекс элемента равного 10
- System.out.println("Найти индекс элемента равного 10");
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] == 10) {
- System.out.println(i);
- break;
- }
- }
- //12. Вывести на экран "Хороший массив", если в нем по крайне мере 3 положительных элемента
- System.out.println("Вывести на экран 'Хороший массив', если в нем по крайне мере 3 положительных элемента");
- int counter = 0;
- for (int i = 0; i < nums.length; i++) {
- if (nums[i] > 0) {
- counter++;
- }
- }
- if (counter >= 3) {
- System.out.println(Arrays.toString(nums));
- } else {
- System.out.println("Есть только 'Плохой массив'");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement