Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- public class Homework {
- /**
- * Написать метод, которому в качестве аргумента передается не пустой одномерный
- * целочисленный массив, метод должен вернуть новый массив, который получен путем
- * вытаскивания элементов из исходного массива, идущих после последней четверки. Входной
- * массив должен содержать хотя бы одну четверку, в противном случае в методе необходимо
- * выбросить RuntimeException.
- * Написать набор тестов для этого метода (варианта 3-4 входных данных)
- * вх: [ 1 2 4 4 2 3 4 1 7 ] -> вых: [ 1 7 ]
- * Написать метод, который проверяет что массив состоит только из чисел 1 и 4. Если в массиве
- * нет хоть одной 4 или 1, то метод вернет false;
- * Написать набор тестов для этого метода (варианта 3-4 входных данных)
- */
- public static void main(String[] args) {
- System.out.println( Arrays.toString( method1(new int[] { 2, 8, 4, 7, 2, 5, 4, 4, 3, 9, 9, 0, 1 })));
- System.out.println( method2(new int[] { 4, 1, 1, 4, 1, 4, 4, 4, 1, 1, 4, 4, 999 }));
- }
- public static int[] method1(int[] in) {
- if (in == null)
- return null;
- int indexOfLast4 = 0;
- for (int i = 0; i < in.length; i++)
- if (in[i] == 4)
- indexOfLast4 = i;
- if (in[indexOfLast4] != 4)
- throw new RuntimeException();
- return Arrays.copyOfRange(in, indexOfLast4 + 1, in.length);
- }
- public static boolean method2(int[] in) {
- if (in == null)
- return false;
- boolean found1 = false, found4 = false;
- for (int elem : in) {
- if (elem == 1) found1 = true;
- else if (elem == 4) found4 = true;
- else return false;
- }
- return (found1 & found4);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement