Помогите с операторами

12 3
B
На сайте с 06.05.2012
Offline
14
880

Приветствую!

Написал такое условие:


if (($a<$d or $b<$d)&(($a-$d)>5%*$a or ($b-$d)>5%*$b) & ($x=(40-44) & $y=(140-159)) or ($x=(45-46) & $y=(150-159)) or ( $x=(47-48) и $y=(152-159)) or ($x=(49-50) & $y=(157-159)))
{
echo "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=$ac'>";
}

Видимо неправильно. Прошу знатоков посмотреть, что в if плохо расписано.

($a-$d)>5% - значит, что $a больше $d на 5%, возможно тут криво.

Перешерстил весь нет, примеров процентного сравнения не нашел!

Спасибо!

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#1

Пример процентного соотношения:


if ( ($a-$b) > ($a/20) )
{
//Код, если разница $a-$b больше чем 5% от $a
}

Это не программирование. Это математика, класс эдак 3-4. Хотя сейчас уже в этом возрасте дети знают логарифмы

Подпись))
siv1987
На сайте с 02.04.2009
Offline
427
#2
B
На сайте с 06.05.2012
Offline
14
#3
Милованов Ю.С:
Пример процентного соотношения:

if ( ($a-$b) > ($a/20) )
{
//Код, если разница $a-$b больше чем 5% от $a
}

Это не программирование. Это математика, класс эдак 3-4. Хотя сейчас уже в этом возрасте дети знают логарифмы

Спасибо за подсказку, Вы наверное имели ввиду:

//Код, если разница $a-$b больше чем 20% от $a

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#4
Brazilik:
Спасибо за подсказку, Вы наверное имели ввиду:

//Код, если разница $a-$b больше чем 20% от $a

Формула: X% = X*Y/100

Пример: 12% = 12*150/100 = 18

В школу бегом, азы курить;)

IL
На сайте с 20.04.2007
Offline
435
#5
 ( $x=(47-48) и $y=(152-159))

А это, наверняка, значит не присвоить $x значение выражения 47-48 ( т.е. $x=-1), а то, что $x равен или 48 или 47.. или между ними.. ну и до кучи русское "и" надо бы заменить..

Brazilik:
что в if плохо расписано.

Всё :)

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
B
На сайте с 06.05.2012
Offline
14
#6
ivan-lev:
А это, наверняка, значит не присвоить $x значение выражения 47-48 ( т.е. $x=-1), а то, что $x равен или 48 или 47.. или между ними.. ну и до кучи русское "и" надо бы заменить..

Всё :)

Исправил все. Теперь верно?


if (($a<$d or $b<$d) & (( ($a-$d) > ($a/5) ) or ( ($b-$d) > ($b/5) )) & (($x=range(40,44)) & ($y=range(140,159))) or (($x=range(45,46)) & ($y=range(150,159))) or (($x=range(47,48)) & ($y=range(152,159))) or (($x=range(49,50)) & ($y=range(157,159))))
siv1987
На сайте с 02.04.2009
Offline
427
#7

and пишется с двумя & - && http://php.net/manual/ru/language.operators.logical.php

W
На сайте с 10.05.2009
Offline
114
#8

а равно так ==

ТС, может вам учебники по пхп почитать а заодно и математику подучить?

B
На сайте с 06.05.2012
Offline
14
#9

Всех... Академиков))) Кандидатов хахаха

Информирую, сию формулу написал очень хороший экономист.

Требуется;) перевести это в php, синтаксис которого очень слабо знаю.

И все.

Думаю, что комменты типо "математику подучить" не уместны... сомневаюсь, что познания в математике у комментаторов выше.

Всем, кто без лишней трепотни и с трепотней помог ГРОМАДНЕЙШЕЕ СПАСИБО!

Skom
На сайте с 02.12.2006
Offline
165
#10

$y=(152-159)

У очень хорошего экономиста нет калькулятора, чтобы из 152 вычесть 159? 😮

Зы: Про вычисление в столбик, я вообще молчу :)

Cras amet qui numquam amavit quique amavit cras amet
12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий