jueves, 21 de noviembre de 2013

DEBER 18

FRANCISCO MUNOZ
CATEDRATICO Ing. Juan Espinoza

$COOKIES
 
CREAR COOKIE
 
Sesion_Cookies
<html>
<head>
<title>Cookies</title>
<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8">
</head>
<body
<?php if (isset($_COOKIE['color'])) echo " bgcolor=\"$_COOKIE[color]\""
?>

<form action="Establecer_Cookie.php" method="post">
Seleccione de que color desea que sea la página de ahora en más:<br>
<input type="radio" value="rojo" name="radio">Rojo<br>
<input type="radio" value="verde" name="radio">Verde<br>
<input type="radio" value="azul" name="radio">Azul<br>
<input type="submit" value="Crear cookie">
</form>
</body>
</html>

Establecer_Cookie
<?php
if ($_REQUEST['radio']=="rojo")
setcookie("color","#ff0000",time()+60*60*24*365,"/");
elseif ($_REQUEST['radio']=="verde")
setcookie("color","#00ff00",time()+60*60*24*365,"/");
elseif ($_REQUEST['radio']=="azul")
setcookie("color","#0000ff",time()+60*60*24*365,"/");
?>
<html>
<head>
<title>Cookies</title>
<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8">
</head>
<body>
Se creó la cookie.
<br>
<a href=" Sesion_Cookies.php">Ir a la otra página</a>
</body>
</html>


BORRAR COOKIE

Sesion_Cookie2
<html>
<head>
<title>BorrarCookie</title>
</head>
<body>
<form action="Borrar_Cookie2.php" method="post">
Ingrese su mail:
<input type="text" name="mailusuario"
value="<?php if (isset($_COOKIE['mail'])) echo $_COOKIE['mail'];?>">
<br>
<input type="radio" name="opcion" value="recordar">
Recordar en esta computadora el mail ingresado.
<br>
<input type="radio" name="opcion" value="norecordar">
No recordar.
<br>
<input type="submit" value="confirmar">
</form>
</body>
</html>


Borrar_Cookie2
<?php
if ($_REQUEST['opcion']=="recordar")
setcookie("mail",$_REQUEST['mailusuario'],time()+(60*60*24*365),"/");
elseif ($_REQUEST['opcion']=="norecordar")
setcookie("mail","",time()-1000,"/");
?>
<html>
<head>
<title>BorrarCookie</title>
<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8">
</head>
<body>
<?php
if ($_REQUEST['opcion']=="recordar")
echo "cookie creada";
elseif ($_REQUEST['opcion']=="norecordar")
echo "cookie eliminada";
?>
<br>
<a href="Sesion_Cookie2.php">Ir a la otra página</a>
</body>
</html>

INICIAR SESION DE USUARIO

Usuario_Sesion
<html>
<head>
<title>Variables de Sesion</title>
</head>
<body>
<form action="Variables_Sesion.php" method="post">
Ingrese nombre de usuario:
<input type="text" name="campousuario"><br>
Ingrese clave:
<input type="password" name="campoclave"><br>
<input type="submit" value="confirmar">
</form>
</body>
</html>


Variables_Sesion
<?php
session_start();
$_SESSION['usuario']=$_REQUEST['campousuario'];
$_SESSION['clave']=$_REQUEST['campoclave'];
?>
<html>
<head>
<title>Variables de Sesion </title>
<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8">
</head>
<body>
Se almacenaron dos variables de sesión.<br><br>
<a href="Recuperar_Variables.php">Ir a la tercer página donde se recuperarán
las variables de sesión</a>
</body>
</html>


Recuperar_Variables
<?php
session_start();
?>
<html>
<head>
<title>Variables de sesion</title>
<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8">
</head>
<body>
<?php
echo "Nombre de usuario recuperado de la variable de sesión:".$_SESSION['usuario'];
echo "<br><br>";
echo "La clave recuperada de la variable de sesión:".$_SESSION['clave'];
?>
</body>
</html>

martes, 12 de noviembre de 2013

DEBER 17

FRANCISCO MUNOZ
CATEDRATICO Ing.Juan Espinoza

