Tarea semanal.
Hola. En esta entrada haré un programa en Perl que trata sobre la Segunda Ley de Newton. El usuario va a elegir entre un menú, ¿qué elemento de la fórmula: F=ma le falta? y ahí le pedirá los datos restantes para poder obtener lo que el usuario quiere.
Paso 1: Abrimos el terminal, escribimos which perl para saber la localización de Perl y escribirla al inicio de nuestra codificación.
Paso 2: Escribimos emacs formula1.pl "emacs" es el editor de texto que usaremos para escribir nuestro código, "formula1" es el nombre que le pondré al archivo que voy a crear, y ".pl" es la extensión que le pertenece a los archivos de Perl.
Paso 3: Ahora comenzaremos a escribir nuestro código en emacs. Iniciamos por escribir la ubicación que obtuvimos al principio: #!/usr/bin/perl agregando #! al comienzo.
Paso 4: En el siguiente renglón escribimos: use Switch; esto nos permite utilizar la función switch para nuestro programa.
*Nota: Todas las líneas de código deben terminar con ;
Paso 5: Ahora declaramos las variables, se escribe: my seguido de un espacio y el símbolo $ y el nombre de la variable sin pasar un espacio. "menu" es la variable que introduce el usuario al elegir qué parte del menú quiere, "f" es fuerza, "m" es masa, y "a" es aceleración.
my $menu;
my $f;
my $m;
my $a;
Paso 6: Esta parte tendrá un encabezado y desplegará el menú de opciones que tiene. El \t significa pasar una tabulación, \n significa un salto de línea. El chomp($menu=
print "\tSegunda Ley de Newton\nElige una de estas opciones de acuerdo al elelemento faltante:\n1- Fuerza\n2- Aceleracion\n3- Masa\n:";
chomp($menu=
Paso 7: Aquí empezaremos nuestro switch: Asignamos la variable "menu" al switch (por eso lo ponemos entre paréntesis y al lado de switch) Se abre una llaver que englobará todo el switch con todos los case dentro. Vemos que nos pide los datos restantes de la fórmula y los multiplica: F=ma. Al final cerramos la llave que le pertenece al case 1.
switch($menu){
case 1 {
print "\nElemento faltante: Fuerza\nIntruduzca la masa: ";
$m=
print "\nIntroduzca la aceleración: ";
$a=
$f=($m*$a);
print "\nLa fuerza es: ", $f;
}
Paso 8: Lo siguiente es elaborar el case 2 que corresponde al dato faltante "Aceleracion" Como el elemento que nos falta es la aceleración, el programa ya tiene despejada la fórmula: a=F/m En este case, nos puden los datos como Fuerza y masa para obtener la aceleración.
case 2 {
print "\nEl elemento faltante: Aceleracion\nIntroduzca la fuerza: ";
$f=
print "\nIntroduzca la masa: ";
$m=
$a=($f)/($m);
print "\nLa aceleracion es: ", $a;
}
*Nota: En este lenguaje de programación no se necesita especificar si el dato que se introduce es flotante, entero, etc.
Paso 9: Seguimos con el último case. Vemos que como el dato faltante es la masa, nos piden la fuerza y la aceleración para poder obtenerla: m=F/a
case 3 {
print "\nEl elemento faltante: Masa\nIntroduzca la fuerza: ";
$f=
print "\nIntroduzca la aceleracion: ";
$a=
$m=($f)/($a);
print "\nLa masa es: ", $m;
}
Paso 10: Por último, escribimos la opción que, si el usuario escribe un número distinto a 1, 2 y 3, se despliegue que no exista dicha opción en el menú. Se escribe entre llaves, y la última llave cierra todo el switch.
else {
print "\nNo existe la opcion\n";
}
}
Paso 11: Nos regresamos al Terminal y escribimos: chmod u+x formula1.pl que nos sirve para dar autorización de ejecución, y después escribimos: ./formula1.pl para que se ejecute en la Terminal.
Paso 12: Oprimimos Enter y se ejecutará automáticamente, probaré las tres opciones del menú con los mismo datos para comprobar que funcione bien. Fuerza= 70 N, masa= 1.4 kg y aceleración= 50 m/s
Esto es todo por esta entrada, espero que les haya servido de algo, y si tienen algo que decir, no duden en comentar.
Hasta luego.
*Nota: En la última imagen no se alcanza a apreciar el resultado de la masa, pero es 1.4.
Fuentes: http://perlenespanol.com/tutoriales/






















