Polimorfismo Val
Polimorfismo Val
1.
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
2.
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
CLASE GUARDERIA:
public class Guarderia
{
private string nombre;
private string direccion;
private int telefono;
private int nroNineras;
private string[,] ninera = new string[50,4];
//nombre, salario, gradopaciencia, edad
public Guarderia() {
this.nombre = "guarderiaDef";
this.direccion = "calle alamo Nº5";
this.telefono = 2222222;
this.nroNineras = 1;
this.ninera[0,0] = "MARIA";
this.ninera[0,1] = "2000";
this.ninera[0,2] = "8";
this.ninera[0,3] = "35";
}
//f)
public static Guarderia operator * (Guarderia x, Guarderia y){
int aux1 = 0;
int aux2 = 0;
for (int i = 0; i < x.nroNineras; i++) {
aux1 += int.Parse(x.ninera[i,2]);
}
for (int i = 0; i < y.nroNineras; i++) {
aux2 += int.Parse(y.ninera[i,2]);
}
if (aux1 == aux2) {
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
//e)
public static Guarderia operator --(Guarderia x){
for (int i = 0; i < x.nroNineras; i++) {
string cad = x.ninera[i,0];
bool sw = true;
for (int j = 0; j < cad.Length/2; j++) {
if (cad[j].CompareTo(cad[cad.Length-1]) != 0) {
sw = false;
break;
}
}
if (sw) {
Console.WriteLine("nombre: "+x.ninera[i,0]+"
salario: "+x.ninera[i,1]+
" grado de paciencia:
"+x.ninera[i,2]+" edad: "+x.ninera[i,3]);
}
}
return x;
}
//d)
public static Guarderia operator +(Guarderia x, int y){
for (int i = 0; i < x.nroNineras; i++) {
x.ninera[i,1] = "" + (double.Parse(x.ninera[i,1]) *
y/100 + double.Parse(x.ninera[i,1]));
}
return x;
}
//c)
public void mostrar(){
Console.WriteLine("Guarderia: "+nombre+ " direccion:
"+direccion+" telefono: "
+telefono+" nroNineras: "+nroNineras);
for (int i = 0; i < nroNineras; i++) {
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
//b)
public static Guarderia operator ++(Guarderia x){
x.leer();
return x;
}
return nroNineras;
}
PRINCIPAL: (MAIN)
class Program
{
public static void Main(string[] args)
{
//a)
Console.WriteLine("-----------a) ");
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
g1.mostrar();
g2.mostrar();
//b)
Console.WriteLine("-----------b) ");
Guarderia x = new Guarderia();
//x++;
//x.mostrar();
//c)
Console.WriteLine("-----------c) ");
g1.mostrar();
g1.mostrar("asd");
g1.mostrar(g2);
//d)
Console.WriteLine("-----------d) ");
g2 = g2+20;
g2.mostrar();
//e)
Console.WriteLine("-----------e) ");
g2--;
//f)
Console.WriteLine("-----------f) ");
Guarderia aux = new Guarderia();
aux = g1*g2;
aux.mostrar();
//G)
Console.WriteLine("-----------g) ");
g2 = g2%299999;
g2.mostrar();
3.
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
a) Instanciar 2 Pastelerías
b) Instanciar 3 Personas de forma distinta
c) Sobrecargar el operador ++ para leer una pastelería
d) Sobrecargar el método mostrar () de la pastelería de 3 formas distintas
e) sobrecarga el operador ++ para mostrar una Persona
f) Sobrecarga una función de 2 formas para poder modificar el ci de una persona g)
Sobrecarga un operador y haz otra función, para añadir una Persona p como repartidor a
una pastelería
g) Sobrecarga el operador True para verificar si una pastelería tiene servicio de delivery
h) Dado una Persona p y una Pastelería, sobrecarga el operador - para despedir a la
persona p como repartidor y posteriormente mostrar la pastelería, en caso de no haber
trabajado allí, mostrar un mensaje "ESTA PERSONA NO TRABAJA ALLI."
i) Sobrecarga un operador para incrementar el costo de sus productos con precio menor a
50 bs en un monto de X bs
j) Debido a que en el catálogo de postres que tiene la pastelería es difícil poder localizar un
determinado producto, te piden ordenar los productos que tiene, por su nombre de
manera ascendente.
k) Debido a que el día de hoy les fue bien en sus ventas, el dueño decide hacer una fiesta
con un poco de licor, pero como tiene empleados menores de edad y no debe comprar para
todos (ya que el dueño es muy responsable), te pide que muestres un listado de todos los
repartidores que son mayores de edad (nombre, edad).
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática