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

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

23.04.2018, 21:22. Показов 2267. Ответов 15
Метки нет (Все метки)

Даны три числа. Не используя логические операторы, найдите сумму двух наибольших из них.
Подскажите Классы или методы! Как это вообще должно быть! Решение можно не писать! Только направить на суть!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.04.2018, 21:22
Ответы с готовыми решениями:

Найти сумму двух наибольших из трех заданных чисел
Помогите решить задачу: даны три числа, найти сумму двух наибольших из них.

Из трёх заданных чисел найти сумму двух наибольших
Данные три числа. Найти сумму двух наибольших из них.

Найти сумму двух наибольших чисел из трех заданных
Даны три числа. Найти сумму двух наибольших из них. В Free Pascal

Найти сумму двух наибольших из трех заданных различных чисел
Найти сумму двух наибольших из трех заданных различных чисел.

__________________

Записывайтесь на профессиональные курсы Java-разработчиков
15
Супер-модератор
Эксперт PythonЭксперт Java
7488 / 4082 / 1520
Регистрация: 21.10.2017
Сообщений: 11,555
23.04.2018, 21:50 2
DEStroyerll_, кладешь их в массив, Arrays.sort(), складываешь 1 и 2 элементы...
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
23.04.2018, 21:56  [ТС] 3
iSmokeJC,
0
336 / 262 / 108
Регистрация: 14.06.2016
Сообщений: 521
24.04.2018, 00:30 4
А может просто какой-нибудь математической дури просили
Java
1
2
3
    public double sum_max(double a, double b, double c) {
        return (Math.abs(a - b) + Math.abs(b - c) + a + 2 * b + c) / 2;
    }
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
24.04.2018, 01:02  [ТС] 5
vcrop, Можно и математической дури) Понять бы суть теперь из этой дури которую вы написали.
0
336 / 262 / 108
Регистрация: 14.06.2016
Сообщений: 521
24.04.2018, 01:06 6
max(a, b) = (|a - b| + (a + b)) / 2
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
24.04.2018, 01:10  [ТС] 7
vcrop, То есть при помощи класса Math метода abs, вы высчитали два наиболее больших числа и вывели сумму?!
0
1891 / 1508 / 373
Регистрация: 17.02.2014
Сообщений: 7,613
24.04.2018, 13:01 8
Цитата Сообщение от vcrop Посмотреть сообщение
Math.abs()
не пойдет, глянь реализацию. А в общем идея правильная)).
Если так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class CyberNoLogOperators {
 
    private static int myAbs(int num) {
        return num * ((num >> 31) | 1);
    }
 
    private static int getMax(int a, int b) {
        return  ((a + b) + myAbs(a - b))/2;
    }
 
    public static void main(String[] args) {
        System.out.println(getMax(-5, -9));
    }
}
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
24.04.2018, 20:07 9
Цитата Сообщение от iSmokeJC Посмотреть сообщение
DEStroyerll_, кладешь их в массив, Arrays.sort(), складываешь 1 и 2 элементы...
старый приём))
Java
1
2
3
4
5
6
public int summ(int a, int b, int c) {
int res = 0;
int[] arr = new int[]{a, b, c};
arr.sort();
res = arr[0] + arr[2];
return res;}
используй массив чтоб можно было сдать, коллекции ты не проходил поди
0
1545 / 911 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
24.04.2018, 20:09 10
использование какого-нибудь встроенного метода из sdk не является решением таких задач, т.к. под капотом все равно используются операторы сравнения. Выше уже были приведены правильные решения
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
24.04.2018, 20:24  [ТС] 11
neske, Ну тут я с Вами согласен. Так как требуется без какого либо логического оператора.

Добавлено через 10 минут
WinniPuh, А у Вас небольшая ошибка в коде.
arr не может использовать метод sort. Вот так может быть Arrays.sort(arr);
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
24.04.2018, 20:40 12
Цитата Сообщение от DEStroyerll_ Посмотреть сообщение
WinniPuh, А у Вас небольшая ошибка в коде.
arr не может использовать метод sort. Вот так может быть Arrays.sort(arr);
давно с массивами не играл, мог ошибиться писал по памяти.
ЗЫ: это вы перегибаете по факту в КОДЕ ЛОГИЧЕСКИХ ОПЕРАТОРОВ нету . а логика всёравно будет в коде присутствовать
у нас логические операторы <> || && == которые в данном случае могут использоваться - отсутствуют, спроси у своего ценцея прямо - что он считает логическими операторами и чем конкретно нельзя пользовться
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
24.04.2018, 21:04  [ТС] 13
WinniPuh, да какой там ценцей) Я нахожу задания и пытаюсь их делать! А Ваше решение очень даже хорошее!
А как давно вы Java занимаетесь!
0
75 / 61 / 29
Регистрация: 20.04.2015
Сообщений: 415
24.04.2018, 21:09 14
Февраль, март апр трех месяцев нету
0
1 / 1 / 0
Регистрация: 31.01.2018
Сообщений: 207
24.04.2018, 21:38  [ТС] 15
WinniPuh, А занимаетесь по книгам или есть еще какие-то ресурсы? Видео например!
0
3293 / 2355 / 425
Регистрация: 28.04.2012
Сообщений: 7,853
24.04.2018, 22:53 16
Цитата Сообщение от WinniPuh Посмотреть сообщение
у нас логические операторы <> || && ==
Нет, у нас (и у всех) логические операторы — это AND, OR, XOR и NOT, причём спецификация не относит short-circuiting-операторы, а также, почему-то NOT(fix), к логическим, а классифицирует их как conditional.

Поянтно, что автор «задачи» имел в виду также операторы сравнения, но задачи нужно формировать точно и корректно.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2018, 22:53

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Сумма двух наибольших из трех заданных чисел
Даны три числа. Требуется найти сумму двух наибольших из них. Формат входных данных Вводится...

напечатать произведение двух наибольших из трёх из заданых чисел, используя при этом не более двух сравнений
напечатать произведение двух наибольших из трёх из заданых чисел, используя при этом не более двух...

Найти сумму двух наибольших из трех чисел
2. Даны три числа. Найти сумму двух наибольших из них.

Найти сумму двух наибольших из трех чисел
даны три числа. найти сумму двух наибольших из них. пж. помогите решить... Добавлено через 57...


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

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

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