Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> if и вычисление выражения, if ($a >($b+1)) {}: 
:(
    Опции темы
Wowa
  Дата 4.1.2004, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Как можно такое реализовать?
$a=7;
$b=7;

if ($a >($b+1)) {}:
PM WWW   Вверх
Sardar
Дата 4.1.2004, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 4
Всего: 317



Вопрос не понятен, синтаксис PHP корректный.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Wowa
Дата 4.1.2004, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Я пробовал выполнять данный код, но ($b+1) не вычислялось.
PM WWW   Вверх
Sardar
Дата 4.1.2004, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 4
Всего: 317



У меня вычисляется, вообще это очень простое выражение должно вычислятся с первых версий PHP.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
BloodLetter
Дата 4.1.2004, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 26.12.2003

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



Так а в чем, собственно, проблема? У меня заработал тот код, который Вы привели. Но если проблемы, попробуйте так:

$a = 7;
$b = 7;

if ($a > ++$b) {
echo "окъ";
}
else {
echo "эроръ";
}
PM MAIL ICQ   Вверх
.RADIX
Дата 4.1.2004, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 536
Регистрация: 19.11.2003

Репутация: нет
Всего: 0



Может стоит завести $c и присвоить ей ($b + 1) ?


--------------------
ASM Forever
PM MAIL   Вверх
Wowa
Дата 4.1.2004, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



В общем все понятно - спасибо. Тема закрыта.

Цитата
Может стоит завести $c и присвоить ей ($b + 1)

можно, но заводить новую переменную нехочется.
PM WWW   Вверх
IZ@TOP
Дата 5.1.2004, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Admin, а так не пробовал:
Цитата

$a = 3;
$b = 1;
if($a > $b+1) {
    echo "\$a > \$b";
} else {
    echo "\$a < \$b";
}

biggrin.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
MuToGeN
Дата 5.1.2004, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



$b+1 - приплюсует к $b единицу, пихнет это в стек и сравнит с $a
++$b - сделает сначала $b=$b+1, потом сравнит с $a


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
BloodLetter
Дата 5.1.2004, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 26.12.2003

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



Цитата(MuToGeN @ 5.1.2004, 16:27)
$b+1 - приплюсует к $b единицу, пихнет это в стек и сравнит с $a
++$b - сделает сначала $b=$b+1, потом сравнит с $a

Хорошо, разница - в принципе. Но результат-то достигнут. Цель ведь оправдывает средства.
PM MAIL ICQ   Вверх
IZ@TOP
Дата 6.1.2004, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



MuToGeN, я так понимаю что первый вариант быстрее инкримента?


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Zipo
Дата 6.1.2004, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 4.11.2003

Репутация: нет
Всего: 0



есть pre- и post-increment/decrement
различия их в том, что 1 случае сначала выполняется операция increment/decrement потом уже то же сравнение. Во 2-ом наоборот операция сравнения, потом increment/decrement
т.е. в этом случае заходим в тело if
Код

$a = 0;
$b = 1;
if ($b == ++$a) {
   echo "==<br><b>\$a</b> $a<br><b>\$b</b> $b";
}
else {
echo "!=<br><b>\$a</b> $a<br><b>\$b</b> $b";
}


в этом - в тело else

Код

$a = 0;
$b = 1;
if ($b == $a++) {
   echo "==<br><b>\$a</b> $a<br><b>\$b</b> $b";
}
else {
echo "!=<br><b>\$a</b> $a<br><b>\$b</b> $b";
}


но в обоих случаях после if переменные $a и $b равны.

Это сообщение отредактировал(а) Zipo - 6.1.2004, 15:59
PM MAIL   Вверх
Dexter
Дата 6.1.2004, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1562
Регистрация: 2.7.2002
Где: Москва, Бирюлево

Репутация: нет
Всего: 4



Цитата
Хорошо, разница - в принципе. Но результат-то достигнут. Цель ведь оправдывает средства.


Разница не в принципе в первом случае значение $b не изменяется, а во втором увеличивается на единицу.

Цитата
MuToGeN, я так понимаю что первый вариант быстрее инкримента?


Они ИМХО по сути разныею


--------------------
The only thing you really know about me is...
...that's all you'll ever know
PM MAIL ICQ   Вверх
IZ@TOP
Дата 8.1.2004, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Dexter,
$a = 1;
$b = 2;
echo ++$a; // Выводит 2
echo $b++; // Выводит 2

Вот и вся разница.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
arial
Дата 8.1.2004, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Iz@top, глянь сюда:
Код
<?php

$a = 5;
$b = 5;

echo 'Преинкремент: $a было ' . ++$a . ', а стало ' . $a;
?><br /><?php
echo 'Постинкремент: $b было ' . $b++ . ', а стало ' . $b;

?>



--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

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


 




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


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

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