Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизКоличество отрицтельных чисел Найти похожие ветки
← →
Professor (2008-03-29 15:07) [0]тут одна простенькая задача накануне поставила меня в тупик.. чувствую что на элементарщине попался..
Дано 3 числа, найти количество отрицательных чисел, использую 2 оператора условия.
PS битовыми операциями пользоваться нельзя.
← →
Alien1769 © (2008-03-29 15:48) [1]Комбинации из трех чисел.
← →
Palladin © (2008-03-29 16:00) [2]Задача не имеет решения. Вариантов решения 4, но условных сравнений 2. Это означает всего лишь 3 варианта ветвлений.
Вот если ввести условие, что есть хотя бы одно отрицательно то все просто.
← →
vrem_ (2008-03-29 16:12) [3]складывать можно?
← →
Professor (2008-03-29 16:15) [4]думаю можно
> Вот если ввести условие, что есть хотя бы одно отрицательно
> то все просто.
про доп. условия ничего не говорили (
← →
Palladin © (2008-03-29 16:21) [5]
> Professor (29.03.08 16:15) [4]
тогда решения нет. нужно минимум 3 условия. тогда тоже все просто.
> vrem_ (29.03.08 16:12) [3]
:) можно, хоть до потери пульса
← →
Andy BitOff © (2008-03-29 16:25) [6]
> Palladin ©
Но ведь он говорит "отрицательных чисел, использую 2 оператора условия." и на опечатку не похоже, т.к. ю и я в разных сторонах клавиатуры. А если использует ОН, то это его проблемы ;)
← →
evvcom © (2008-03-29 16:30) [7]
select sum(case when value < 0 then 1 else 0) from MyTable
Один оператор условия! :-)))
← →
guav © (2008-03-29 16:39) [8]> 2 оператора условия
А что это ?
если это ифы, то можно.
count := 0;
if (a1 < 0) and (a2 < 0) or
(a1 < 0) and (a3 < 0) or
(a2 < 0) and (a3 < 0) then
Inc(count, 2);
if (count = 2) and (a1 < 0) and (a2 < 0) and (a3 < 0) or
(count = 0) and ((a1 < 0) or (a2 < 0) or (a3 < 0)) then
Inc(count, 1);
а ещё можно без ифов вообще - переводить boolean в число через ord, использовать case или операторы цикла.
← →
Professor (2008-03-29 16:58) [9]
> Andy BitOff © (29.03.08 16:25) [6]
это не более, чем опечатка.
> guav © (29.03.08 16:39) [8]
о! благодарю, по-моему то что надо )
← →
vrem_ (2008-03-29 17:02) [10]ну как это то что надо?
условие это когда один раз сравнивают, а там посмотри - больше чем один раз!
← →
Professor (2008-03-29 17:04) [11]
> vrem_ (29.03.08 17:02) [10]
> условие это когда один раз сравнивают
> Professor (29.03.08 15:07)
> использую 2 оператора условия.
← →
Palladin © (2008-03-29 17:19) [12]
> Professor (29.03.08 17:04) [11]
млин, лучше бы ты просто написал "два if"а"... лично я воспринял как два сравнения....
← →
Andy BitOff © (2008-03-29 17:22) [13]
> Professor (29.03.08 17:04) [11]
vrem_ имел в виду, что внутри первого ифа, в коде guav"а, ведется проверка по 11 условиям.
← →
Palladin © (2008-03-29 17:36) [14]
> Professor (29.03.08 17:04) [11]
млин, лучше бы ты просто написал "два if"а"... лично я воспринял как два сравнения....
← →
Palladin © (2008-03-29 17:41) [15]прошу прощения за дубль... IE mobile блин...
> Andy BitOff © (29.03.08 17:22) [13]
да условий понятно много... а вот условных оператора только два... задачка старая, олимпиадная...
← →
Alien1769 © (2008-03-29 17:54) [16]
> guav © (29.03.08 16:39) [8]
+1
Вот про какие комбинации я говорил в 1 посте,
возможно не внятно написал...
← →
builder (2008-03-29 19:27) [17]
> а ещё можно без ифов вообще - переводить boolean в число
> через ord, использовать case или операторы цикла.
плохо
← →
GrayFace © (2008-03-30 04:01) [18]count:= (sgn(a1)-1) div (-2) + (sgn(a2)-1) div (-2) + (sgn(a2)-1) div (-2);
← →
J_f_S © (2008-03-30 04:13) [19]iCount = a >> 31 + b >> 31 + c >> 31;
:)
← →
J_f_S © (2008-03-30 04:17) [20]Убить :) Пропустил про битовые операции.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c