UNIV.
: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
1.
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
PANTALLA DE IMPRESIÓN EJERCICIO 1:
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";
}
public Guarderia(string nombre, string direccion, int telefono,
int nroNineras, string[,] ninera) {
this.nombre = nombre;
this.direccion = direccion;
this.telefono = telefono;
this.nroNineras = nroNineras;
this.ninera = ninera;
}
//g)
public static Guarderia operator % (Guarderia A, int x){
A.telefono = x;
return A;
}
//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
Console.WriteLine("Ambas tienen el mismo grado de
paciencia");
return null;
} else if(aux1 > aux2){
return x;
} else {
return y;
}
}
//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
Console.WriteLine("nombre: "+ninera[i,0]+" salario:
"+ninera[i,1]+
" grado de paciencia: "+ninera[i,2]+"
edad: "+ninera[i,3]);
}
}
public void mostrar(string x){
Console.WriteLine("Guarderia: "+nombre+ " direccion:
"+direccion+" telefono: "
+telefono+" nroNineras: "+nroNineras);
}
public void mostrar(Guarderia x){
Console.WriteLine("Guarderia 1:");
mostrar();
Console.WriteLine("Guarderia 2:");
x.mostrar();
}
public void leer(){
Console.Write("Guarderia: ");
nombre = Console.ReadLine();
Console.Write("Direccion: ");
direccion = Console.ReadLine();
Console.Write("telefono: ");
telefono = int.Parse(Console.ReadLine());
Console.Write("nroNineras: ");
nroNineras = int.Parse(Console.ReadLine());
for (int i = 0; i < nroNineras; i++) {
Console.Write("nombre: ");
ninera[i,0] = Console.ReadLine();
Console.Write("salario: ");
ninera[i,1] = Console.ReadLine();
Console.Write("grado de paciencia: ");
ninera[i,2] = Console.ReadLine();
Console.Write("edad: ");
ninera[i,3] = Console.ReadLine();
}
}
//b)
public static Guarderia operator ++(Guarderia x){
x.leer();
return x;
}
public int getNroNineras() {
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
return nroNineras;
}
public void setNroNineras(int nroNineras) {
this.nroNineras = nroNineras;
}
public string getNombre() {
return nombre;
}
public void setNombre(string nombre) {
this.nombre = nombre;
}
public string getDireccion() {
return direccion;
}
public void setDireccion(string direccion) {
this.direccion = direccion;
}
public int getTelefono() {
return telefono;
}
public void setTelefono(int telefono) {
this.telefono = telefono;
}
public string[,] getNinera() {
return ninera;
}
public void setNinera(string[,] ninera) {
this.ninera = ninera;
}
}
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
Guarderia g1 = new Guarderia();
string[,] n1 = new string[50,4];
n1[0,0] = "ANA";
n1[0,1] = "1200";
n1[0,2] = "5";
n1[0,3] = "19";
n1[1,0] = "JUANA";
n1[1,1] = "3000";
n1[1,2] = "10";
n1[1,3] = "45";
Guarderia g2 = new Guarderia("Estrellas", "Av. union",
284621, 2, n1);
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();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
UNIV.: Laleshk` Wara Vallejos Copana DOCENTE: Celia Elena Tarquino Peralta
CI: 13153184 L.P. CARRRERA: Informática
PANTALLA DE IMPRESIÓN EJERCICIO 2:
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
PANTALLA DE IMPRESIÓN EJERCICIO 3: