Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

задача на пхп

67K
12 марта 2011 года
bashta94
2 / / 12.03.2011
всем привет. Так как я только
начал учить php то нуждаюсь
в вашей помощи Нужно
написать на пхп. Сколько
квадратов со стороной с
поместиться в прямоугольнике
со сторонами а и в
соответственно . Множить
\делить и использовать
ветвление нельзя!
244
12 марта 2011 года
UAS
2.0K / / 19.07.2006
Интересно так-то. Ничего в голову очевиднее, чем (int)($a*$b/($c*$c)) пока что не приходит. Но по условию нельзя.
Остается только преобразовать условие выше в цикл, более никак, но тогда будет ветвление неявно использоваться.
535
13 марта 2011 года
Нездешний
537 / / 17.01.2008
[QUOTE=UAS](int)($a*$b/($c*$c))[/QUOTE]Вообще говоря, неверно. Квадраты, насколько я понимаю, должны умещаться в прямоугольник целиком. Эта формула даст верный результат только в случае, если стороны прямоугольника кратны стороне квадрата.
Если хотя бы одна из сторон прямоугольника меньше стороны квадрата, при любой длине другой его стороны (и, соответственно, сколь угодно большой площади) в прямоугольнике не уместится ни одного квадрата.

Т.е. в общем случае должно быть (int)$a/$c * (int)$b/$c

PS Не совсем понятно, что значит "не использовать ветвление". Это не использовать конструкции if, if-else, switch? Можно ли при этом использовать циклы?
274
13 марта 2011 года
Lone Wolf
1.3K / / 26.11.2006
Что-то типа такого...
Непроверял. мож и ошибся
 
Код:
$countV = 0;
$count=0;
for($i=$a;$i>=$c;$i-=$c,$countV++);

for($i=$b;$i>=$c;$i-=$c,$count+=$countV);
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог