Foros del Web » Programando para Internet » PHP »

Redondear cada X numero

Estas en el tema de Redondear cada X numero en el foro de PHP en Foros del Web. Hola disculpen como saben estoy haciendo un juego pero al querer que un usuario itercambie con otro no se como haserle ya que cada comerciante ...
  #1 (permalink)  
Antiguo 11/01/2008, 11:46
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Redondear cada X numero

Hola disculpen como saben estoy haciendo un juego pero al querer que un usuario itercambie con otro no se como haserle ya que cada comerciante carga 50 y quiero que me detecte cuantos usara automaticamente, por ejemplo si quiere itercambiar 103 usra 3 150 halguna forma?
  #2 (permalink)  
Antiguo 11/01/2008, 11:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Redondear cada X numero

¿Podrías explicar mas lo que tratas de hacer? También trata por favor de escribir bien, ya que se entiende muy poco tu Post.

Saludos.
  #3 (permalink)  
Antiguo 11/01/2008, 13:19
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 14 años, 6 meses
Puntos: 3
Re: Redondear cada X numero

si, no comprendo muy bien que deseas, recuerda que el exito de la respuesta radica en que tan bien comprendimos el problema..
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #4 (permalink)  
Antiguo 11/01/2008, 17:26
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Re: Redondear cada X numero

SI Claro, perdon pero miren quiero que se un numero de redonde a numero serrado de 50 o 100.
48 = 50
276 = 300
67 = 100

alguna idea?
  #5 (permalink)  
Antiguo 11/01/2008, 18:04
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.591
Antigüedad: 14 años, 4 meses
Puntos: 49
Re: Redondear cada X numero

seria con if's pero serian varios :/ digo

algo como

por ejemplo
Código PHP:
<?php
$numero 
"48";

if ((
$numero >= 1) &&  ($numero <=50))
{
$numero "50";
}
if ((
$numero >= 51) &&  ($numero <=100))
{
$numero "100";
}

//etc... seria lgo por el estilo
?>
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #6 (permalink)  
Antiguo 11/01/2008, 18:04
Avatar de alcaphone  
Fecha de Ingreso: marzo-2006
Mensajes: 29
Antigüedad: 13 años, 10 meses
Puntos: 0
Busqueda Re: Redondear cada X numero

y si creas una función, que le vaya sumando uno al numero hasta que el resultado del modulo del numero entre 50 sea cero.

function redondear(int x){
while(x%50 != 0)
{x++;}
return x;
}

bueno esto es su funcion menos optima, pero puedes probar sumandole uno hasta que sea multiplo de 10 y luego irle sumando de a 10 hasta que sea multiplo de 50

SALUDOS
__________________
Inteligencia = Locura * Sabiduria/ belleza
  #7 (permalink)  
Antiguo 11/01/2008, 18:20
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Re: Redondear cada X numero

si lo pense pero solo me sirve a cierta cantidad y yo lo quiero ilimitado...

miren aver como saber multiplos de 50 que se vayan multiplicando solo nadamas que no se como plantearlo...

ceil($numero); // me da numero redondedo entero

$numero +1;

if($numero == $multiplo) {
funcion
}else{
se repite funcion $numero +1l y luego el if...
}

Y TAMBIEN COMO SACAR MULTIPLOS Y QUE NO SE PASE DE LO QUE SE NECECITA,
ES COMPLICADO PERO NO SE COMO HASERLO AUTOMATICO

pd. creen que se pueda haser en javascript?
  #8 (permalink)  
Antiguo 11/01/2008, 20:03
 
Fecha de Ingreso: diciembre-2007
Mensajes: 75
Antigüedad: 12 años, 1 mes
Puntos: 0
Re: Redondear cada X numero

segun lo que dices, el codigo seria algo asi
Código PHP:
<?
function multiplo($numero$multiplo)
{
$a=$numero;
$b=$multiplo;
for(
$c=1$c<=($a/$b)+1$c++)
    {
    
$d=$c*$b;
    if(
$d==$a)
    return 
true;
    }
}
//$z es el numero a comprobar
$z=142;
for (
$a=$z$a<=$z+50$a++)
{
    if(
multiplo($a50))
    echo 
$a;
}
?>
Lo hize asi por que posiblemente necesites la funcion multiplo... pero si quieres solo quieres una funcion de "redondear" aqui esta
Código PHP:
<?
$numero
=85;
function 
redondear($z)
{
$b=50;
for (
$a=$z$a<=$z+$b$a++)
{
    for(
$c=1$c<=($z/$b)+1$c++)
    {
    
$d=$c*$b;
    if(
$d==$a)
    return 
$a;
    }
}
}
echo 
redondear($numero);
?>

