PHP:
  1. <?php
  2. // Novacreations
  3. // César Sánchez webmaster@novacreations.net
  4. // http://www.novacreations.net
  5. /*
  6. Calculador de cambio sencillo
  7. */
  8. ?>
  9.  
  10. <html>
  11. <body>
  12.  
  13. <form name="form1" method="post" action="<?PHP echo $_SERVER['PHP_SELF'] ?>">
  14.   Billete: <input type="textfield" name="billete">
  15.   Monto: <input type="textfield" name="monto">
  16.   <input type="submit" name="Submit" value="Submit">
  17. </form>
  18.  
  19. <?php
  20.  
  21.     $cambio = $_POST['billete']-$_POST['monto'];
  22.     echo "Pagaste $".$_POST['monto']." con un billete de $".$_POST['billete'].". El cambio es de $".$cambio;
  23.  
  24.     if($_POST && isset($_POST['monto']))
  25.     {
  26.             // Establecemos los billetes o cambio disponible
  27.             $billetes = Array
  28.             (   
  29.             100,50,20,10,5,2,1
  30.             );
  31.            
  32.             echo "<p>Los billetes que tenemos son:";
  33.             foreach($billetes  as $dato)echo "[$".$dato."]"; // imprimimos los billetes que tenemos
  34.             echo "</p>";           
  35.             //variable $restante es lo que nos falta por entregar
  36.             $restante = $cambio;
  37.            
  38.             foreach($billetes  as $dato) // recorremos cada uno de los billetes
  39.             {
  40.                 if($restante==0) // si es 0 el dinero restante detenemos
  41.                 {
  42.                     break;
  43.                 }
  44.                 else if($restante>=$dato)// si es menor el billete al dinero que nos falta     
  45.                 {            
  46.                     echo "<p>";
  47.                                            
  48.                     $i = 0;
  49.                     //restamos uno de los billetes al dinero que nos resta por entregar, iteramos
  50.                     // hasta que los billetes son demasados grandes
  51.                    
  52.                     for($i = 0; $restante>=$dato;$i++ )
  53.                     {
  54.                         $restante = $restante-$dato;
  55.                        
  56.                     }
  57.                     //imprimo los datos     
  58.                     echo " Entrega ".$i." billete(s) de $".$dato;
  59.                     echo ", te faltan $".$restante;     
  60.                     echo "</p>";   
  61.                 }
  62.                
  63.             }
  64.    
  65.     }
  66.  
  67.  
  68. ?>
  69. </body>
  70. </html>

Popularidad: 7%