Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 10.11.2017
Сообщений: 9
1

Найти сумму всех идущих подряд в начале последовательности нечетных чисел

24.02.2018, 23:22. Просмотров 2807. Ответов 15
Метки нет (Все метки)

Дана последовательность из n вещественных чисел. Первое
число в последовательности нечетное. Найти сумму всех
идущих подряд в начале последовательности нечетных чисел.
Условный оператор не использовать.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2018, 23:22
Ответы с готовыми решениями:

Найти сумму всех идущих подряд в начале последовательности нечетных чисел
Дана последовательность из n вещественных чисел. Первое число в последовательности нечетное....

Найти сумму всех идущих подряд в начале последовательности нечетных чисел
Дана последовательность из п вещественных чисел. Первое число в последовательности не-четное....

Найти сумму всех идущих подряд в начале последовательности нечетных чисел (нужны комментарии)
Условие задачи звучит так: Дана последовательность из п вещественных чисел Первое число в...

Найти сумму всех идущих подряд нечётных, находящихся в начале заданной последовательности
Как реализовать данный алгоритм?

15
Модератор
Эксперт PythonЭксперт Java
5230 / 3041 / 1220
Регистрация: 21.10.2017
Сообщений: 9,230
Записей в блоге: 2
25.02.2018, 13:21 2
Цитата Сообщение от potapka Посмотреть сообщение
Дана последовательность
Каким образом? Массив, список, файл...
Цитата Сообщение от potapka Посмотреть сообщение
идущих подряд
Если имеется ввиду, посчитать сумму всех нечетных(по индексу) чисел, то как они еще могут идти, как не подряд?
Цитата Сообщение от potapka Посмотреть сообщение
в начале последовательности
А если "в начале", то докуда?

Если же просто сумму нечетных элементов массива вещественных чисел, создаешь цикл от 0 до длины массива с приращением счетчика 2.
0
2714 / 2333 / 718
Регистрация: 05.07.2013
Сообщений: 11,366
25.02.2018, 13:39 3
Цитата Сообщение от iSmokeJC Посмотреть сообщение
А если "в начале", то докуда?
с первого, до тех пор, пока элементы нечетные
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
25.02.2018, 18:39 4
Java
1
2
3
4
5
6
7
8
9
10
11
public class Intmass {
    public static int chetnieChisla(int arr[]) {
        int l = 0;
        for (int i = 0; i < arr.length; i++) {
 
            if (arr[i] % 2 > 0) {
                l = l + arr[i];
            }
        }return l;
    }
}
Добавлено через 31 секунду
ели это массив чисел то так
0
315 / 242 / 104
Регистрация: 14.06.2016
Сообщений: 501
25.02.2018, 19:04 5
WinniPuh, условный оператор не использовать.
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
25.02.2018, 19:10 6
Java
1
2
3
4
5
6
7
8
9
public class Intmass {
    public static int chetnieChisla(int arr[]) {
        int l = 0;
        for (int i = 0; i < arr.length; i++) {
            l = arr[i] % 2 > 0? i+arr[i]:i+0;
            }
        }return l;
    }
}
Добавлено через 56 секунд
а тернарный считается условным?)
0
Модератор
Эксперт PythonЭксперт Java
5230 / 3041 / 1220
Регистрация: 21.10.2017
Сообщений: 9,230
Записей в блоге: 2
25.02.2018, 19:12 7
WinniPuh, тернарный это тоже условный оператор...

Добавлено через 1 минуту
Раз уж пошла такая пьянка...
Java
1
2
3
for(int i=0; i<arr.length; i+=2){
sum += arr[i];
}
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
25.02.2018, 19:15 8
тьфуты условие не читаю внимательно
0
315 / 242 / 104
Регистрация: 14.06.2016
Сообщений: 501
25.02.2018, 19:39 9
Java
1
2
3
4
5
6
7
8
9
10
11
12
    public static void main(String[] args) {
 
        final int[] array = {1, 3, 7, 5, 2, 1};
 
        int bool = 1;
        int sum = 0;
 
        for (int i : array) sum += i & -(bool &= i);
 
        System.out.println(sum);
 
    }
