Advertisement
lexaz93

Sinitsyn_8.04.2020

Apr 9th, 2020
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 12.08 KB | None | 0 0
  1. package ru.itsjava.methods.homework;
  2.  
  3. import java.util.Arrays;
  4. import java.util.Scanner;
  5.  
  6. public class ArraysWithMethods {
  7.     public static void main(String[] args) {
  8.         double[] numsArray = new double[]{4.7, 10.0, 3.1, -5.9, 9.8, 4.4, 3.2};
  9.         System.out.println("numsArray = " + Arrays.toString(numsArray));
  10.  
  11.         // 1. Вывести [i] = 3 элемент массива
  12.         printArrayElement(numsArray, 3);
  13.  
  14.         // 2. Написать "Я люблю писать программы на Java!"
  15.         printString("Я люблю писать программы на Java!");
  16.  
  17.         // 3. Вывести элементы с четными индексами
  18.         evenArrayElements(numsArray);
  19.  
  20.         // 4. Вывести элементы с нечетными индексами
  21.         oddArrayElements(numsArray);
  22.  
  23.         // 5. Вывести первые n элемента
  24.         System.out.println(Arrays.toString(firstNArrayElements(numsArray, 4)));
  25.  
  26.         // 6. Вывести последние n элемента
  27.         System.out.println(Arrays.toString(lastNArrayElements(numsArray, 3)));
  28.  
  29.         // 7. Вывести в обратном порядке каждый 3 элемент
  30.         reverseEveryThirdArrayElements(numsArray);
  31.  
  32.         // 8. Вывести элементы большие нуля в обратном порядке
  33.         reversePositiveArrayElements(numsArray);
  34.  
  35.         // 9. Вывести индексы элементов равных нулю
  36.         indexZeroArrayElement(numsArray);
  37.  
  38.         // 10. Произведение всех элементов массива
  39.         System.out.println("multiplication = " + multiplicationAllArrayElements(numsArray));
  40.  
  41.         // 11. Найти среднеарифметическое массива
  42.         System.out.println("average = " + averageArray(numsArray));
  43.  
  44.         // 12. Найти сумму элементов с четными индексами
  45.         System.out.println("amountEven = " + amountEvenArrayElements(numsArray));
  46.  
  47.         //13. Произведение элементов с нечетными индексами
  48.         System.out.println("multiplicationOdd = " + miltiplicationOddArrayElements(numsArray));
  49.  
  50.         // 14. Найти минимальный элемент массива
  51.         System.out.println("minElement = " + minArrayElement(numsArray));
  52.  
  53.         // 15. Найти сумму отрицательных элементов массива
  54.         System.out.println("amountNegative = " + amountNegativeArrayElements(numsArray));
  55.  
  56.         // 16. Найти элементы делящиеся на 5
  57.         divisibleByFiveArrayElements(numsArray);
  58.  
  59.         //17. Найти 2 максимальных элемента массива, элементы не повторяются
  60.         bubleSortForArray(numsArray);
  61.         System.out.println("Два максимальных элемента " + numsArray[numsArray.length - 1] + " " + numsArray[numsArray.length - 2]);
  62.  
  63.         //18. Найти индекс элемента равного 10
  64.         System.out.println("indexEqual10 = " + indexEqual10ArrayElement(numsArray));
  65.  
  66.         //19. Вывести на экран "Хороший массив", если в нем по крайне мере 3 положительных элемента
  67.         printGoodArray(numsArray);
  68.  
  69.         // 20. Вывести n раз: "Я люблю Java!"
  70.         printNTimeString("Я люблю Java!", 10);
  71.  
  72.         // 21. Найти сумму цифр числа. 545 -> (5 + 4 + 5 =) 14
  73.         System.out.println("sumOfDigit(545) = " + sumOfDigit(545));
  74.  
  75.         // 22. Вывести все делители числа 15 -> 15, 5, 3, 1
  76.         allNumberDivisors();
  77.     }
  78.  
  79.     public static void printArrayElement(double[] numbers, int index) {
  80.         System.out.println(index + " элемент массива: " + numbers[index]);
  81.     }
  82.  
  83.     public static void printString(String string) {
  84.         System.out.println(string);
  85.     }
  86.  
  87.     public static void evenArrayElements(double[] numbers) {
  88.         System.out.println("Элементы с четными индексами: ");
  89.         for (int i = 0; i < numbers.length; i += 2) {
  90.             System.out.print(numbers[i] + " ");
  91.         }
  92.         System.out.println();
  93.     }
  94.  
  95.     public static void oddArrayElements(double[] numbers) {
  96.         System.out.println("Элементы с нечетными индексами: ");
  97.         for (int i = 1; i < numbers.length; i += 2) {
  98.             System.out.print(numbers[i] + " ");
  99.         }
  100.         System.out.println();
  101.     }
  102.  
  103.     public static double[] firstNArrayElements(double[] numbers, int n) {
  104.         System.out.println("Первые " + n + " элемента: ");
  105.         double[] shortArray = new double[n];
  106.         for (int i = 0; i < n; i++) {
  107.             shortArray[i] = numbers[i];
  108.         }
  109.         return shortArray;
  110.     }
  111.  
  112.     public static double[] lastNArrayElements(double[] numbers, int n) {
  113.         System.out.println("Последние " + n + " элемента: ");
  114.         double[] shortArray = new double[n];
  115.         int j = 0;
  116.         for (int i = numbers.length - n; i < numbers.length; i++) {
  117.             shortArray[j] = numbers[i];
  118.             j++;
  119.         }
  120.         return shortArray;
  121.     }
  122.  
  123.     public static void reverseEveryThirdArrayElements(double[] numbers) {
  124.         System.out.println("Каждый третий элемент в обратном порядке: ");
  125.         for (int i = numbers.length - 1; i >= 0; i -= 3) {
  126.             System.out.print(numbers[i] + " ");
  127.         }
  128.         System.out.println();
  129.     }
  130.  
  131.     public static void reversePositiveArrayElements(double[] numbers) {
  132.         System.out.println("Вывести элементы большие нуля в обратном порядке");
  133.         for (int i = numbers.length - 1; i >= 0; i--) {
  134.             if (numbers[i] > 0) {
  135.                 System.out.print(numbers[i] + " ");
  136.             }
  137.         }
  138.         System.out.println();
  139.     }
  140.  
  141.     public static void indexZeroArrayElement(double[] numbers) {
  142.         System.out.println("Вывести индексы элементов равных нулю");
  143.         for (int i = 0; i < numbers.length; i++) {
  144.             if (numbers[i] == 0) {
  145.                 System.out.print(i + " ");
  146.             }
  147.         }
  148.         System.out.println();
  149.     }
  150.  
  151.     public static double multiplicationAllArrayElements(double[] numbers) {
  152.         System.out.println("Произведение всех элементов массива");
  153.         double multiplication = 1;
  154.         for (int i = 0; i < numbers.length; i++) {
  155.             if (numbers[i] == 0) {
  156.                 multiplication = 0;
  157.                 break;
  158.             } else {
  159.                 multiplication *= numbers[i];
  160.             }
  161.         }
  162.         return multiplication;
  163.     }
  164.  
  165.     public static double averageArray(double[] numbers) {
  166.         System.out.println("Среднеарифметическое массива");
  167.         double amount = 0;
  168.         for (int i = 0; i < numbers.length; i++) {
  169.             amount += numbers[i];
  170.         }
  171.         return amount / numbers.length;
  172.     }
  173.  
  174.     public static double amountEvenArrayElements(double[] numbers) {
  175.         System.out.println("Найти сумму элементов с четными индексами");
  176.         double amountEven = 0;
  177.         for (int i = 0; i < numbers.length; i += 2) {
  178.             amountEven += numbers[i];
  179.         }
  180.         return amountEven;
  181.     }
  182.  
  183.     public static double miltiplicationOddArrayElements(double[] numbers) {
  184.         System.out.println("Произведение элементов с нечетными индексами");
  185.         double multiplicationOdd = 1;
  186.         for (int i = 1; i < numbers.length; i += 2) {
  187.             if (numbers[i] == 0) {
  188.                 multiplicationOdd = 0;
  189.                 break;
  190.             } else {
  191.                 multiplicationOdd *= numbers[i];
  192.             }
  193.         }
  194.         return multiplicationOdd;
  195.     }
  196.  
  197.     public static double minArrayElement(double[] numbers) {
  198.         System.out.println("Найти минимальный элемент массива");
  199.         double minElement = numbers[0];
  200.         for (int i = 0; i < numbers.length; i++) {
  201.             if (minElement > numbers[i]) {
  202.                 minElement = numbers[i];
  203.             }
  204.         }
  205.         return minElement;
  206.     }
  207.  
  208.     public static double amountNegativeArrayElements(double[] numbers) {
  209.         System.out.println("Найти сумму отрицательных элементов массива");
  210.         double amountNegative = 0;
  211.         for (int i = 0; i < numbers.length; i++) {
  212.             if (numbers[i] < 0) {
  213.                 amountNegative += numbers[i];
  214.             }
  215.         }
  216.         return amountNegative;
  217.     }
  218.  
  219.     public static void divisibleByFiveArrayElements(double[] numbers) {
  220.         System.out.println("Найти элементы делящиеся на 5");
  221.         for (int i = 0; i < numbers.length; i++) {
  222.             if (Math.abs(numbers[i] % 5) <= 0.001) {
  223.                 System.out.print(numbers[i] + " ");
  224.             }
  225.         }
  226.         System.out.println();
  227.     }
  228.  
  229.     public static double[] bubleSortForArray(double[] numbers) {
  230.         for (int i = numbers.length - 1; i > 0; i--) {
  231.             for (int j = 0; j < i; j++) {
  232.                 if (numbers[j] > numbers[j + 1]) {
  233.                     double tmp = numbers[j];
  234.                     numbers[j] = numbers[j + 1];
  235.                     numbers[j + 1] = tmp;
  236.                 }
  237.             }
  238.         }
  239.         return numbers;
  240.     }
  241.  
  242.     public static int indexEqual10ArrayElement(double[] numbers) {
  243.         System.out.println("Найти индекс элемента равного 10");
  244.         int index = 0;
  245.         for (int i = 0; i < numbers.length; i++) {
  246.             if (Math.abs(numbers[i] - 10) <= 0.001) {
  247.                 index = i;
  248.                 break;
  249.             }
  250.         }
  251.         return index;
  252.     }
  253.  
  254.     public static void printGoodArray(double[] numbers) {
  255.         System.out.println("Вывести на экран 'Хороший массив', если в нем по крайне мере 3 положительных элемента");
  256.         int counter = 0;
  257.         for (int i = 0; i < numbers.length; i++) {
  258.             if (numbers[i] > 0) {
  259.                 counter++;
  260.             }
  261.             if (counter == 3) {
  262.                 break;
  263.             }
  264.         }
  265.         if (counter == 3) {
  266.             System.out.println(Arrays.toString(numbers));
  267.         } else {
  268.             System.out.println("Есть только 'Плохой массив'");
  269.         }
  270.     }
  271.  
  272.     public static void printNTimeString(String string, int n) {
  273.         System.out.println("Вывести " + n + " раз: \"" + string + "\"");
  274.         int count = 0;
  275.         while (count < n) {
  276.             System.out.println("\"" + string + "\"");
  277.             count++;
  278.         }
  279.     }
  280.  
  281.     public static int sumOfDigit(int number) {
  282.         System.out.println("Найти сумму цифр числа. " + number + " -> (5 + 4 + 5 =) 14");
  283.         int divider = 100;
  284.         int summa = 0;
  285.         while (divider != 0) {
  286.             summa += number / divider;
  287.             number = number % divider;
  288.             divider /= 10;
  289.         }
  290.         return summa;
  291.     }
  292.  
  293.     public static void allNumberDivisors() {
  294.         System.out.println("Вывести все делители числа X");
  295.         System.out.println("Введите число Х");
  296.         Scanner number = new Scanner(System.in);
  297.         int num1 = number.nextInt();
  298.         int index = num1 / 2;
  299.         System.out.println("Делители числа " + num1);
  300.         System.out.print(21 + " ");
  301.         while (index != 1) {
  302.             if (num1 % index == 0) {
  303.                 System.out.print(index + " ");
  304.             }
  305.             index--;
  306.         }
  307.         System.out.println(1 + "\n");
  308.     }
  309. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement