martes, 26 de marzo de 2013

8 ejercicios PHP de cálculos útiles





En la actualidad se recomienda mucho antes de programar empezar con un breve calentamiento como para entrar en confianza, así como los jugadores entran a la cancha antes de empezar un partido calientan, de la misma manera lo hacemos nosotros.


A continuación les dejo el código y su descripción:


1.- Imprimir las tablas de multiplicar del 1 hasta el 10.

<?php
/*empezamos */
for ($tabla=1; $tabla<=10; $tabla++)
{
echo "<h3>Tabla del $tabla </h3>";
 //generamos la tabla
 for ($i=1;  $i<=10; $i++)
 {
  echo "$tabla x $i = " . ($tabla * $i) . "<br/>";

 }
}
?>

2.- Calcular la tabla de 4 x 4.

<h3>Tabla de 4 x 4 mostrando la potencia de los 4 primeros numeros</h3>
<?php
/*mostrar una tabla de 4 por 4 que muestre las primeras 4 potencias de los números del
uno 1 al 4 (hacer una función que las calcule invocando la función pow). En PHP las funciones hay
que definirlas antes de invocarlas. Los parámetros se indican con su nombre ($cantidad) si son por
valor y antecedidos de & (&$cantidad) si son por referencia*/
//definimos una constante con el valor de nuestra tabla
define(TAM, 4);
//declaramos la funcion con los argumentos
function potencia($v1, $v2){
//pow funcion que eleva a la potencia 
 $rdo=pow($v1, $v2);
//devolvemos los valores
 return $rdo;
}
//creamos la tabla html donde imrpimiremos los resultados
 echo "<table border=1>";
//recorremos el valor de nuestra constante
 for ($n1=1; $n1<=TAM; $n1++)
 {
  echo "<tr>";
   for ($n2=1; $n2<=TAM; $n2++)
     echo "<td>". $potencia($n1,$n2)."</td>";
echo "</tr>";
}
echo "</table>";
 
?>

3.- Imprimir los multiplos de 3.

<?php
//algoritmo que calcula los multiplos de 3 y 5 de los n primeros numeros
    $mtres=0;$mcinco=0;$n=1;
   do {
     //si el numero dividido para 5 es igual a cero
     if ($n%5==0){
        //incrementamos uno a los multiplos de 5 que viene a ser la variable $c
      $mcinco=$mcinco+1;
       } elseif 
        //si el numero divido para tres es cero
          ($n%3==0)
          {
            //incrementamos uno a los multiplos de tres 
             $mtres=$mtres+1; 
              }
              //incrementamos uno al numero que se evalua $n
         $n=$n+1;
        }while($n<=30);
         echo "La cantidad de multiplos de  5 es = $mcinco<br>";
         echo "La cantidad de multiplos de  3 es = $mtres<br>";
?>

4.- Bucle que me dice exactamente que día es hoy.

<BODY>
   <CENTER>
     <H2>Sentencia <I>if</I></H2>
     <?php
        echo "Hoy es <B>";
        $dia = date("D");

switch($dia){
          case "Mon": echo "Lunes";
                      break;
 case "Tue": echo "Martes";
                      break;
          case "Wed": echo "Miércoles";
                      break;
 case "Thu": echo "Jueves";
                      break;
 case "Fri": echo "Viernes";
                      break;
 case "Sat": echo "Sábado";
                      break;
          default:    echo "Domingo";
        }
        echo "</B>"; 
    ?>
   </CENTER>
 </BODY>



5.- Imprimir los numeros del 1 al 100 entre multiplos de 2 y de 3

<BODY>
   <CENTER>
     <H2>Sentencia <I>while</I></H2>
     <?php
       echo "<TABLE BORDER='1'>";
       $fila=1;
       while($fila<=10){
          echo "<TR ALIGN='CENTER'>";
          $col=1;
          while($col<=10){
              echo "<TD>".($fila*$col)."</TR>";
              $col++;
          }
          echo "</TR>";
          $fila++;
       }
       echo "</TABLE>";
     ?>
   </CENTER>
 </BODY>

