Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/02/2014, 12:32
Avatar de Briss
Briss
 
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 10 meses
Puntos: 12
Funcion strlen

Cita:
Iniciado por Briss Ver Mensaje
Hola a todos estoy tratando de hacer esta funcion tengo un input donde ingreso numeros (pueden ser 1 a 15) estos numeros ingresados debo multiplicarlos de derecha a izquierda por 3 y 1 empezando siempre con 3...
si el resultado de esta multiplicación da como resultado 2 dígitos debo sumarlos... ejemplo si tenia 3 x 5 =15 tendría q hacer 1+5=6
... luego de esto, tenia que sumar todos los resultados para obtener una suma final...
a esta suma final debo restarle la decena superior mas próxima .... y mi resultado sera el numero buscado...
ejemplo si mi resultado final fue 59 tendría q tener 60-59= numero buscado
primero la estaba tratando de resolver con strlen, substr, switch... pero la verdad es que resultaría demasiado larga asi que deci cambiarme a for pero me faltan dos cosas la suma final y la resta de la decena superior proxima
esto es lo que tengo hasta ahora me la suma me gustaria que solo me saliera una vez ... y me falta la resta de la decena superior proxima aun no se como hacerlo
Código PHP:
<?php 
$numeros
=$_POST['numeros'];
$multiplicar =  '13131313131313'//aca tengo una duda no importa cuantos numeros tenga la multiplicacion siempre la hara bien????? 
    
function numerobuscado($cadena$multiplicar){ 
    echo 
"<br>"

  
        for( 
$i strlen($numeros);$i >= 0$i--){  
        
         echo  
$sum $numeros[$i] * $multiplicar[$i]; 
          
         
$n1=strlen($sum);
          if (
$n1==2){ 
               
$nume1substr ("$sum"01); 
               echo 
"-"
                
$nume2 substr ("$sum"11); 
               echo 
"-"
              echo  
$digito $nume1+$nume2
             
              }
      else
              { 
                echo 
"--"
            echo 
$digito=$sum
         
        } 
         
        }     
      
    }
    echo 
numerobuscado($numeros$multiplicar); 
      
?>

Última edición por Briss; 21/02/2014 a las 14:18 Razón: codigo