За последние 24 часа нас посетили 21507 программистов и 1693 робота. Сейчас ищут 1149 программистов ...

Как проверять отрицательное ли число ?

Тема в разделе "HUMOR.PHP.RU", создана пользователем dslychko, 15 окт 2007.

  1. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
    PHP:
    1. <?php
    2.  
    3. function lessThanZero ($n) {
    4.     return $n>>1 > $n;
    5. }
    6.  
    7. var_dump(lessThanZero(5), lessThanZero(-5));
     
  2. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
     
  3. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
    ну и, в завершение, имхо, шедевр:
    PHP:
    1. <?php
    2. function lessThanZero ($num) {
    3.     $result = get_headers("http://habrahabr.ru/blogs/php/page$num/");
    4.     return is_int(strpos($result[0], '404'));
    5. }
    6. var_dump(lessThanZero(5), lessThanZero(-5));
     
  4. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    "Огонь... и пожарче!" (с) Доктор Хибберт %)
     
  5. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    проверить старший бит
    =)
     
  6. mrbig66

    mrbig66 Активный пользователь

    С нами с:
    24 ноя 2009
    Сообщения:
    17
    Симпатии:
    0
    Адрес:
    msk
    С элементами китайского кода...

    PHP:
    1. <?php
    2. $a = -5;
    3.  
    4. if($a*-1 > 0){
    5.   echo "Меньше нуля!";
    6. }
    7. if($a*-1 < 0){
    8.   echo "Больше нуля!";
    9. }
    10. if(!($a*-1 > 0) AND !($a*-1 < 0) AND $a*-1 == 0 AND true AND !false AND (false + 1)){
    11.   echo "Не больше и не меньше нуля, а, кажЫсь, нуль!";
    12. }
    13. ?>
    14.  
     
  7. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    В завершении парада:

    PHP:
    1. <?php
    2.  
    3. $a = -4;
    4.  
    5. // Теперь уже будет пофиг, былo ли оно отрицательным!
    6. echo abs($a);
    7.  
    8. ?>
     
  8. gkhelloworld

    gkhelloworld Активный пользователь

    С нами с:
    18 ноя 2007
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    PHP.ru
    ) зря PHP не ввели такую функцию ... вон сколько извращенцев :D а так бы is_negativenumber('-1');
     
  9. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    !!!
    PHP:
    1.  
    2. <?php
    3. $n = -100;
    4. if (strlen(decbin($n)) == 32)
    5. {
    6.      echo "Число $n отрицательное";
    7. }
    Только для чисел, не больше 2^32/2-1 и не меньше -2^32!
     
  10. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    проверить не длину в двоичке, а значение старшего бита :))
     
  11. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    antonn
    А decbin старшие биты не возвращает если они 0 =)
     
  12. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    где МВЦ и зЭнд фреймвоки?
     
  13. linex

    linex Активный пользователь

    С нами с:
    1 янв 2010
    Сообщения:
    7
    Симпатии:
    0
    способ порадовал :) одно только название функции чего стоит
     
  14. vuzy

    vuzy Активный пользователь

    С нами с:
    11 мар 2010
    Сообщения:
    199
    Симпатии:
    0
    Адрес:
    киев
    извращенцы.... сколько наглых функций на то что б проверить что это перед нами О_О 5 или -5
    как вариант не програмный метод но зато интерактивный...
    PHP:
    1.  
    2. <?
    3. $num='-5';
    4. ?>
    5. Это число меньше нуля <? echo $num; ?>
    6. <FORM action="обработчик" Method=post>
    7. да меньше<br>
    8. <input type=radio name="plusorminus"><br>
    9. нет не меньше<br>
    10. <input type=radio name="plusorminus"><br>
    11. <input type=submit value="подвердить">
    12. </FORM>
    13.  
     
  15. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    (int)$var === ~~(int)$var;
     
  16. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    сходу не увидел тему про код вообще.
    нашел такое:
    выделение кодов из ид HTML элемента вида id="lnks[123][456]"
    [js]a = id.replace('lnk[','');
    a = a.split("]");
    e1 = eval(a[0]);
    e2 = eval(a[1].replace('[',''));[/js]