
Programación con Operadores
-
Aquí te presentamos algunos programas quete ayudarán a entender
.el funcionamiento y como se utilizan los operadores.
-
Los ejercicios que se encuentran en esta página se encuentran disponibles
aqui
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
-
Muestra el uso de casi todos los operadores númericos como son suma,
resta, multiplicación,división, potencia y módulo,
además se implementa como obtener el factorial de un número.
#! /usr/bin/perl
do {
print "1.- SUMA \n";
print "2.- RESTA \n";
print "3.- MULTIPLICACION \n";
print "4.- DIVISION \n";
print "5.- POTENCIA \n";
print "6.- MODULO \n";
print "7.- FACTORIAL \n";
print "8.- Salir \n";
print "Selecciona la opción deseada:";
$resp=<STDIN>
print "Introduce el primer Número:";
chop($a=<STDIN>);
print"Introduce el segundo Número:";
chop($b=<STDIN>);
if ($resp= = 1){
$res=$a + $b; #suma
}
elsif ($resp= =2){
$res=$a -$b; #resta
}
elsif ($resp= =3){
$res=$a *$b; #multiplicación
}
elsif ($resp= =4){
$res=$a / $b; #división
}
elsif ($resp= =5){
$res=$a** $b; #potenciación
}
elsif ($resp= =6){
$res=$a %$b; #modulo
}
elsif ($resp= =7){
while ($a>1) {
$res=$res* $a --;} #calcula el factorial del primer número
}
else {$band=0; #si decidimos salir ponemos el flag a 1
}
print "El resultado es $res \n";
}while ($band= = 1); #repetimos hasta que no salgamos
Ejercicio
2
-
Solicita una serie de elementos para formar un arreglo y se termina de
introducir cuando se escribe "salir". Luego, ordena todos los elementos
con el operador sort y después invierte el orden de
los mismos con reverse, además saca y mete elementos con
los operadores shift, unshift, pop y push.
#! /usr/bin/perl
$sal = "salir \n";
print " Escribe los elementos de un arreglo, cuando termines escribe \"salir\"
\n";
do {
push (@lista, $elem); #lee los datos y los mete en una lista
$elem = <STDIN>;
} until ($elem eq $sal); #Pide datos hasta que escribamos "salir"
@lista= (sort @lista); #ordena los datos
print "Datos ordenados \n";
print @lista;
@reverselist= reverse (@lista); #invierte el orden de los datos
print "Datos en orden contrario:\n";
print @reverselist;
$elem=pop(@lista); #saca el elemento más a la derecha en la
lista
unshift(@lista,$elem); #mete el elemento por el lado izquierdo
push (@lista,$elem); # mete el mismo elemento por la derecha
print "Ahora la lista es: \n @lista";
$elem = shift(@lista); #saca el elemento más a la izquierda
print "Y ahora es : \n @lista";
chop(@lista);
print " finalmente lalista es : \n @lista";
Ejercicio
3
-
Piensa un númeroy el ordenador lo adivinará por medio de
realizarte preguntas, hasta que el número sea igual y se indiquecon
una "i": Utilizamos el operador last.
#! /usr/bin/perl
print "Piensa un número entre el 1 y 99 \n";
print "Yo trataré de adivinarlo \n";
print "Escribe una \"i \" si lo he adivinado, es decir si es igual \n";
print " \"g \"para indicar que es mayor y \"p\" para indicar que
es menor \n";
while ($incr > 1) {
printf " Tu número es más grande o más pequeño
que %2d ?\n ", $pregunta;
$incr = $incr /2; #busqueda binaria
chop ($ch = <STDIN>);
if ($ch eq "i") { last; } #si lo adivinó saledel bucle
elsif ($ch eq "g") {$pregunta = $pregunta + $incr;}
else {pregunta = $pregunta - $incr;}
}
printf " \n El número es %2d ", $pregunta;
Ejercicio
4
-
Escribe una "x" de 24 líneas utilizando el operador next.
#! /usr/bin/perl
for ($y=1; $y<24; $y++); #columnas
{
for ($x=1;$x<24; $x++); #filas
{
if ($x = = $y)
{
print "x";
next; #como ya se escribió salta y continúa
}
if ($x = = 24 -$y)
{
print "x";
next; #se escribe y salta
}
print " "; #en cualquier otro caso
}
print "\n";
}