CONVERTIR NUMERO A LETRAS Y ROMANOS

CODIFICACION

<html>
<head>
<title>LETRAS Y ROMANOS</title>
<style type="text/css">
[required]
{
border-color:black;
box-shadows=0px 0px 10px green;
}
</style>
</head>
<body bgcolor="black" text="orange">
  <font face=Arial> <h1> <marquee> LETRAS Y ROMANOS</marquee> </h1>
</font>
<caption align="top"><B> NUMERO </B></caption>  
<form action ="numerosALetras.php"method="POST">
<p><H1>Escribe un número:
<input type="text" size="5" maxlength="4" name= "num">

</p>
<tr>
<td><input type="submit" value="GENERAR"></td>
</tr>
</form>

<?php
$num=$_POST['num'];


class EnLetras
{
  var $Void = "";
  var $SP = " ";
  var $Dot = ".";
  var $Zero = "0";
  var $Neg = "Menos";
  
function ValorEnLetras($x, $Moneda ) 
{
    $s="";
    $Ent="";
    $Frc="";
    $Signo="";
        
    if(floatVal($x) < 0)
     $Signo = $this->Neg . " ";
    else
     $Signo = "";
    
    if(intval(number_format($x,2,'.','') )!=$x) 
      $s = number_format($x,2,'.','');
    else
      $s = number_format($x,0,'.','');
       
    $Pto = strpos($s, $this->Dot);
        
    if ($Pto === false)
    {
      $Ent = $s;
      $Frc = $this->Void;
    }
    else
    {
      $Ent = substr($s, 0, $Pto );
      $Frc =  substr($s, $Pto+1);
    }

    if($Ent == $this->Zero || $Ent == $this->Void)
       $s = "Cero ";
    elseif( strlen($Ent) > 7)
    {
       $s = $this->SubValLetra(intval( substr($Ent, 0,  strlen($Ent) - 6))) . 
             "Millones " . $this->SubValLetra(intval(substr($Ent,-6, 6)));
    }
    else
    {
      $s = $this->SubValLetra(intval($Ent));
    }

    if (substr($s,-9, 9) == "Millones " || substr($s,-7, 7) == "Millón ")
       $s = $s . "de ";

    $s = $s . $Moneda;

    if($Frc != $this->Void)
    {
       $s = $s . "  " . $this->SubValLetra(intval($Frc)) . "";
       //$s = $s . " " . $Frc . "/100";
    }
    return ($Signo . $s . "");
   
}


function SubValLetra($numero) 
{
    $Ptr="";
    $n=0;
    $i=0;
    $x ="";
    $Rtn ="";
    $Tem ="";

    $x = trim("$numero");
    $n = strlen($x);

    $Tem = $this->Void;
    $i = $n;
    
    while( $i > 0)
    {
       $Tem = $this->Parte(intval(substr($x, $n - $i, 1). 
                           str_repeat($this->Zero, $i - 1 )));
       If( $Tem != "Cero" )
          $Rtn .= $Tem . $this->SP;
       $i = $i - 1;
    }
    $Rtn=str_replace(" Mil Mil", " Mil", $Rtn );
    while(1)
    {
       $Ptr = strpos($Rtn, "Mil ");       
       If(!($Ptr===false))
       {
          If(! (strpos($Rtn, "Mil ",$Ptr + 1) === false ))
            $this->ReplaceStringFrom($Rtn, "Mil ", "", $Ptr);
          Else
           break;
       }
       else break;
    }
    $Ptr = -1;
    do{
       $Ptr = strpos($Rtn, "Cien ", $Ptr+1);
       if(!($Ptr===false))
       {
          $Tem = substr($Rtn, $Ptr + 5 ,1);
          if( $Tem == "M" || $Tem == $this->Void)
             ;
          else          
             $this->ReplaceStringFrom($Rtn, "Cien", "Ciento", $Ptr);
       }
    }while(!($Ptr === false));

    $Rtn=str_replace("Diez Uno", "Once", $Rtn );
    $Rtn=str_replace("Diez Dos", "Doce", $Rtn );
    $Rtn=str_replace("Diez Tres", "Trece", $Rtn );
    $Rtn=str_replace("Diez Cuatro", "Catorce", $Rtn );
    $Rtn=str_replace("Diez Cinco", "Quince", $Rtn );
    $Rtn=str_replace("Diez Seis", "Dieciseis", $Rtn );
    $Rtn=str_replace("Diez Siete", "Diecisiete", $Rtn );
    $Rtn=str_replace("Diez Ocho", "Dieciocho", $Rtn );
    $Rtn=str_replace("Diez Nueve", "Diecinueve", $Rtn );
    $Rtn=str_replace("Veinte Un", "Veintiun", $Rtn );
    $Rtn=str_replace("Veinte Dos", "Veintidos", $Rtn );
    $Rtn=str_replace("Veinte Tres", "Veintitres", $Rtn );
    $Rtn=str_replace("Veinte Cuatro", "Veinticuatro", $Rtn );
    $Rtn=str_replace("Veinte Cinco", "Veinticinco", $Rtn );
    $Rtn=str_replace("Veinte Seis", "Veintiseís", $Rtn );
    $Rtn=str_replace("Veinte Siete", "Veintisiete", $Rtn );
    $Rtn=str_replace("Veinte Ocho", "Veintiocho", $Rtn );
    $Rtn=str_replace("Veinte Nueve", "Veintinueve", $Rtn );

    If(substr($Rtn,0,1) == "M") $Rtn = "" . $Rtn;
   
    for($i=65; $i<=88; $i++)
    {
      If($i != 77)
         $Rtn=str_replace("a " . Chr($i), "* y " . Chr($i), $Rtn);
    }
    $Rtn=str_replace("*", "a" , $Rtn);
    return($Rtn);
}


function ReplaceStringFrom(&$x, $OldWrd, $NewWrd, $Ptr)
{
  $x = substr($x, 0, $Ptr)  . $NewWrd . substr($x, strlen($OldWrd) + $Ptr);
}
function Parte($x)
{
    $Rtn='';
    $t='';
    $i='';
    Do
    {
      switch($x)
      {
         Case 0:  $t = "Cero";break;
         Case 1:  $t = "Uno";break;
         Case 2:  $t = "Dos";break;
         Case 3:  $t = "Tres";break;
         Case 4:  $t = "Cuatro";break;
         Case 5:  $t = "Cinco";break;
         Case 6:  $t = "Seis";break;
         Case 7:  $t = "Siete";break;
         Case 8:  $t = "Ocho";break;
         Case 9:  $t = "Nueve";break;
         Case 10: $t = "Diez";break;
         Case 20: $t = "Veinte";break;
         Case 30: $t = "Treinta";break;
         Case 40: $t = "Cuarenta";break;
         Case 50: $t = "Cincuenta";break;
         Case 60: $t = "Sesenta";break;
         Case 70: $t = "Setenta";break;
         Case 80: $t = "Ochenta";break;
         Case 90: $t = "Noventa";break;
         Case 100: $t = "Cien";break;
         Case 200: $t = "Doscientos";break;
         Case 300: $t = "Trescientos";break;
         Case 400: $t = "Cuatrocientos";break;
         Case 500: $t = "Quinientos";break;
         Case 600: $t = "Seiscientos";break;
         Case 700: $t = "Setecientos";break;
         Case 800: $t = "Ochocientos";break;
         Case 900: $t = "Novecientos";break;
         Case 1000: $t = "Mil";break;
         Case 1000000: $t = "Millón";break;
      }
      If($t == $this->Void)
      {
        $i = $i + 1;
        $x = $x / 1000;
        If($x== 0) $i = 0;
      }
      else
         break;    
    }while($i != 0);
    $Rtn = $t;
    Switch($i)
    {
       Case 0: $t = $this->Void;break;
       Case 1: $t = " Mil";break;
       Case 2: $t = " Millones";break;
       Case 3: $t = " Billones";break;
    }
    return($Rtn . $t);
}
}

