Como faço para saber se um numero é par ou impar?

237 views
Skip to first unread message

as...@oi.com.br

unread,
Apr 19, 2006, 4:46:24 PM4/19/06
to LISTA PHP
Estou migrando para PHP e apanhando em coisinhas simples...


Dado um numero $x
Como saber se é par ou impar?

Em ASP eu faria assim:

if x/2 = int(x/2) --> par

Não encontro em PHP uma função que extraia a parte inteira de um
número.

int (em asp) funciona assim:

x = 10
int(x) = 10

x = 10.4542334
int(x) = 10

Alguém me ajuda?

Vinicius Braz Pinto

unread,
Apr 19, 2006, 5:05:11 PM4/19/06
to list...@googlegroups.com
if ($n%2)
{
echo 'é ímpar';
}
else
{
echo 'é par';
}

% = resto da divisão

Antônio

unread,
Apr 19, 2006, 5:24:37 PM4/19/06
to list...@googlegroups.com
Valeu, Vinícius...  é quase isso.
Segundo a fantástica lista de observações da documentação de php.net,  o
operador % só funciona os números envolvidos forem inteiros.

Dessa forma, no seu exemplo, se $n = 12,123, ele traz lixo.

A solução encontrada foi fazer

if (floor($n)%2 == 0 {par}

Mas valeu.

Abração.

has notified the sender that this message has been received.

Giovani Marin

unread,
Apr 19, 2006, 6:07:29 PM4/19/06
to list...@googlegroups.com
velho...achoq ue uma solução simples e eficaz seria tu multiplicar por mil e depois dividir novamente...tipo
 
12,123 * 1000 = 12123...ae a função funciona né?
no final da função...tu divide por 1000 denovo e ele volta a ser o que era...
tendeu?
 
espero ter ajudado!

 
Em 19/04/06, Antônio <as...@oi.com.br> escreveu:



--
Trabalho e $aúde a Todos
Giovani Marin

Vinicius Braz Pinto

unread,
Apr 19, 2006, 6:46:07 PM4/19/06
to list...@googlegroups.com
blz, mas lembrando que para ser chamado de "par" ou "ímpar", o número precisa ser inteiro

Giovani Marin

unread,
Apr 19, 2006, 6:47:58 PM4/19/06
to list...@googlegroups.com
poise...12,123 é par ou impar?

2006/4/19, Vinicius Braz Pinto <vinic...@gmail.com>:

Antônio

unread,
Apr 19, 2006, 6:58:52 PM4/19/06
to list...@googlegroups.com
Claro, Vinícius. Mas eu não tenho como escolher o que vai estar na variável a ser verificada. Então, convencionei se a parte INTEIRA do número for par, ele será considerado par (para meus propósitos).
Só que se o programa fosse verificar 1,23, não retornava nada, porque o "%"  não funciona com numeros desse tipo. Por isso foi preciso o "floor".

Carlos Junior

unread,
Apr 19, 2006, 7:00:39 PM4/19/06
to list...@googlegroups.com
claro que é impar !

12,12  / 2 =  6,06
12,13 / 2 =  6,065  ou  6.06  e sobra  0,005 !

Nao tem nem que ter duvida !




2006/4/19, Giovani Marin < giovan...@gmail.com>:



--
****************************************************
WWW.FREECODE.COM.BR
WWW.FREECODE.COM.BR/FORUM
WWW.FREECODE.COM.BR/DRARTIGOS

Wilson C. Savegnago

unread,
Apr 19, 2006, 7:42:26 PM4/19/06
to list...@googlegroups.com
Olá Pessoal

Tenho umas imagens cujo caminho está gravado no banco de dados e a imagem num diretório do meu site.
Meu cliente pediu uma alteração no site e eu tenho q fazer isso em flash.
 
Será que é possível, sendo que o banco de dados só mostra o caminho da img?
Alguem tem algum tutorial ou código que me ajude nisso?
 
abç

Wilson
Reply all
Reply to author
Forward
0 new messages