[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: математический оператор
Crash2007
а что оператор % не работает в цикле for?
делаю такую штуку.. :
<?

$a = 2000;
$b = 2;
for($c = $a /= $b; $c >= $b; $c %= $b) {
echo $c;
echo '<br>';
}

?>


и выводит чтото непонятное (1000);
(это я выполняю задачу на превращение в двоичное число)
что подскажите?



Спустя 9 минут, 59 секунд (26.04.2010 - 14:40) sergeiss написал(а):
Ну и правильно, что 1000 выводит... Что написал - то и получи. А ты что хотел получить-то?

И распиши словами, плз, что ты подразумевал, когда писал вот этот набор знаков в заголовке цикла?

Спустя 41 минута, 24 секунды (26.04.2010 - 15:21) Crash2007 написал(а):
когда вместо % ставлю / деление происходит......
я написал что-- $c равно 1000; пока $c больше или равно двум; $c равно остатку от деления $c и $b

подскажи тогда....как правильно та?)

Спустя 56 минут, 22 секунды (26.04.2010 - 16:18) sergeiss написал(а):
ОК, давай разберем...

$a = 2000;
$b = 2;

for($c = $a /= $b; $c >= $b; $c %= $b) { ... }

Начало цикла.
$c=( $a /= $b), т.е. $a=$a/$b=1000 - в начале цикла $c=1000; при этом $c>$b, потому что 1000>2. Заходим в цикл и выводим $c.

Далее. Идем к изменению цикла.

$c %= $b =====> $c = $c % $b, т.е. $c равно остатку от деления 1000 на 2. Чему равен остаток? Правильно, он равен нулю. Присваиваем $c=0, и идем сравнивать. $c >= $b - больше или равно? Нет, 0 меньше 2, поэтому выходим из цикла на этом шаге.

То есть, как написал, так и получил. Но чего ты хотел, так и не понятно до сих пор smile.gif

Спустя 20 минут, 49 секунд (26.04.2010 - 16:38) Crash2007 написал(а):
аа..ну спасибо!!всегда моя невнимательность меня подводит..=))

Спустя 2 минуты, 53 секунды (26.04.2010 - 16:41) sergeiss написал(а):
Ну, невнимательность у многих бывает smile.gif А чего ты хотел получить, так пока и не понятно.

Спустя 2 минуты, 47 секунд (26.04.2010 - 16:44) DedMorozzz написал(а):
Цитата (ТС)
(это я выполняю задачу на превращение в двоичное число)

Иль я не то прочёл =)

Спустя 1 час, 27 минут, 50 секунд (26.04.2010 - 18:12) sergeiss написал(а):
"Превращение" чего, какой переменной? $a или $b?

Допустим, это переменная $a...

Ну так и преобразуй smile.gif

$bin=str_split( sprintf( '%b', $a) );


В итоге массив $bin содержит двоичное представление числа. Сколько значащих чисел, столько и элементов в массиве. Либо 0, либо 1.

Спустя 19 часов, 51 минута, 35 секунд (27.04.2010 - 14:04) Crash2007 написал(а):
в задаче было сказано что функции использовать не разрешено...
но всёравно функций таких я и не знал..... huh.gif

Спустя 14 минут, 21 секунда (27.04.2010 - 14:18) sergeiss написал(а):
Цитата (Crash2007 @ 27.04.2010 - 15:04)
в задаче было сказано что функции использовать не разрешено...

В какой задаче? Ты этого не озвучивал. Не говорил о том, что функции нельзя использовать.

Спустя 18 минут, 10 секунд (27.04.2010 - 14:36) Crash2007 написал(а):
в нете искал "задачи по php")))

Спустя 1 час, 14 минут, 29 секунд (27.04.2010 - 15:51) sergeiss написал(а):
Цитата (Crash2007 @ 27.04.2010 - 15:36)
в нете искал "задачи по php")))

Хм... Интересный подход... А что тогда остаётся от ПХП, если функции нельзя использовать?
А если остаётся только "голый" алгоритм, то при чем тут ПХП???

Спустя 7 минут, 35 секунд (27.04.2010 - 15:58) Crash2007 написал(а):
ну..такая вот задача была))..что подалаешь.. cool.gif


_____________
Рисую на PHP :)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.