function to_romanos($num) {
if ($num <0 || $num >9999) {return -1;}
$r_ones = array(1=>"I", 2=>"II", 3=>"III", 4=>"IV", 5=>"V", 6=>"VI", 7=>"VII", 8=>"VIII", 
9=>"IX");
$r_tens = array(1=>"X", 2=>"XX", 3=>"XXX", 4=>"XL", 5=>"L", 6=>"LX", 7=>"LXX", 
8=>"LXXX", 9=>"XC");
$r_hund = array(1=>"C", 2=>"CC", 3=>"CCC", 4=>"CD", 5=>"D", 6=>"DC", 7=>"DCC", 
8=>"DCCC", 9=>"CM");
$r_thou = array(1=>"M", 2=>"MM", 3=>"MMM", 4=>"MMMM", 5=>"MMMMM", 6=>"MMMMMM", 
7=>"MMMMMMM", 8=>"MMMMMMMM", 9=>"MMMMMMMMM");
$ones = $num % 10;
$tens = ($num - $ones) % 100;
$hundreds = ($num - $tens - $ones) % 1000;
$thou = ($num - $hundreds - $tens - $ones) % 10000;
$tens = $tens / 10;
$hundreds = $hundreds / 100;
$thou = $thou / 1000;
if ($thou) {$num .= $r_thou[$thou];} 
if ($hundreds) {$num .= $r_hund[$hundreds];} 
if ($tens) {$num .= $r_tens[$tens];} 
if ($ones) {$num .= $r_ones[$ones];} 
return $num;
}

 $V=new EnLetras();
 echo "<h2>".'En letras: '. $V->ValorEnLetras($num,"") ."</h2>";
 
if(is_numeric($_POST['num'])){
 echo"<h2>". 'En romanos '. to_romanos($_POST['num'])."</h2>";
}  
?>
</body>
</html>

jueves, 7 de noviembre de 2013

DEBER 16

FRANCISCO MUNOZ
CATEDRATICO Ing.Juan Espinoza

FUNCIONES DE REFERNCIA

INCLUDE
La sentencia include incluye y evalúa el archivo especificado.
La siguiente documentación también se aplica a require.
Los archivos son incluidos con base en la ruta de acceso dada o, si ninguna es dada, el include_path especificado. Si el archivo no se encuentra en elinclude_pathinclude finalmente verificará en el propio directorio del script que hace el llamado y en el directorio de trabajo actual, antes de fallar. El constructorinclude emitirá una advertencia si no puede encontrar un archivo, éste es un comportamiento diferente al de require, el cual emitirá un error fatal..
EJEMPLO
vars.php
<?php

$color 
'verde';$fruta 'manzana';
?>
test.php
<?php
echo "Una $fruta $color"// Una
include 'vars.php';

echo 
"Una $fruta $color"// Una manzana verde
?>


INCLUDE_ONCE
La sentencia include_once incluye y evalúa el fichero especificado durante la ejecución del script. Es un comportamiento similar al de la sentencia include, siendo la única diferencia que si el código del fichero ya ha sido incluido, no se volverá a incluir. Como su nombre lo indica, será incluido sólo una vez.
include_once puede ser usado en casos donde el mismo fichero podría ser incluido y evaluado más de una vez durante una ejecución particular de un script, así que en este caso, puede ayudar a evitar problemas como la redefinición de funciones, reasignación de valores de variables, etc.
EJEMPLO
<?phpinclude_once "a.php"// esto incluirá a.phpinclude_once "A.php"// esto incluirá a.php otra vez! (sólo PHP 4)?>
REQUIRE
require es idéntico a include excepto que en caso de fallo producirá un error fatal de nivel E_COMPILE_ERROR. En otras palabras, éste detiene el script mientras que include sólo emitirá una advertencia (E_WARNING) lo cual permite continuar el script.
REQUIRE_ONCE
La sentencia require_once es idéntica a require excepto que PHP verificará si el archivo ya ha sido incluido y si es así, no se incluye (require) de nuevo.



BIBLIOGRAFIA

DEBER 15

FRANCISCO MUNOZ
CATEDRATICO Ing.Juan Espinoza

EJEMPLO DE PARAMETROS CON REFERENCIA
ORIGEN PHP
<html>
<head>
<title>Origen</title>
<body bgcolor="black" text="orange">

<?php
include("Cabecera.php");
include_once("Pie.php");
require("Contenido.php");
?>
</body>

