Está en la página 1de 12

RÚBRICA PROBLEMAS-HITO4-PROGRAMACION-II

Para iniciar con el desarrollo de la solución de los problemas planteados es muy importante que lea con
atención cada una de las instrucciones que se plantea.
Los parámetros a tomar en cuenta en el desarrollo serán:
Excelente Estratégico Autónomo Básico Básico
Aspecto a evaluar
(95 - 100) (90 - 94) (75 - 89) (51 - 74) (0 - 50)
Muestra un Comete
Muestra un entendimiento Comete algunos muchos errores
dominio amplio del problema y errores en el en el No muestra
Planteamiento del
del problema y de los planteamiento del planteamiento ningún
problema: listas
de los conceptos conceptos y problema o en los del problema y conocimiento
genericas con clases
y principios principios conceptos y en los en torno al
matemáticos de matemáticos principios conceptos y tema tratado.
manera clara. de manera matemáticos. principios
  clara. matemáticos.
Muestra un
Aplica
dominio amplio
correctamente Comete algunos Comete
en el desarrollo No demuestra
Uso adecuado del el algoritmo errores en la muchos errores
correcto de dominio sobre
algoritmo. para dar aplicación del en la aplicación
algoritmos para el algoritmo.
solución al algoritmo. del algoritmo.
dar solución al
problema.
problema.

Muestra un
Realizar No demuestra
dominio del tema Comete algunos Comete
Desarrollo de la correctamente tener ningún
al realizar el errores en el muchos errores
solución del el desarrollo dominio en el
desarrollo desarrollo de la en el desarrollo
problema. completo para desarrollo de la
completo para la solución a de la solución
la solución del solución del
solución del problema. del problema.
problema. problema.
problema.
 

Redacta un
Redacta un
análisis de los
análisis de los
resultados
resultados Comete algunos Comete
obtenidos
Habilidad para obtenidos errores de muchos errores
incluyendo Produce un
comunicar los incluyendo conceptos y de de conceptos y
conceptos resultado sin
resultados conceptos significado en la de significado
matemáticos contar con un
obtenidos. matemáticos redacción del en la redacción
apropiados y el análisis de los
apropiados y el análisis de los del análisis de
significado de mismo.
significado de los resultados los resultados
los mismos
mismos dentro obtenidos. obtenidos.
dentro del
del sistema
sistema
analizado.
analizado.
 
Entrega el
Se retrasa más
Entrega el trabajo en la Entrega el trabajo
Puntualidad. Se retrasa 7 día de 7 día en la
trabajo en la fecha en la fecha
en la entrega entrega del
fecha y hora estipulada con estipulada con un
del trabajo. trabajo o no lo
estipulada. un retraso en 1 retras de 4 días.
entrega.
  día.

Instrucciones
Trabajo individual
Subir al Moodle y a su drive personal
Fecha de entrega 21-10-2020 hrs 20:00
Los pares realizar los números pares y los impares los números impares

Realizar cada clase con listas genéricas

.
1. Defina una clase y cree un objeto con tres atributos (con sus respectivas
propiedades) para leer las longitudes de los tres lados de un triángulo (L1, L2
y L3) y un método (función) que calcule el área del mismo de acuerdo con la
siguiente fórmula:

Area = ( T (T-L1) (T-L2) (T-L3) ) ^ 0.5


donde: T = (L1 + L2 + L3 ) / 2

No imprima el resultado desde el método que calcula, sino desde el método


principal Main().

2. Una fábrica de tinacos para almacenar agua desea un sistema orientado a


objetos que tenga una clase con los atributos, métodos y propiedades
necesarios para capturar el radio y la altura de un cilindro y calcular su
volumen. Investigue la fórmula correspondiente.

3. Una constructora requiere un sistema orientado a objetos que tenga una


clase con los atributos, métodos y propiedades necesarios para capturar las
coordenadas de dos puntos y calcular la distancia entre ellos. Investigue la
fórmula.

4. . Un restaurante de comida rápida desea un sistema orientado a objetos que


tenga una clase con los atributos, métodos y propiedades necesarios para
calcular la cuenta de consumo de una de sus órdenes, para ello debe crear un
objeto donde almacene la cantidad de alimentos solicitados de acuerdo al
siguiente menú:

Hamburguesa sencilla ( $15)


Hamburguesa con queso ($18)
Hamburguesa especial ($20)
Papas fritas ( $8)
Refresco ($5)
Postre ($6)

TOTAL $
Considere que el precio de cada artículo está definido (es fijo y no debe
capturarse) y que la clase debe implementar un método (función) que calcule
y devuelva el importe a pagar.

5. . Una agencia de autos desea un sistema orientado a objetos que tenga una
clase con los atributos, métodos y propiedades necesarios para calcular el
costo de un automóvil nuevo para el consumidor, siendo este la suma total del
costo del vehículo, del porcentaje de ganancia del vendedor y de los
impuestos locales o estatales aplicables (sobre el precio de venta).
Supóngase una ganancia del vendedor del 12% en todas las unidades y un
impuesto del 6% y capture el costo del automóvil e imprima el costo final para
el consumidor.

