8/13/2019 Colab. 2 programacin orientada a objetos
1/21
INTRODUCCION
A travs de esta actividad se pretende aplicar los conocimientos adquiridos en
la unidad 2 del curso Programacin Orientada a Objetos. Por medio deldesarrollo de unas actividades del captulo 4,5 y 6 de la unidad 2 y con laelaboracin de un programa en lenguaje java, para este caso se trata de unabase de datos, este trabajo hace parte de los aportes elaborados por un equipode trabajo colaborativo del curso programacin orientada a objetos de la Unad.
8/13/2019 Colab. 2 programacin orientada a objetos
2/21
ACTIVIDADES COMPLEMENTARIAS 4.4
1. Operaciones matemticas
Crear el siguiente objeto de la figura:
Donde demuestre la creacin de los 6 mtodos que consta la clase
operacin.
import javax.swing.JOptionPane;class Operacion {int n1, n2;float res;
void suma (int n1, int n2){res = n1 + n2;
}
void resta (int n1, int n2){
res = n1 - n2;}
void multi (int n1, int n2)
{res = n1 * n2;}
void div (float n1, float n2){res = n1 / n2;
}
void mod (int n1, int n2){
res = n1 % n2;
}void igual (int n1, int n2)
8/13/2019 Colab. 2 programacin orientada a objetos
3/21
{
if (n1 == n2)res = 1;else
res = 0;
}float getRes()
{return res;
}
public static void main(String args[])
{int a1, a2;float total;
Operacion op1;
op1 = new Operacion();a1 = Integer.parseInt(JOptionPane.showInputDialog(null, "Introduce el
primer valor"));
a2 = Integer.parseInt(JOptionPane.showInputDialog(null, "Introduce elsegundo valor"));
op1.suma(a1, a2);total = op1.getRes();
JOptionPane.showMessageDialog(null, a1 + " + " + a2 + " = " + total);
op1.resta(a1, a2);total = op1.getRes();JOptionPane.showMessageDialog(null, a1 + " - " + a2 + " = " + total);
op1.multi(a1, a2);total = op1.getRes();JOptionPane.showMessageDialog(null, a1 + " * " + a2 + " = " + total);
if(a2 != 0)
{op1.div(a1, a2);
total = op1.getRes();JOptionPane.showMessageDialog(null, a1 + " / " + a2 + " = " + total);
}
elseJOptionPane.showMessageDialog(null, "DIVISION Operacion imposible derealizar");
if(a2 != 0){op1.mod(a1, a2);
total = op1.getRes();
JOptionPane.showMessageDialog(null, a1 + " % " + a2 + " = " + total);}
else
JOptionPane.showMessageDialog(null, "MODULO Operacion imposible derealizar");
op1.igual(a1, a2);total = op1.getRes();
if(total == 1)
JOptionPane.showMessageDialog(null, a1 + " igual " + a2);else
8/13/2019 Colab. 2 programacin orientada a objetos
4/21
JOptionPane.showMessageDialog(null, a1 + " diferente " + a2);
}}
2. POO y otros lenguajes
Cul es la diferencia de la programacin orientada objetos con otroslenguajes?
La programacin estructurada es una forma de escribir programas de
ordenador (programacin de computadora) de forma clara. Para ello utiliza
nicamente tres estructuras: secuencia, seleccin e iteracin; siendo
innecesario y no permitindose el uso de la instruccin o instrucciones de
transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o mltiples
RETURN).
Hoy en da las aplicaciones informticas son mucho ms ambiciosas que las
necesidades de programacin existentes en los aos 1960, principalmente
debido a las aplicaciones grficas, por lo que las tcnicas de programacin
estructurada no son suficientes. Ello ha llevado al desarrollo de nuevas
tcnicas, tales como la programacin orientada a objetos y el desarrollo de
entornos de programacin que facilitan la programacin de grandes
aplicaciones.
Orgenes de la programacin estructurada
A finales de los aos 1960 surgi una nueva forma de programar que nosolamente daba lugar a programas fiables y eficientes, sino que adems
estaban escritos de manera que facilitaba su comprensin posterior.
El teorema del programa estructurado, demostrado por BhmJacopini,
demuestra que todo programa puede escribirse utilizando nicamente las tres
instrucciones de control siguientes:
Secuencia
Instruccin condicional.
Iteracin (bucle de instrucciones) con condicin al principio. Solamente
con estas tres estructuras se pueden escribir todos los programas
(programas) y aplicaciones posibles. Si bien los lenguajes de
programacin tienen un mayor repertorio de estructuras de control, stas
pueden ser construidas mediante las tres bsicas.
Ventajas de la programacin estructurada
Con la programacin estructurada, elaborar programas de computador sigue
siendo una labor que exige esfuerzo, creatividad, habilidad y cuidado. Sin
embargo, con este estilo podemos obtener las siguientes ventajas:
8/13/2019 Colab. 2 programacin orientada a objetos
5/21
1. Los programas son ms fciles de entender, ya que pueden ser ledos
de forma secuencial, sin necesidad de hacer seguimiento a saltos de
lnea (GOTO) dentro de los bloques de cdigo para entender la lgica.
2. La estructura del programa es clara, puesto que las instrucciones estn
ms ligadas o relacionadas entre s.
3. Reduccin del esfuerzo en las pruebas. El seguimiento de los fallos o
errores del programa ("debugging") se facilita debido a la estructura ms
visible, por lo que los errores se pueden detectar y corregir ms
fcilmente.
4. Reduccin de los costes de mantenimiento de los programas.
5. Programas ms sencillos y ms rpidos (ya que es ms fcil su
optimizacin).
6. Los bloques de cdigo son auto explicativos, lo que facilita la
documentacin.
7. Los GOTO se reservan para construir las instrucciones bsicas. Aunque
no se usan de forma directa, por estar prohibida su utilizacin, estn
incluidas implcitamente en las instrucciones de seleccin e iteracin.
8. Un programa escrito de acuerdo a estos principios no solamente tendr
una mejor estructura sino tambin una excelente presentacin.
9. La programacin estructurada ofrece estos beneficios, pero no se la
debe considerar como una panacea ya que el desarrollo de programas
es, principalmente, una tarea de dedicacin, esfuerzo y creatividad.
Inconvenientes de la programacin estructurada
El principal inconveniente de este mtodo de programacin es que se obtiene
un nico bloque de programa, que cuando se hace demasiado grande puede
resultar problemtico su manejo; esto se resuelve empleando la programacin
modular, definiendo mdulos interdependientes programados y compilados porseparado (en realidad esto no es necesario, pero as ha sido histricamente).
Un mtodo un poco ms sofisticado es la programacin por capas, en la que
los mdulos tienen una estructura jerrquica en la que se pueden definir
funciones dentro de funciones o de procedimientos.
Programacin orientada a objetos
La Programacin Orientada a Objetos (POO u OOP segn sus siglas en ingls)
es un paradigma de programacin que usa objetos y sus interacciones para
disear aplicaciones y programas de computadora. Est basado en variastcnicas, incluyendo herencia, modularidad, polimorfismo y encapsulamiento.
8/13/2019 Colab. 2 programacin orientada a objetos
6/21
Su uso se populariz a principios de la dcada de 1990. Actualmente son
muchos los lenguajes de programacin que soportan la orientacin a objetos.
Origen
Los conceptos de la programacin orientada a objetos tienen origen en Simula67, un lenguaje diseado para hacer simulaciones, creado por Ole-Johan Dahl
y Kristen Nygaard del Centro de Cmputo Noruego en Oslo. Al parecer, en este
centro, trabajaban en simulaciones de naves, y fueron confundidos por la
explosin combinatoria de cmo las diversas cualidades de diversas naves
podan afectar unas a las otras. La idea ocurri para agrupar los diversos tipos
de naves en diversas clases de objetos, siendo responsable cada clase de
objetos de definir sus propios datos y comportamiento. Fueron refinados ms
tarde en Smalltalk, que fue desarrollado en Simula en Xerox PARC (y cuya
primera versin fue escrita sobre Basic) pero diseado para ser un sistema
completamente dinmico en el cual los objetos se podran crear y modificar "en
marcha" en lugar de tener un sistema basado en programas estticos.
Resumen
Es un paradigma que utiliza objetos como elementos fundamentales en la
construccin de la solucin. Surge en los aos 70. Un objeto es una
abstraccin de algn hecho o cosa del mundo real que tiene atributos que
representan sus caractersticas o propiedades y mtodos que representan su
comportamiento o acciones que realizan. Todas las propiedades y mtodos
comunes a los objetos se encapsulan o se agrupan en clases. Una clase es
una plantilla o un prototipo para crear objetos, por eso se dice que los objetos
son instancias de clases. Lenguaje de programacin: C++, Java, C#, VB.Net,
etc.
Programacin lgica
La programacin lgica consiste en la aplicacin del corpus de conocimiento
sobre lgica para el diseo de lenguajes de programacin; no debe confundirse
con la disciplina de la lgica computacional.
La programacin lgica comprende dos paradigmas de programacin: la
programacin declarativa y la programacin funcional. La programacin
declarativa gira en torno al concepto de predicado, o relacin entre elementos.
La programacin funcional se basa en el concepto de funcin (que no es ms
que una evolucin de los predicados), de corte ms matemtico.
Motivacin
Histricamente, los ordenadores se han programado utilizando lenguajes muy
cercanos a las peculiaridades de la propia mquina: operaciones aritmticassimples, instrucciones de acceso a memoria, etc. Un programa escrito de esta
8/13/2019 Colab. 2 programacin orientada a objetos
7/21
manera puede ocultar totalmente su propsito a la comprensin de un ser
humano, incluso uno entrenado. Hoy da, estos lenguajes pertenecientes al
paradigma de la Programacin imperativa han evolucionado de manera que ya
no son tan crpticos.
En cambio, la lgica matemtica es la manera ms sencilla, para el intelectohumano, de expresar formalmente problemas complejos y de resolverlos
mediante la aplicacin de reglas, hiptesis y teoremas. De ah que el concepto
de "programacin lgica" resulte atractivo en diversos campos donde la
programacin tradicional es un fracaso.
Campos de aplicacin
La programacin lgica encuentra su hbitat natural en aplicaciones de
inteligencia artificial o disciplinas relacionadas:
Sistemas expertos, donde un sistema de informacin imita las
recomendaciones de un experto sobre algn dominio de conocimiento.
Demostracin automtica de teoremas, donde un programa genera
nuevos teoremas sobre una teora existente.
Reconocimiento de lenguaje natural, donde un programa es capaz de
comprender (con limitaciones) la informacin contenida en una
expresin lingstica humana.
Etc. La programacin lgica tambin se utiliza en aplicaciones ms
"mundanas" pero de manera muy limitada, ya que la programacin
tradicional es ms adecuada a tareas de propsito general.
El lenguaje de programacin por excelencia de la programacin lgica es:
Prolog.
3. Cules son las desventajas de la programacin orientada aobjetos?
A pesar de que las ventajas de la programacin orientada a objetos superan a
las limitaciones de la misma, podemos encontrar algunas caractersticas no
deseables en sta. Limitaciones para el programador. No obstante que la
tecnologa orientada a objetos no es nueva, un gran porcentaje de
programadores no estn familiarizados con los conceptos de dicha tecnologa.
En otras palabras, la lgica de la programacin estructurada sigue siendo
predominante en la mayora de los desarrolladores de software, despus de
haber revisado de forma breve los principios de la programacin orientada a
objetos, nos es claro que en sta se requiere una lgica de pensamiento
totalmente diferente a la lgica comnmente utilizada para la programacinestructurada. Tamao excesivo en las aplicaciones resultantes. La gran
8/13/2019 Colab. 2 programacin orientada a objetos
8/21
mayora de los equipos de cmputo cuentan con capacidades tanto de
almacenamiento como de memoria lo suficientemente buena como para
ejecutar la mayora de las aplicaciones que puedan desarrollarse con la
tecnologa orientada a objetos, sin embargo existen casos en los que lo anterior
no se cumple. Una de las desventajas de la programacin orientada a objetos
es que cuando se heredan clases a partir de clases existentes se heredan de
forma implcita todos los miembros de dicha clase aun cuando no todos se
necesiten, lo que produce aplicaciones muy grandes que no siempre encajan
en los sistemas con los que se disponga. Velocidad de ejecucin. Esto tiene
que ver, en cierto modo, con el punto anterior, una aplicacin innecesariamente
pesada en muchas ocasiones es ms lenta de ejecutar que una aplicacin
conformada nicamente por los mdulos necesarios.
4. Estructura con datos y mtodos
Realiza una estructura por ejemplo del computador de su casa dondeindique cuales son los datos y cules son los mtodos.class computador {string comandos //variables de datos
void abrir_archivosr () { //mtodos}
void crear_archivos () {}
void borrar_archivos() {
}void guardar_archivos () {}
}
5. Investiga como es el comportamiento de los objetos en una clase.
El comportamiento de los objetos de una clase se implementa mediante
funciones miembro o mtodos. Un mtodo es un conjunto de instrucciones que
realizan una determinada tarea y son similares a las funciones de los lenguajes
estructurados.
Del mismo modo que hay variables de instancia y de clase, tambin hay
mtodos de instancia y de clase. En el primer caso, un objeto llama a un
mtodo para realizar una determinada tarea, en el segundo, el mtodo se llama
desde la propia clase.
ACTIVIDADES COMPLEMENTARIAS 5.4
1. Diferencia entre lenguaje C y Java
8/13/2019 Colab. 2 programacin orientada a objetos
9/21
Explique cul es la diferencia de la estructura de un programa en C yJava.
Java es programacin orientada a objetos, a diferencia de C que es deprogramacin estructurada.
C es un lenguaje rpido y compilado, lo contrario de los que son interpretados.Claro eso s que al agregar rapidez, agregamos tambin dificultad en su uso. YJava es un lenguaje, medio compilado, medio interpretado. Java necesita unacompilacin previa para poder ejecutarse en su intrprete: JVM (Java VirtualMachine: Mquina Virtual de Java).
Java es extremadamente portable, necesita ser escrito solo una vez para correren cualquier mquina (de ah su lema: Write once, run everywhere), ya que noes el programa el que se adapta a la arquitectura ni al sistema, sino elintrprete. C no permite esto a menos que escribamos en ANSI C (C estndar),
cosa que muy poco probable si estamos haciendo un programa con interfazgrfica o con algo de complejidad.
Java es ms seguro. Si te das cuenta, nunca hemos escuchado hablar de virusescrito en Java. Sera estpido decir aquello porque Java revisa la seguridaden tiempo de compilacin. Cualquier indicio de inseguridad (referencias malhechas, operaciones peligrosas, etc.) en tu programa se traducir en un error.La potencia de C es la que le da su peligrosidad, el acceso libre a la memoria, yotros factores que lo hacen el lenguaje ms potente despus de Assembler.
Java es menos complicado por su no uso de punteros. Los punteros (oreferencias) se deben utilizar con cuidado en C, ya que dan un acceso ilimitadoa lo que es la memoria y disco duro del computador. Es por ello la capacidadde crear cdigo malicioso con este lenguaje.
C es en realidad un lenguaje de bajo nivel (ms entendible para la mquina)con instrucciones de alto nivel (ms comprensible por humanos), o sea, no muycomplicado de aprender para que sea de bajo nivel. En cambio, Java poseepocas instrucciones de bajo nivel, con poco acceso al sistema y menor gestinde memoria que con C, o sea, ms fcil pero menos control.
2. Instrucciones para Crear un programa
Qu instrucciones debemos tener en cuenta para crear unprograma sencillo?
Un cdigo bsico es el siguiente:
public class MiPrimeraAplicacion {public static void main (String[] args) {System.out.println("Hola Mundo");
}
}
http://www.google.com/search?hl=en&q=allinurl%3AString+java.sun.com&btnI=I%27m%20Feeling%20Luckyhttp://www.google.com/search?hl=en&q=allinurl%3AString+java.sun.com&btnI=I%27m%20Feeling%20Luckyhttp://www.google.com/search?hl=en&q=allinurl%3ASystem+java.sun.com&btnI=I%27m%20Feeling%20Luckyhttp://www.google.com/search?hl=en&q=allinurl%3ASystem+java.sun.com&btnI=I%27m%20Feeling%20Luckyhttp://www.google.com/search?hl=en&q=allinurl%3AString+java.sun.com&btnI=I%27m%20Feeling%20Lucky8/13/2019 Colab. 2 programacin orientada a objetos
10/21
Deberemos de tener cuidado en cmo escribimos el nombre del archivo ya queJava es un lenguaje sensible a maysculas, es decir, reconoce el tecladoalfabtico de maysculas y minsculas.
El nombre del archivo deber de coincidir con el nombre de la clase principal.
public class MiPrimeraAplicacion MiPrimeraAplicacion.java
Compilando mi aplicacin
3. Mtodos de definicin
Investigue sobre los mtodos de definicin para complementar eltema
En Java toda la lgica de programacin (Algoritmos) est agrupada en
funciones o mtodos.
Un mtodo es:
Un bloque de cdigo que tiene un nombre, recibe unos parmetros o argumentos (opcionalmente), contiene sentencias o instrucciones para realizar algo (opcionalmente) y devuelve un valor de algn Tipo conocido (opcionalmente).
La sintaxis global es:
Tipo_Valor_devuelto nombre_mtodo (lista_argumentos ) {
bloque_de_codigo;}
Y la lista de argumentos se expresa declarando el tipo y nombre de los mismos(como en las declaraciones de variables). Si hay ms de uno se separan porcomas.
Por ejemplo:
IntsumaEnteros ( int a, int b ) {intc = a + b;
8/13/2019 Colab. 2 programacin orientada a objetos
11/21
returnc;
}
El mtodo se llama sumaEnteros. Recibe dos parmetros tambin enteros. Sus nombres son a y b.
Devuelve un entero.
En el ejemplo la clusula returnse usa para finalizar el mtodo devolviendo elvalor de la variable c.
El termino void
El hecho de que un mtodo devuelva o no un valor son opcionales. En caso deque devuelva un valor se declara el tipo que devuelve. Pero si no necesitaningn valor, se declara como tipo del valor devuelto, la palabra reservadavoid.
Por ejemplo:
voidhaceAlgo() {
. . .
}
Cuando no se devuelve ningn valor, la clusula return no es necesaria.Obsrvese que en el ejemplo el mtodo haceAlgo tampoco recibe ningnparmetro. No obstante los parntesis, son obligatorios.
Uso de mtodos
Los mtodos se invocan con su nombre, y pasando la lista de argumentosentre parntesis. El conjunto se usa como si fuera una variable del Tipodevuelto por el mtodo.
Por ejemplo:
intx;
x = sumaEnteros(2,3);
Nota: Esta sintaxis no est completa, pero sirve para nuestros propsitos eneste momento. La sintaxis completa se ver cuando se hable de objetos.
Aunque el mtodo no reciba ningn argumento, los parntesis en la llamadason obligatorios. Por ejemplo para llamar a la funcin haceAlgo, simplementese pondra:
haceAlgo();
Obsrvese que como la funcin tampoco devuelve ningn valor no se asigna a
ninguna variable. (No hay nada que asignar).
8/13/2019 Colab. 2 programacin orientada a objetos
12/21
4. Realice un mapa conceptual sobe el tema anterior.
5. Instrucciones Repetitivas
Exponga 10 ventajas de para utilizar instrucciones repetitivas
Facilita el manejo de eventos que se deben ejecuar un nmerodeterminado de veces.
Control el inicio y el fin de cualquier evento
Con solo escribir una vez el cdigo, se puede controlar un nmerodeterminado de eventos
Se tiene control sobre la cantidad de repeticiones que se necesita seejecute una instruccin
Agilidad en la escritura de cdigo. Las escritura repetitiva, estn muy bien definida, son muy pocas ero
muy potentes.
Fcil la implementacin de escritura de una sentencia de repeticin.Facilidad de control; ya sea por eventos o por banderas.
Se puede modificar los valores fcilmente: incluso durante laejecucin del programa
6. Mapa conceptual
Realice un mapa conceptual con 20 trminos sobre tipo de datos ydeclaraciones.
7. Nmeros del 20 al 30
Disear un programa que despliegue los nmeros del 20 al 30.
import java.lang.*;
import java.awt.*;import java.awt.event.*;
public class Despliega20a30 {//declaracion, creacion e inicia componentes, objetos y variables
static Frame ventana= new Frame();static Panel p1 = new Panel();static List lista = new List(12, false);
static Button b1 = new Button("OK");
public static void main(String[] args){
// area de definicion de propiedades de el objeto
ventana.setTitle("Mi Programa");//agregando componentes a panel
8/13/2019 Colab. 2 programacin orientada a objetos
13/21
p1.add(lista);p1.add(b1);
// agregando panel a frameventana.add(p1); ventana.pack();ventana.setVisible(true);
ventana.addWindowListener( new WindowAdapter(){
public void windowClosing(WindowEvent e){ventana.dispose(); System.exit(0);}});
b1.addMouseListener( new MouseAdapter() {public void mousePressed(MouseEvent e){
String temp=""; int x;
for ( x = 20; x
8/13/2019 Colab. 2 programacin orientada a objetos
14/21
return fac;
}public static double logaritmo(){
lgr = Math.log10(Double.valueOf(String.valueOf(n)));
return lgr;
}public static void evaluar(){
for(n = 11; n
8/13/2019 Colab. 2 programacin orientada a objetos
15/21
public class tmultip {
public static void main(String[] args) {int n, i;
long res;
n = Integer.parseInt(JOptionPane.showInputDialog("INGRESE ELNUMERO PARA GENERAR LA TABLA DE MULTIPLICAR:"));
for (i = 1; i
8/13/2019 Colab. 2 programacin orientada a objetos
16/21
loga = new double [100];
mul = new int [100];loga1 = new double [100];evaluar();
}
public static double logaritmoe(){lgr1 = Math.log(Double.valueOf(String.valueOf(n)));
return lgr1;}
public static double logaritmo(){lgr = Math.log10(Double.valueOf(String.valueOf(n)));return lgr;
}
public static void evaluar(){
for(n = 60; n >= 20; n--){
res = n % 4;switch (res){
case 0:
mul[j] = n;loga1[j] = logaritmoe();
loga[j] = logaritmo();j++;
break;
}}System.out.print("MULTIPLO DE 4\t");
System.out.print("LOGARITMO 10\t\t\t\t");System.out.print("LOGARITMO e");System.out.println();
i = 0;
while(i < j){System.out.print(mul[i]+"\t\t\t\t");
System.out.print(loga[i]+"\t\t\t");System.out.print(loga1[i]);
System.out.println();
i++;}
}
}
8/13/2019 Colab. 2 programacin orientada a objetos
17/21
11. Construir la tabla de dividir que el usuario indique.
import javax.swing.*;
public class tdividir {
public static void main(String[] args) {
int n, i;
double res;n = Integer.parseInt(JOptionPane.showInputDialog("INGRESE EL
NUMERO PARA GENERAR LA TABLA DE DIVIDIR:"));for (i = 1; i
8/13/2019 Colab. 2 programacin orientada a objetos
18/21
12. Captura y despliegue de implementos deportivos.
Disear un programa que capture un deporte cualquiera y desplieguedos implementos deportivos apropiados.
13. Determinar si es mayor de 50 y mltiplo de 3
construir un programa que capture un nmero cualesquiera y diga sies o no es mayor de 50 y mltiplo de tres.
import javax.swing.*;
public class maymult3 {
public static void main(String[] args) {int n;
n = Integer.parseInt(JOptionPane.showInputDialog("INGRESE ELNUMERO PARA EVALUAR:"));
if(n > 50)System.out.println("Numero mayor a 50:\tSi");else
System.out.println("Numero mayor a 50:\tNo");
if(n % 3 == 0)System.out.println("Multiplo de 3:\tSi");
else
System.out.println("Multiplo de 3:\tNo");}
}
8/13/2019 Colab. 2 programacin orientada a objetos
19/21
14. Construir un programa que indique si un nmero es par positivo.
import javax.swing.*;
public class Numparpos {static int Impar = 0;
static int Par = 0;
public static void main(String[] args) {boolean es = true;
int n;n = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el
Nmero a Evaluar:"));
if (n % 2 == 0) {es = true;
System.out.println("numero: " + n + ", \t\tEs Par");Par++;
} else {es = false;
System.out.println("numero: " + n + ", \t\tEs ImPar");Impar++;
}
if(n > 0)
System.out.println("Numero Positivo:\tSi");else
if(n < 0)
System.out.println("Numero Negativo:\tSi");else
System.out.println("Numero neutro:\tSi");
8/13/2019 Colab. 2 programacin orientada a objetos
20/21
}
}
15. Pago de un empleado
Construir un programa que capture los datos de un empleado,desplegar en una pgina su cheque semanal si gana ms de$500.000 y si esta en el departamento de produccin, en casocontrario desplegar en otra pgina un bono del 25% de su sueldosemanal.
8/13/2019 Colab. 2 programacin orientada a objetos
21/21
Top Related