</html>

CABECERA PHP
<html>
<head>
<title> <center>Cabecera </center></title>
</head>
<body bgcolor text="blue">
<table border=3>
<td rowspan=4> 
<img src="FOTO1.jpg" </td> 
<td aling="center">
<img src="FOTO2.jpg"</td>
</tr> 
<td aling="center"> CABECERA </td>
</tr>
</td>
</table>
</body>

</html>

CONTENIDO PHP
<html>
<head> 
<title> Contenido </title>
<style type="text/css">
  img { width:auto;height:300px; }
</style>
</head>
<body bgcolor text="eclipce">
</body>
<h3> <center><b> Que es un Objeto?  </b></center> </h3>
<p>Un objeto es una entidad independiente con sus propios datos y programación. Las ventanas, menúes, carpetas de archivos pueden ser identificados como objetos; el motor de un auto también es considerado un objeto, en este caso, sus datos (atributos) describen sus características físicas y su programación (métodos) describen el funcionamiento interno y su interrelación con otras partes del automóvil (también objetos).
<br>
El concepto renovador de la tecnología Orientación a Objetos es la suma de funciones a elementos de datos, a esta unión se le llama encapsulamiento. Por ejemplo, un objeto página contiene las dimensiones físicas de la página (ancho, alto), el color, el estilo del borde, etc, llamados atributos. Encapsulados con estos datos se encuentran los métodos para modificar el tamaño de la página, cambiar el color, mostrar texto, etc. La responsabilidad de un objeto pagina consiste en realizar las acciones apropiadas y mantener actualizados sus datos internos. Cuando otra parte del programa (otros objetos) necesitan que la pagina realice alguna de estas tareas (por ejemplo, cambiar de color) le envía un mensaje. A estos objetos que envían mensajes no les interesa la manera en que el objeto página lleva a cabo sus tareas ni las estructuras de datos que maneja, por ello, están ocultos. Entonces, un objeto contiene información pública, lo que necesitan los otros objetos para interactuar con él e información privada, interna, lo que necesita el objeto para operar y que es irrelevante para los otros objetos de la aplicación. </p>
<h3> <center><b> Caracteristicas de un Objeto  </b></center> </h3>
<p> Un objeto es un tipo de datos compuesto que puede contener cualquier número de variables y funciones. 
<br>
Para inicializar un objeto, puede utilizar la nueva declaración para inicializar el objeto a una variable.   </p>
<h3> <center><b> Que es un Atributo? </b></center> </h3>
<p> Los atributos son las características, cualidades, propiedades distintivas de cada clase. Contienen información sobre el objeto. Determinan la apariencia, estado y demás particularidades de la clase. Varios objetos de una misma clase tendrán los mismos atributos pero con valores diferentes.
<br>
Cuando creamos un objeto de una clase determinada, los atributos declarados por la clase son localizadas en memoria y pueden ser modificados mediante los métodos.
<br>
Lo más conveniente es que los atributos sean privados para que solo los métodos de la clase puedan modificarlos.  </p>
<h3> <center><b> Que es una Clase? </b></center> </h3>
<p> Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características.
<br>
Una clase es una plantilla (molde), que define atributos (lo que conocemos como variables) y métodos (lo que conocemos como funciones).
<br>
La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores y compartirán las mismas funciones.
<br>
Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto propiamente dicho.</p>
<h3> <center><b> Que es un Metodo? </b></center> </h3>
<p> Los métodos son como las funciones en los lenguajes estructurados, pero están definidos dentro de una clase y operan sobre los atributos de dicha clase.
<br>
Los métodos también son llamados las responsabilidades de la clase. Para encontrar las responsabilidades de una clase hay que preguntarse qué puede hacer la clase.
<br>
El objetivo de un método es ejecutar las actividades que tiene encomendada la clase a la cual pertenece.
<br>
Los atributos de un objeto se modifican mediante llamadas a sus métodos.  </p>
</body>

</html>

PIE PHP
<html>
<head> 
<title> Pie </title>
<style type="text/css">
  img { width:auto;height:300px; }
</style>
</head>
<body bgcolor text="eclipce">
</body>
<h3>Realizado por:  </center> </h3><p> Francisco Munoz  </p>
</body>

</html>

DEBER 14

FRANCISCO MUNOZ
CATEDRATICO Ing.Juan Espinoza

PARAMETROS POR REFERENCIA

PHP nos permite pasar los parámetros por referencia, es decir, que los valores que pasemos hacia una función , se verán afectadas por las operaciones internas realizadas en la función. Para pasar un valor por referencia, se utiliza el simbolo “&” por delante de la variable, osea si tenemos $variable, por referencia sería &$variable.
Ejemplo:
      <?php
      function suma( $a )
      {
       $a+=23;
      echo 'Valor dentro la función: ' . $a;
      } 
       //se define variable
       $a = 10 ;

       echo 'Valor de $a original: ' . $a;
       echo '<br/>';
       suma( &$a );
       echo '<br/>';
       echo 'Valor de $a despues de la funcion: ' .$a;
       ?>
El código es el mismo que en el primer ejemplo, con la única diferencia que al llamar a la función lo hacemos con el simbolo “&” antes de la variable, y tenemos como resultado:
Valor de $a original: 10
Valor dentro la función: 33
Valor de $a despues de la funcion: 33
Como se ve, la variable $a es afectada con las operaciones realizadas dentro de la función.
 ¿Y esto para que sirve?
Bueno, como dije al principio cuando se pasa un parámetro por valor a una función, se crea una copia de esta para trabajar dentro de la función, imagine una web de alto tráfico con 1 millón de visitas y 1000 parámetros entrando y saliendo de funciones a cada momento, es mucho trabajo para el servidor, pero si se pasan los parámetros por referencia, el proceso de los datos se alivia un poco.

BIBLIOGRAFIA


miércoles, 6 de noviembre de 2013

DEBER 13

FRANCISCO MUNOZ
CATEDRATICO Ing. Juan Espinoza

FUNCIONES
CODIFICACION PHP

<?php
function dias($dia)
{
switch($dia)
{
case "Monday":
$diaes="Lunes";
break;
case "Tuesday":
$diaes="Martes";
break;
case "Wednesday":
$diaes="Miercoles";
break;
case "Thursday":
$diaes="Jueves";
break;
case "Friday":
$diaes="Viernes";
break;
case "Saturday":
$diaes="Sabado";
break;
case "Sunday":
$diaes="Domingo";
break;
}
return $diaes;
}
function meses($mes)
{
switch($mes)
{case "January":
$mesesp="Enero";
break;
case "Febrary":
$mesesp="Febrero";
break;
case "March":
$mesesp="Marzo";
break;
case "April":
$mesesp="Abril";
break;
case "May":
$mesesp="Mayo";
break;
case "June":
$mesesp="Junio";
break;
case "July":
$mesesp="Julio";
break;
case "Agust":
$mesesp="Agosto";
break;
case "September":
$mesesp="Septiembre";
break;
case "October":
$mesesp="Octubre";
break;
case "November":
$mesesp="Noviembre";
break;
case "December":
$mesesp="Diciembre";
break;
}
return $mesesp;
}
echo "Hoy es"." ".date("l").",".date("j")." ".
"de"." ".date("F")."del"." ".date("Y");
$dia=date("l");
$mes=date("F");
$fun=dias($dia);
$funm=meses($mes);
echo "<br>";
echo $fun;
echo "<br>";
echo $funm;
echo "<br>";
echo "Hoy es"." ".$fun.",".date("j")." ".
"de"." ".$funm." del"." ".date("Y");
?>


DEBER 12

FRANCISCO MUNOZ
CATEDRATICO Ing.Juan Espinoza

SWITCH

CODIFICACION HTML
<html>
<head>
<title>SWITCH</title>
<style type="text/css">
[required]
{
border-color:black;
box-shadows=0px 0px 10px green;
}
</style>
</head>
<body bgcolor="black" text="orange">
  <font face=Arial> <h1> <marquee> SWITCH</marquee> </h1>
</font>
<caption align="top"><B> NUMEROS </B></caption>
<form action ="switch.php"method="POST">
<p>Escribe un número:
<input type="text" size="3" maxlength="3" name= "num">

