JavaRush/Java блог/Архив info.javarush/Кухня(); Задание N17.
terranum
28 уровень

Кухня(); Задание N17.

Статья из группы Архив info.javarush
участников
Кухня(); Задание N17. - 1 Правила [Одномерные массивы] 17. Пригодность детали оценивается по размеру B, который должен соответствовать интервалу (A – δ, A + δ). Определить, имеются ли в партии из N деталей бракованные. Если да, то подсчитать их количество, иначе выдать отрицательный ответ.
Комментарии (12)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
RabenokDmitry
Уровень 21
11 февраля 2015, 00:05
public static int checkDetails(int[] details, int leftLimit, int rightLimit) {
        if (leftLimit >= rightLimit)
            throw new IllegalArgumentException("Заданы неверные допуски");
        int countDefect = 0;
        for (int i = 0; i < details.length; i++) {
            if (details[i] > rightLimit || details[i] < leftLimit)
                countDefect++;


        }
        if (countDefect == 0) {
            System.out.println("Брака нет");
            return -1;
        } else {
            return countDefect;
        }
    }
tsev
Уровень 30
25 августа 2014, 15:47
  
Docktor91
Уровень 40
25 августа 2014, 15:14
public static int checkParts(double A, double delta,double...partSizes)
    {
        int result = 0;
        for (double partSize : partSizes)
            result = partSize < A + delta && partSize > A - delta ? result + 1 : 0;
        return result != 0 ? result : -1;
    }
Sultan
Уровень 16
25 августа 2014, 15:19
надо бракованные считать.
Docktor91
Уровень 40
25 августа 2014, 17:37
точно))


public static int checkParts(double A, double delta,double...partSizes)
    {
        int result = 0;
        for (double partSize : partSizes)
            result = partSize > A + delta || partSize < A - delta ? result + 1 : 0;
        return result != 0 ? result : -1;
    }
Sultan
Уровень 16
25 августа 2014, 17:40
вообще-то проще было бы заменить «result + 1» и «0». Но раз так, то вместо >, < нужны >=, <=, так?
Docktor91
Уровень 40
25 августа 2014, 17:44
ну почему же, допустимые значения A+d, A-d
Ну если совсем придираться то только для A-d
Sultan
Уровень 16
25 августа 2014, 17:50
(A – δ, A + δ)- открытый интервал, A – δ, A + δ в него не входят.
[A – δ, A + δ] — закрытй, A – δ, A + δ в него входят.
Sultan
Уровень 16
25 августа 2014, 17:51
Кстати, я свою ленту задач начал, посмотришь?
Docktor91
Уровень 40
25 августа 2014, 17:57
ахаха)))убедил)
Docktor91
Уровень 40
25 августа 2014, 17:57
ща заценим
Sultan
Уровень 16
25 августа 2014, 15:00

public static int method(int[] b, int a, int d) {
    int count = 0;
    for (int n : b) {
        count += a - d < n && n < a + d ? 0 : 1;
    }
    return count;
}