Última edición por onZero; 11/01/2008 a las 20:23
  #9 (permalink)  
Antiguo 11/01/2008, 20:39
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Re: Redondear cada X numero

MUCHISISMAS GRACIAS ME FUNCIONO A LA PERFECCION, SISSERAMENTE NO LE ENTENDI AL CODIGO PERO LO ESTUDARE xD... GRACIAS DE NUEVO!!!!
  #10 (permalink)  
Antiguo 12/01/2008, 03:32
 
Fecha de Ingreso: septiembre-2004
Ubicación: Chihuahua Mex
Mensajes: 404
Antigüedad: 15 años, 4 meses
Puntos: 2
Re: Redondear cada X numero

No te serviria utilizar la funcion round()
Por ejemplo este codigo
Código PHP:
<?php
echo(round(0.60) . "<br />");
echo(
round(0.50) . "<br />");
echo(
round(0.49) . "<br />");
echo(
round(-4.40) . "<br />");
echo(
round(-4.60))
?>
Te devolveria asi
1
1
0
-4
-5
Saludos
  #11 (permalink)  
Antiguo 12/01/2008, 10:00
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Re: Redondear cada X numero

No men no me servirira ya que lo nececito redodear a cada 50 100 150 etc...
  #12 (permalink)  
Antiguo 12/01/2008, 11:22
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 14 años, 6 meses
Puntos: 3
Re: Redondear cada X numero

jajajaja, lo que EDIG QUIZO DECIR ES QUE LO ACOPLES A LO QUE NECESITES,
AHORA BIEN SI LEES EL MANUAL DE PHP HAY FUNCIONES QUE TE REDONDEAN TANTO AL NUMERO MAS ALTO O AL NUMERO MAS BAJO CERCANO, INCLUSO LE PUEDES PASAR PARAMETROS PARA Q' SE AJUSTE.
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #13 (permalink)  
Antiguo 12/01/2008, 18:06
 
Fecha de Ingreso: junio-2007
Ubicación: por ahi
Mensajes: 262
Antigüedad: 12 años, 6 meses
Puntos: 4
Re: Redondear cada X numero

Lo que te dijo PANAFLAKIN es cierto y funciona siempre, es simple matematica nada de programacion.

la formula sin IF o vainas de raras que no se necesitan es:

EJ:

$numeroRedondeado =round ($numeroSinRedondear/50)*50

es decir que el generico para redondear a cualquier numero es

$multiploARedeondear =50

$numeroRedondeado =round ($numeroSinRedondear/$multiploARedeondear )*$multiploARedeondear
  #14 (permalink)  
Antiguo 13/01/2008, 01:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 75
Antigüedad: 12 años, 1 mes
Puntos: 0
Re: Redondear cada X numero

bueno no sabia esa forma de usar el round() pero bueno creo que la funcion que mejor se adapta a lo que el necesita es la ceil() [que la conosco recien gracias al amigo okram] conciste en redondear al numero entero mayor, y creo q es lo que el queria. entonces seria...
Código PHP:
<?
$a
=67;
echo 
ceil($a/50)*50;
?>
como nos simplifican la vida :P
  #15 (permalink)  
Antiguo 13/01/2008, 11:41
 
Fecha de Ingreso: diciembre-2007
Mensajes: 927
Antigüedad: 12 años, 1 mes
Puntos: 12
Re: Redondear cada X numero

EL CODIGO DE ONZERO FUNCIONA PERFECTAMENTE YA LO HABIA DICHO

<?
function multiplo($numero, $multiplo)
{
$a=$numero;
$b=$multiplo;
for($c=1; $c<=($a/$b)+1; $c++)
{
$d=$c*$b;
if($d==$a)
return true;
}
}
//$z es el numero a comprobar
$z=142;
for ($a=$z; $a<=$z+50; $a++)
{
if(multiplo($a, 50))
echo $a;
}
?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:56.