</p>
<tr>
<td><input type="submit" value="GENERAR NUMEROS"></td>
</tr>
</form>
</body>
</html>


CODIFICACION PHP
<?php
$num = $_POST['num'];
echo "<FORM ACTION='switch.php' method='POST'>";
for($i=1;$i<=$num;$i++)
{ echo "<table border=4>
<tr><td>VALOR$i</td>
<td><input type='interger'  name='VALOR[$i]'></TD></TR>
</table>";
}
echo "<br>";
echo"<input type='submit' value ='suma'  name='op'>";
echo "<br>";
echo"<input type='submit' value ='promedio'  name='op'>";
echo "<br>";
echo"<input type='submit' value ='promedio pares'  name='op'>";
echo "<br>";
echo"<input type='submit' value ='promedio impares'  name='op'>";
"</form>";
?>
<?php
$array = $_POST['VALOR'];
$sum=0;
$res=0;
$mul=1;
$divi=1;
switch($_POST["op"]) {
    case 'suma':

for($i=1;$i<=count($array);$i++)
{$sum=$sum+$array[$i];

}
echo "la suma de los valores es:"." ".$sum;    
break;
    case 'promedio':
for($i=2;$i<=count($array);$i++)
{
 $res=$res-$array[$i];
}
echo "El promedio es:"." ".$res;
        break;
    case 'promedio pares':
               foreach ($array as $valores)
{        
$mul=$mul*$valores;
    }
echo "El promedio de pares es:"." ".$mul;
        break;
    case 'promedio impares':
               foreach ($array as $valores)
{        
$divi=$valores/$divi;
    }
echo "El promedio de impares es:"." ".$divi;
        break;
}
?>

DEBER 11

FRANCISCO MUNOZ
CATEDRATICO Ing. Juan Espinoza


PHP tiene varias funciones que se ocupan de ordenar arrays (matrices) y este documento existe para ayudar a aclararlo todo.
Las principales diferencias son:
  • Algunas ordenan basados en las key de la array, mientras que otras por los valores: $array['key'] = 'valor';
  • Si se mantiene o no la correlación entre las key y los valores después de la clasificación, lo cual puede significar que las key se restablecen numéricamente (0,1,2 ...)
  • El orden de la clasificación: alfabético, de menor a mayor (ascendente), de mayor a menor (descendente), numérico, natural, aleatorio o definido por el usuario
  • Nota: Todas estas funciones de clasificación actúan directamente sobre la variable de array misma, en lugar de devolver un nuevo array ordenado.
  • Si alguna de estas funciones de clasificación evalúa a dos miembros como iguales, entonces el orden no queda definido (la clasificación no es estable).
TIPOS DE ORDENAMIENTOS EN PHP

                             array_multisort
Puede usarse para ordenar varios arrays al mis mo tiempo, o un array multi-dimensional por una o más dimensiones.
bool array_multisort ( array &$arr [, mixed $arg = SORT_ASC [, mixed $arg = SORT_REGULAR [, mixed $... ]]] )

                             asort

Ordena un array y mantiene la asociación de índices de menor a mayor.
bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

                            arsort

Ordena un array en orden inverso y mantiene la asociación de índices de mayor a menor.
bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

                            krsort

Ordena un array por clave en orden inverso DE MAYOR A MENOR.
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

                             ksort

Ordena un array por clave de menor a mayor.
bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

                         natcasesort

Ordenar un array usando un algoritmo de "orden natural" insensible a mayúsculas-minúsculas
bool natcasesort ( array &$array )

                            natsort

natsort — Ordena un array usando un algoritmo de "orden natural" de mayor a menor.
bool natsort ( array &$array )

                            shuffle 

Mezcla un array
bool shuffle ( array &$array )

                              sort

Ordena un array
bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

                             uasort

Ordena un array con una función de comparación definida por el usuario y mantiene la asociación de índices
bool uasort ( array &$array , callable $value_compare_func )

                              usort

Ordena un array según sus valores usando una función de comparación definida por el usuario
bool usort ( array &$array , callable $value_compare_func )

BIBLIOGRAFIA