Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Маленький тест, :) 
:(
    Опции темы
Platon
Дата 3.1.2008, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Shaggie, млиииин, я вон не знал, зато решил, если знаете заранее ответ, прошу не отвечать!

Добавлено через 1 минуту и 8 секунд
Код

    public static boolean isOdd(int i) {
        return Math.abs(i) % 2 == 1;
    }

PM MAIL ICQ   Вверх
Kangaroo
Дата 3.1.2008, 00:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: 21
Всего: 104



Цитата(Shaggie @  2.1.2008,  23:05 Найти цитируемый пост)
Kangaroo, это старая задачка.

мм smile ну если будет боян, вы заранее извините. Выкладываю то что есть (точнее то, что читаю  smile )

Цитата(Shaggie @  2.1.2008,  23:05 Найти цитируемый пост)
Результат деления на два нечётного отрицательного числа даст результат "-1", а исправить можно, сравнивая с нулём.

Угу, правда. Я тож догадался smile 

Puzzle 2: Time for a Change
Предисловие:
Цитата

Tom goes to the auto parts store to buy a spark plug that costs $1.10, but all he has in his wallet are two-dollar bills. How much change should he get if he pays for the spark plug with a two-dollar bill?

Что выведет это:
Код

public class Change {
    public static void main(String args[]) {
        System.out.println(2.00 - 1.10);
    }
}


Puzzle 3: Long Division
Что выведет это:
Код

public class LongDivision {

    public static void main(String[] args) {

        final long MICROS_PER_DAY = 24 * 60 * 60 * 1000 * 1000;

        final long MILLIS_PER_DAY = 24 * 60 * 60 * 1000;

        System.out.println(MICROS_PER_DAY / MILLIS_PER_DAY);

    }

}



Добавлено через 1 минуту и 34 секунды
Цитата(Platon @  2.1.2008,  23:10 Найти цитируемый пост)
я вон не знал, зато решил, 


Platon, работает, но не интересно. Слишком много кода  smile Пробуй еще


--------------------
Lost....
PM MAIL MSN   Вверх
Platon
Дата 3.1.2008, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Цитата(Kangaroo @  3.1.2008,  01:17 Найти цитируемый пост)
Platon, работает, но не интересно. Слишком много кода  smile Пробуй еще

Нет проблем, мои любимые биты:
Код

public static boolean isOdd(int i) {
        return (i & 1) == 1;
    }


Добавлено через 3 минуты и 58 секунд
Цитата(Kangaroo @  3.1.2008,  01:17 Найти цитируемый пост)
Puzzle 2: Time for a Change

Мы все знаем, что тут есть погрешность вычислений, но предсказать в какую сторону пойдет погрешность наверно не получится, поэтому не понятен вопрос.

Цитата(Kangaroo @  3.1.2008,  01:17 Найти цитируемый пост)
Puzzle 3: Long Division

Явно подвох с переполнением ^_^
PM MAIL ICQ   Вверх
v2v
Дата 3.1.2008, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: 8
Всего: 56



Цитата(Kangaroo @  3.1.2008,  00:17 Найти цитируемый пост)

Puzzle 3: Long Division

блиинннн... никак не могу понять почему так).
(интересный ответ получается)

Это сообщение отредактировал(а) v2v - 3.1.2008, 00:33


--------------------
PM   Вверх
Platon
Дата 3.1.2008, 00:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Ан, нет! Вообще компилировать не дал.

Код

public static void main(String[] args) {
        final long MICROS_PER_DAY = 24 * 60 * 60 * 1000 * 1000L;
        final long MILLIS_PER_DAY = 24 * 60 * 60 * 1000;
        System.out.println(MICROS_PER_DAY / MILLIS_PER_DAY);
    }

вот так нормуль.
PM MAIL ICQ   Вверх
Kangaroo
Дата 3.1.2008, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: 21
Всего: 104



Цитата(Platon @  2.1.2008,  23:28 Найти цитируемый пост)
Нет проблем, мои любимые биты:

да, так намного лучше  smile 


Цитата(Platon @  2.1.2008,  23:28 Найти цитируемый пост)
Мы все знаем, что тут есть погрешность вычислений, но предсказать в какую сторону пойдет погрешность наверно не получится

Да. Но, наверное, зря я этот дал. Снимаем этот вопрос smile 

Цитата(Platon @  2.1.2008,  23:33 Найти цитируемый пост)
Ан, нет! Вообще компилировать не дал.

Это у тебя наверное IDE помогло. Обычный компилятор скушает



--------------------
Lost....
PM MAIL MSN   Вверх
v2v
Дата 3.1.2008, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: 8
Всего: 56



о-па! если добавлять L d конце получается совсем другой ответ )))


Цитата(Platon @  3.1.2008,  00:33 Найти цитируемый пост)
Ан, нет! Вообще компилировать не дал.

у меня jdk5 + eclipse - компилирует!


--------------------
PM   Вверх
Kangaroo
Дата 3.1.2008, 00:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: 21
Всего: 104



Цитата(Platon @  2.1.2008,  23:33 Найти цитируемый пост)
вот так нормуль. 

Еще лучше вот так:
Код

public static void main(String[] args) {
        final long MICROS_PER_DAY = 24L * 60 * 60 * 1000 * 1000;
        final long MILLIS_PER_DAY = 24L * 60 * 60 * 1000;
        System.out.println(MICROS_PER_DAY / MILLIS_PER_DAY);
    }

То есть поставить лонг вначале. Тогда все дальнейшие вычисления будут с лонгами и проблем с переполнением вообще быть не должно.

Добавлено через 46 секунд
v2v, понял почему так? Если что - объясним smile


--------------------
Lost....
PM MAIL MSN   Вверх
Platon
Дата 3.1.2008, 00:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Цитата(v2v @  3.1.2008,  01:40 Найти цитируемый пост)
о-па! если добавлять L d конце получается совсем другой ответ )))

хм, интересный факт, замечательно! будем знать!

PM MAIL ICQ   Вверх
v2v
Дата 3.1.2008, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: 8
Всего: 56



ыыыы.. допёр переполнения инта происходит, а не лонга)))
максимум для лонга 2 ^ 63 - 1 , а для инта 2 ^ 31 - 1  ... вот где я прошляпал)).

Добавлено через 1 минуту и 52 секунды
аффтар пиши ещё

Это сообщение отредактировал(а) v2v - 3.1.2008, 00:53


--------------------
PM   Вверх
Kangaroo
Дата 3.1.2008, 01:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: 21
Всего: 104



Цитата(v2v @  2.1.2008,  23:52 Найти цитируемый пост)
аффтар пиши ещё

Нет проблем. Только сегодня - это последнее  smile 

Puzzle 4: It's Elementary
Вроде все просто.. как думаете - что выведет?
Код

public class Elementary {
    public static void main(String[] args) {
        System.out.println(54321+ 5432l);
    }
}



Puzzle 5: The Joy of Hex
Вот эту не смог правильно решить  smile 
Что выведет:
Код

public class JoyOfHex {
    public static void main(String[] args) {
        System.out.println(
            Long.toHexString(0x100000000L + 0xcafebabe));
    }
}



Добавлено @ 01:10
PS
Просьба сразу не выкладывать решение smile Можно просто отписаться - "Я решил эту задачку". А решение завтра уже выложу. Пусть люди почитают и подумают.

Это сообщение отредактировал(а) Kangaroo - 3.1.2008, 01:10


--------------------
Lost....
PM MAIL MSN   Вверх
Platon
Дата 3.1.2008, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Я решил.

Добавлено через 2 минуты и 26 секунд
4 пример очень жестокий, без прогонки кода не обойтись.
5-й сразу было подозрение ^_^

Добавлено через 5 минут и 8 секунд
Цитата(Kangaroo @  3.1.2008,  01:39 Найти цитируемый пост)
Это у тебя наверное IDE помогло. Обычный компилятор скушает

Ваша правда.
PM MAIL ICQ   Вверх
Kangaroo
Дата 3.1.2008, 01:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: 21
Всего: 104



Цитата(Platon @  3.1.2008,  00:16 Найти цитируемый пост)
4 пример очень жестокий, без прогонки кода не обойтись

 smile Чур меня не бить.


Цитата(Platon @  3.1.2008,  00:16 Найти цитируемый пост)
5-й сразу было подозрение ^_^

Да у меня было  smile , но точный результат я не угадал. 


--------------------
Lost....
PM MAIL MSN   Вверх
nornad
Дата 3.1.2008, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Цитата(Platon @  3.1.2008,  04:16 Найти цитируемый пост)
4 пример очень жестокий, без прогонки кода не обойтись.

Можно обойтись, но нужно сначала догадаться, в чём прикол.  smile 


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
Platon
Дата 3.1.2008, 10:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: 16
Всего: 40



Цитата(nornad @  3.1.2008,  10:17 Найти цитируемый пост)
Можно обойтись, но нужно сначала догадаться, в чём прикол.

Неее, я сразу догадался, что играют на человеческом нераспознании символов, поэтому ответ угодать крайне сложно, или там 2 L, или 1, или вообще нет, вот тебе 3 разных ответа.
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0723 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.