0
28 / 8 / 6
Регистрация: 20.09.2017
Сообщений: 133
26.02.2018, 01:34 10
Лучший ответ Сообщение было отмечено potapka как решение

Решение

Пожалуй самый простой вариант (мое субъективное мнение):

Java
1
2
3
4
5
6
7
8
9
10
11
final int[] array = {1, 3, 7, 5, 2, 1};
 
        int sum = 0;
        int i = 0;
 
        while (array[i] % 2 != 0) {
            sum = sum + array[i];
            i++;
        }
 
        System.out.println(sum);
1
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
26.02.2018, 06:15 11
тоже условный))
0
28 / 8 / 6
Регистрация: 20.09.2017
Сообщений: 133
26.02.2018, 10:41 12
WinniPuh, тогда посоветую открыть любой учебник по Jave и прочитать, какие операторы относят к условным, а какие к циклическим
0
5977 / 2103 / 737
Регистрация: 10.12.2010
Сообщений: 5,923
Записей в блоге: 3
26.02.2018, 10:54 13
Может так прокатит:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Main {
    public static void main(String[] args) {
 
        List<Integer> integerList = Arrays.asList(1, 3, 5, 7, 5, 2, 1);
 
        int firstOdd = integerList.stream()
                .filter(x -> x % 2 == 0)
                .findFirst()
                .get();
 
        integerList = integerList.subList(1, integerList.indexOf(firstOdd));
 
        int sum = integerList.stream().mapToInt(Integer::intValue).sum();
 
        System.out.println(sum);
    }
}
Добавлено через 6 минут
Я только решил не включать в сумму первое число в последовательности. Что-то не могу вспомнить почему. Но если что ноль вписать просто.
1
Модератор
Эксперт PythonЭксперт Java
5230 / 3041 / 1220
Регистрация: 21.10.2017
Сообщений: 9,230
Записей в блоге: 2
26.02.2018, 12:08 14
HighPredator, если вместо запрета на использование условных операторов замутить streamы... Жесть!
0
1674 / 1313 / 330
Регистрация: 17.02.2014
Сообщений: 6,961
26.02.2018, 13:56 15
суммирует, первые нечетные числа в последовательности
Java
1
2
3
4
5
6
7
8
9
10
11
public static void main(String[] args) {
        int [] arrNums = {1, 3, 7, 5, 2, 1};
        int summ = 0;
        try {
            for (int tmpNum : arrNums)
                summ += tmpNum/(tmpNum & 1);
        } catch (ArithmeticException e) {
            System.out.printf("%d", summ);
        }
 
    }
0
HighPredator
26.02.2018, 14:08     Найти сумму всех идущих подряд в начале последовательности нечетных чисел
  #16

Не по теме:

Цитата Сообщение от iSmokeJC Посмотреть сообщение
Жесть!
iSmokeJC, если упарываться, то на полную!:D

0
26.02.2018, 14:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.02.2018, 14:08
Привет! Вот еще темы с ответами:

Найти сумму всех идущих подряд в начале вектора нечетных чисел
Дан вектор из вещественных чисел. Первое число в векторе нечетное. Найти сумму всех идущих подряд в...

Найти сумму всех идущих подряд в начале последовательности четных чисел
Задачку нужно решить через while Я набросал код, но у меня складываются все четные числа, а нужно,...

Дана последовательность из N вещественных чисел. Первое число в последовательности нечетное. Найти сумму всех идущих подряд в начале последовательност
Дана последовательность из N вещественных чисел. Первое число в последовательности нечетное. Найти...

Найти среднее арифметическое всех, идущих подряд в начале последовательности четных чисел
Дана последовательность из n вещественных чисел. первое число в последовательности четное. Найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.