6.-  Calcular el sueldo de un trabajador.

<?php
//calcular el sueldo de un trabajador con impuestos
    $salarioTrabajador=3500;
    $impuesto=20;//porcentaje
    $sueldoReal=$salarioTrabajador-(($salarioTrabajador/100)*$impuesto);
    echo "Sueldo del trabajador sin impuesto: $salarioTrabajador<br>";
    echo "Con el impuesto:$sueldoReal";
?>

7.- El mismo ejercicio anterior pero con una clase abstracta modificado a nuestras necesidades.

<?php
/*Plantear una clase abstracta Trabajador. Definir como atributo su nombre y sueldo.
 Declarar un método abstracto: calcularSueldo.
 Definir otro método para imprimir el numbre y su sueldo.
Plantear una subclase Empleado. 
Definir el atributo $horasTrabajadas, $valorHora.
Para calcular el sueldo tener en cuenta que se le paga 3.50 la hora.
Plantear una clase Gerente que herede de la clase Trabajador.
 Para calcular el sueldo tener en cuenta que se le abona un 10% de las utilidades de la empresa.*/

//declaramos el nombre de la clase 
abstract class Trabajador{
//variables protegidas
    protected $nombre;
    protected $sueldo;
//funcion constructora
    public function __construct($nom)
    {
     $this->nombre=$nom;   
    }
    public function imprimir()
    {
     echo 'nombre:'.$this->nombre.'<br>';
     echo 'sueldo:'.$this->sueldo.'<br>';
        
    }
    public abstract function calcularSueldo();
    }
    class Empleado extends Trabajador{
        protected $horasTrabajadas;
        protected $valorHora;
        public function __construct($nom,$horas,$valor)
        {
         parent::__construct($nom);
         $this->horasTrabajadas=$horas;
         $this->valorHora=$valor;   
        }
        public function calcularSueldo()
        {
         $this->sueldo=$this->horasTrabajadas*$this->valorHora;
        }
      }
      class Gerente extends Trabajador {
  protected $utilidades;
  public function __construct($nom,$uti)
  {
    parent::__construct($nom);
    $this->utilidades=$uti;
  }
  public function calcularSueldo()
  {
    $this->sueldo=$this->utilidades*0.10;
  }
}
       
       $empleado1=new Empleado('Pablo Rodriguez',150,3.50);
       $empleado1->calcularSueldo();
       echo 'El sueldo del empleado<br>';
       $empleado1->imprimir();
       
       $gerente1=new Gerente('Marcos Herning',1000000);
       $gerente1->calcularSueldo();
       echo 'El sueldo del gerente<br>';
       $gerente1->imprimir();
?>



para entender este ejercicio vamos a hacer un paréntesis con el tema de las clases abstractas en un próximo artículo. 

8.-  Algoritmo que cálcula las ganancias de un restaurante
<?php
/*algoritmo restaurante sol de manta.
 que desea contabilizar sus ingresos netos de los últimos 10 años. Conociendo que en cada año se gano el doble del anterior como se muestra en la gráfica. 
 Año Ingreso 2000 30,000
  2001 60,000
   2002 120,000
    2003 240,000 . . . . 2009 15360.000  
  */
$n=0;$g=2;$c=2000;
do { 
/*pow es una funcion que sirve para elevar al exponente pow(numbase, num exponente) */
$neto=pow($g,$n)*30;
echo"El ingreso neto del ano $c = $neto<br>";
$n=$n+1;
$c=$c+1;
}while ($n<=9);

?> 

De antemano espero sirva de ayuda para muchos compañeros que son fiel seguidores y aportadores de este lenguaje web popular.




5 comentarios:

Muy buebos los ejemplos..... Gracias ......

si yo tambien me sumo !
muy bueno los ejemplos!

Gracias es de mucha ayuda para loa estudiantes que verdaderamente lo necesitamos

Gracias es de mucha ayuda para loa estudiantes que verdaderamente lo necesitamos

Publicar un comentario



 
contador de visitas