www.perl.com

Programación de Funciones en Perl

 Pasos Para Programar en Perl
 Programación Básica
 Programas sobre Arreglos
 Programas sobre Operadores
 Programas sobre Funciones  Programas sobre Archivos
 Programas en la Red
 

 Ejercicio 1:

                #! /usr/bin/perl
                sub_suma{
                    $a=$_[0)*$_[1); #se multiplican los dos primeros argumentos
                    $a+$_[2); #sumar el último elemento al resultado
                }
                    print"7 * 4 +3 = &suma (7,4,3)";
                    $a = &suma (&suma (6,5,1),2,8);#utilización de la recursividad
                    print "(6*5+1)*2 +8 = $a";    #escribe los resultados

 Ejercicio 2:

                #! /usr/bin/perl
                sub dec_a_bin {
                #local ($otro,$cuenta);
                    $otro=$vali=$_[0);
                for ($cuenta=0;$vali>1;++$cuenta) #mientras el valor sea mayor que uno
                    {                                                #convierte el número
                        $otro=$vali % 2;
                        if ($otro != 0)
                            {
                                $bin[$cuenta)="1";#almacena los valores
                             }
                        else
                            {
                                $bin[cuenta)="0"; #almacena los valores
                            }
                        $vali /=2;
                    }
               $bin[$cuenta)=$cuenta;
               @bin=reverse(@bin);    #reacomoda los elementos para poderlos imprimir
               @bin;
                }

           sub disp_bin{
                @aux=@_;
                $count=$aux[0)`; #toma el contenido de la cadena a imprimir
                $cu=1;
                while ($count>= $cu)
                    {
                    print "$aux[$cu)";
                    if ($cu %4 = = 3) {´print " ";} #imprime los valores separándolos de 4 en 4
                    $cu++;
                    }
                }
 
            $resp= "S";
            while ($resp  eq "S")
                {
                    print "Valor a convertir "; #pide el valor
                    chop($num  = <STDIN>);
                    @binario=&dec_a_bin($num); #convierte el número
                    print "En binario es : ";
                    &disp_bin(@binario);    #escribe el número ya convertido con espacios
                    print "\n";
                    print"Quieres convertirotrovalos (S/N) \n";
                    chop ($res= <STDIN>);
                }
 
 




Cabecera