6. . Un profesor de matemáticas necesita un sistema orientado a objetos que


tenga una clase con los atributos, métodos y propiedades necesarios para
capturar el valor de un número y calcular su raíz cúbica.

7. . Un ingeniero necesita un sistema orientado a objetos que tenga una clase


con los atributos, métodos y propiedades necesarios para capturar el valor de
la variable X y resolver la ecuación Y = 4X3 + 2X2 + 6X – 5

8. En el tercer semestre de la Universidad Simón Patiño existe un grupo de estudiantes. Se desea


crear un archivo de datos de cada uno de los estudiantes, los datos que deben registrarse de cada
alumno son: El nombre, apellido, nota del examen del primer parcial, nota del segundo parcial y la
nota final. El programa debe:
a) Crear el archivo de los estudiantes del tercer semestre
b) Listar los alumnos reprobados
c) Listar los alumnos aprobados
d) Sacar el promedio final del curso
e) Imprimir el nombre y la nota del mejor alumno del primer parcial
f) Imprimir el nombre y la nota del peor alumno del segundo parcial
g) Imprimir los nombres y notas del mejor y peor alumno de todo el semestre

class CLDatos
{
private string nombre;
private string apellido;
private int n1;
private int p2;
private int nf;

public CLDatos()
{

}
public CLDatos(string nombre, string apellido, int n1, int p2, int nf)
{
this.nombre = nombre;
this.apellido = apellido;
this.n1 = n1;
this.p2 = p2;
this.nf = nf;
}

public string Nombre { get => nombre; set => nombre = value; }
public string Apellido { get => apellido; set => apellido = value; }
public int N1 { get => n1; set => n1 = value; }
public int P2 { get => p2; set => p2 = value; }
public int Nf { get => nf; set => nf = value; }
}
class Program
{
public void menu()
{
Console.WriteLine("ESTUDIANTES TERCER SEMESTRE DE LA UNIVERSIDAD SIMON
PATIÑO ");
Console.WriteLine("1.Carga de estudiantes");
Console.WriteLine("2.Listar estudiantes reprobados");
Console.WriteLine("3.listar estudiantes aprobados ");
Console.WriteLine("4.sacar el promedio final del curso");
Console.WriteLine("5.nombre y nota del mejor alumno del primer parcial");
Console.WriteLine("6.nombre y nota del peor alumno del segundo parcial");
Console.WriteLine("7.nombres y notas del mejor y peor alumno de todo el semestre");
Console.WriteLine("8.salir");

Console.Write("Elija Opcion--->");
}
public void carga_est(List<CLDatos> lista)
{
int cant;
Console.Write("Cantidad de Persona: \t");
cant = int.Parse(Console.ReadLine());

for (int i = 1; i <= cant; i++)


{
CLDatos est = new CLDatos();
Console.Write("ingrese el nombre del estudiante # " + i + " \t: ");
est.Nombre = Console.ReadLine();
Console.Write("ingrese el apellido del estudiante # " + i + " \t: ");
est.Apellido = Console.ReadLine();
Console.Write("ingrese la nota del primer parcial: " + "\t");
est.N1 = int.Parse(Console.ReadLine());
Console.Write("ingrese la nota del segundo parcial: "+ "\t");
est.P2 = int.Parse(Console.ReadLine());
Console.Write("ingrese la nota final: "+"\t");
est.Nf = int.Parse(Console.ReadLine());
lista.Add(est);

}
public void listar_est_repro(List<CLDatos> lista)
{

Console.WriteLine("LISTADO DE ALUMNOS");
Console.WriteLine("-------------------------------------------------------------");
Console.WriteLine("NOMBRES\t APELLIDO\t NOTA PRIMER PARCIAL\t NOTA
SEGUNDO PARCIAL\t NOTA FINAL");
Console.WriteLine("------------------------------------------------------------");

foreach (CLDatos list in lista)


{

if (list.N1 < 51 && list.P2 < 51 && list.Nf < 51)


{
Console.WriteLine("{0}\t{1}\t{2}\t{3}\t{4}", list.Nombre, list.Apellido, list.N1, list.P2,
list.Nf);
}

}
Console.WriteLine();

}
public void listar_est_apro(List<CLDatos> lista)
{
Console.WriteLine("LISTADO DE ALUMNOS");
Console.WriteLine("-------------------------------------------------------------");
Console.WriteLine("NOMBRES\t APELLIDO\t NOTA PRIMER PARCIAL\t NOTA
SEGUNDO PARCIAL\t NOTA FINAL");
Console.WriteLine("------------------------------------------------------------");
foreach (CLDatos list in lista)
{

if (list.N1 >= 51 && list.P2 >= 51 && list.Nf >= 51)


{
Console.WriteLine("{0}\t{1}\t{2}\t{3}\t{4}", list.Nombre, list.Apellido, list.N1, list.P2,
list.Nf);
}

}
Console.WriteLine();

public void promedio_final_curso(List<CLDatos> lista)


{
int suma = 0;
double prom;
foreach (CLDatos list in lista)
{

suma = suma + list.Nf;

}
Console.WriteLine();
prom = suma / lista.Count;
Console.WriteLine("el promedio final del curso es: {0}", prom);

}
public void nota_mejor_p1(List<CLDatos> lista)
{
int may = 0;
string n1 = "";
foreach (CLDatos list in lista)
{

if ( list.N1> may)
{
may = list.N1;
n1 = list.Nombre;
}

}
Console.WriteLine();
Console.WriteLine("{0} tiene la nota de: {1}", n1, may);
}
public void nota_peor_p2(List<CLDatos> lista)
{
int peor = 1000;
string n2 = "";
foreach (CLDatos list in lista)
{
if (list.P2 < peor)
{
peor = list.P2;
n2 = list.Nombre;
}

}
Console.WriteLine();
Console.WriteLine("{0} tiene la nota de: {1}", n2, peor);

}
public void nota_sem(List<CLDatos> lista)
{
int may = 0, men= 1000;
string n1 = "", n2 = "";
foreach (CLDatos list in lista)
{

if ( list.N1> may && list.P2 > may && list.Nf > may)
{
may = list.N1;
n1 = list.Nombre;
}
if (list.N1 < men && list.P2 < men && list.Nf <men)
{
men = list.N1;
n2 = list.Nombre;
}
}
Console.WriteLine("{0} {1}", n1, may);
Console.WriteLine("{0} {1}", n2, men);
}

static void Main(string[] args)


{
int op = 0;

Program p = new Program();


List<CLDatos> lista = new List<CLDatos>();

do
{
p.menu();
op = int.Parse(Console.ReadLine());
Console.Clear();
switch (op)
{
case 1:
{
p.carga_est(lista);
Console.ReadKey();
Console.Clear();
break;
}

case 2:
{
p.listar_est_repro(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 3:
{
p.listar_est_apro(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 4:
{

p.promedio_final_curso(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 5:
{
p.nota_mejor_p1(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 6:
{
p.nota_peor_p2(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 7:
{
p.nota_sem(lista);
Console.ReadKey();
Console.Clear();
break;

}
case 8:
break;
default:
{
Console.WriteLine("error no existe ");
Console.ReadKey();
Console.Clear();
break;

}
0

} while (op != 8);

}
}

9. Un profesor de matemáticas necesita un sistema orientado a objetos que


tenga una clase con los atributos, métodos y propiedades necesarios para
capturar la medida de un ángulo en grados y convertirla a radianes.

1
Cotangente β=
Tangente β

Además, en C# las funciones trigonométricas no aplican los valores de los


ángulos en grados
(sino en radianes).

10. Definir una clase denominada Punto que represente las coordenadas x e y de un
punto plano. Introduzca por teclado dos puntos y obtenga un tercer punto z suma de
los dos anteriores, tal que su nueva coordenada x es la suma de las coordenadas del
nuevo punto z.

class Punto
{
private int x;
private int y;
//private int x2;
//private int y2;

public Punto()
{

}
public Punto(int x, int y)
{
this.x = x;
this.y = y;

public int X { get => x; set => x = value; }


public int Y { get => y; set => y = value; }

class Program
{
public void menu()
{
Console.WriteLine("menu registro de las cordenadaas ");
Console.WriteLine("1. carga de puntos");
Console.WriteLine("2. listado de puntos");
Console.WriteLine("3. suma de puntos");
Console.WriteLine("4. salir");

}
public void carga_puntos(List<Punto> lista)
{
int cant;
Console.WriteLine("introduzca cuantos puntos desea hacer");
cant = int.Parse(Console.ReadLine());
for (int i = 1; i <= cant; i++)
{
Punto valor = new Punto();
Console.WriteLine("ingrese el valor de x ");
valor.X = int.Parse(Console.ReadLine());
Console.WriteLine("ingrese el valor de y1");
valor.Y = int.Parse(Console.ReadLine());
lista.Add(valor);

}
public void lista_puntos(List<Punto> lista)
{
foreach (Punto list in lista)
{
Console.WriteLine("punto ({0},{1})", list.X, list.Y);

}
public void suma_puntos(List<Punto> lista)
{
Punto valor = new Punto();
int sumax = 0;
int sumay = 0;

foreach (Punto list in lista)


{
sumax = sumax + list.X;
sumay = sumay + list.Y;

}
Console.WriteLine("punto z ({0},{1})", sumax, sumay);

}
static void Main(string[] args)
{
Program p = new Program();
List<Punto> lista = new List<Punto>();

int op = 0;
do
{
p.menu();
op = int.Parse(Console.ReadLine());
switch (op)
{
case 1:
{
p.carga_puntos(lista);
Console.ReadKey();
Console.Clear();
break;
}
case 2:
{
p.lista_puntos(lista);
Console.ReadKey();
Console.Clear();
break;
}
case 3:
{
p.suma_puntos(lista);
Console.ReadKey();
Console.Clear();
break;
}
case 4:
{
break;
}

default:
break;
}

} while (op != 4);

}
}

También podría gustarte