Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Practica 3

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Universidad Nacional Autónoma de Nicaragua, León

Facultad de Ciencias y Tecnología


Departamento de Computación

Componente: Programación Orientada a Objetos

Práctica #3:

Título: EJERCICIOS RESUELTOS Y PROPUESTOS SOBRE LOS

ELEMENTOS DEL LENGUAJE C#, Parte 2


Objetivos:

➢ Uso de los tipos de datos, literales, constantes, variables, conversión entre tipos
primitivos, operadores y orden de evaluación de los operadores.

Elaborado por:

➢ MSc. Álvaro R. Altamirano Osorio.

“A la libertad por la Universidad”


Programación Orientada a Objetos

1. Ejercicios Resueltos

1.1. Ejercicio resuelto 1

Analice y compile el siguiente código, donde se hace uso de matrices del lenguaje C#:

int[] lista = null;


int n = 0;
double suma = 0, prom = 0;

int[,] mat = null;


int f, c;

List<int> listaEnteros = new List<int>();

Console.WriteLine("Ingrese el numero de elementos de la lista...");


n = int.Parse(Console.ReadLine());

lista = new int[n];

for(int i=0; i<n; i++)


{
Console.WriteLine("Ingrese el elemento " + i);
lista[i] = int.Parse(Console.ReadLine());
}

foreach (int elemento in lista)


suma += elemento;

prom = suma / n;

Console.WriteLine("El promedio de la lista es: " + prom);

Console.ReadKey();
Console.Clear();

Console.WriteLine("Ingrese el numero de filas y columnas de la matriz: ");


f = int.Parse(Console.ReadLine());
c = int.Parse(Console.ReadLine());

mat = new int[f, c];

for (int i = 0; i < f; i++)


for (int j = 0; j < c; j++)
{
Console.WriteLine("Ingrese el elemento (" + i + "," + j + ")");
mat[i,j] = int.Parse(Console.ReadLine());
}

Console.WriteLine("La matriz es...");

for (int i = 0; i < f; i++)


{
for (int j = 0; j < c; j++)

2
Programación Orientada a Objetos

Console.Write(mat[i,j] + "\t");
Console.WriteLine();
}

Console.ReadKey();
Console.Clear();

Console.WriteLine("Ingresando a la lista los numeros impares entre 0 y


20...");

for (int i = 0; i <= 20; i++)


if (i % 2 != 0)
listaEnteros.Add(i);

Console.WriteLine("Los numeros impares entre 0 y 20 son: ");

foreach (int num in listaEnteros)


Console.Write(num + "\t");
Console.WriteLine();

1.2. Ejercicio resuelto 2

Analice y compile el siguiente código, donde se hace uso de cadenas de caracteres del lenguaje
C#:

string cad1, cad2;

Console.WriteLine("Ingrese su nombre y apellido: ");


cad1 = Console.ReadLine();

cad2 = "Hola " + cad1 + ", tu nombre tiene " + cad1.Length + "
caracteres...";

Console.WriteLine(cad2);

char[] separador = { ' ' };

string[] aux = cad1.Split(separador);

foreach (string s in aux)


Console.WriteLine(s);

cad2 = cad1;

Console.WriteLine(cad2);

cad2 = cad2.Remove(aux[0].Length, aux[1].Length+1);

Console.WriteLine(cad2);

cad2 = cad1;

cad2 = cad2.Remove(0, aux[0].Length+1);

Console.WriteLine(cad2);

3
Programación Orientada a Objetos

Console.WriteLine(cad1.Substring(0,aux[0].Length));

Console.WriteLine(cad1.ToUpper(new CultureInfo("en-US", false)));

cad2 = cad1;

cad2 = cad2.Insert(aux[0].Length+1, "- ");

Console.WriteLine(cad2);

1.3. Ejercicio resuelto 3

Analice y compile el siguiente código, donde se hace uso de objetos del lenguaje C#:

public class Puerta


{

int ancho; // Ancho en centimetros


int alto; // Alto en centimetros
int color; // Color en formato RGB
bool abierta; // Abierta o cerrada

public void Abrir()


{
abierta = true;
}

public void Cerrar()


{
abierta = false;
}

public void SetAncho(int nuevoValor)


{
ancho = nuevoValor;
}

public void SetAlto(int nuevoValor)


{
alto = nuevoValor;
}

public void MostrarEstado()


{
Console.WriteLine("Ancho: {0}", ancho);
Console.WriteLine("Alto: {0}", alto);
Console.WriteLine("Color: {0}", color);
Console.WriteLine("Abierta: {0}", abierta);
}

} // Final de la clase Puerta


class Program
{
static void Main(string[] args)
{
Puerta p = new Puerta();

4
Programación Orientada a Objetos

Console.WriteLine("Valores iniciales...");
p.MostrarEstado();

Console.WriteLine();

Console.WriteLine("Vamos a abrir...");
p.Abrir();
p.SetAncho(80);
p.SetAlto(120);
p.MostrarEstado();

Console.ReadKey();
Console.Clear();

Puerta p2 = p; // ambas referencian al mismo objeto

p2.Cerrar();

p.MostrarEstado();
Console.WriteLine();
p2.MostrarEstado();
}
}

1.4. Ejercicio resuelto 4

Analice y compile el siguiente código, donde se hace uso de delegados del lenguaje C#:

delegate int Operar(int x1, int x2);


class Program
{
static int Sumar(int x, int y) {
return x + y;
}

static int Restar(int x, int y) {


return x - y;
}
static void Main(string[] args)
{
Console.WriteLine("Suma y resta de dos valores llamando directamente a los
métodos.");
Console.WriteLine(Sumar(10, 5));
Console.WriteLine(Restar(10, 5));
Operar delegado = Sumar;
Console.WriteLine("Suma y resta de dos valores llamando a los métodos a
través de delegados");
Console.WriteLine(delegado(10, 5));
delegado = Restar;
Console.WriteLine(delegado(10, 5));
Console.ReadKey();
}
}

5
Programación Orientada a Objetos

2. Ejercicios Propuestos
2.1. Ejercicio Propuesto 1

Escriba un programa en C# que almacene en un arreglo n calificaciones de la asignatura de


Programación Orientada a Objetos. El programa debe imprimir la cantidad de aprobados y
reprobados de dicha asignatura.

Realice dos versiones: una utilizando arreglos y otra utilizando el tipo List<>.

2.2. Ejercicio Propuesto 2

Escriba un programa en C# que almacene valores de tipo entero en una matriz cuadrado de tamaño
N * N. El programa debe imprimir la suma de los elementos de cada fila, cada columna y de ambas
diagonales.

2.3. Ejercicio Propuesto 3

Escriba un programa en C# que permita almacenar una lista de nombres (utilice el tipo List<>). A
continuación, el programa debe permitir realizar las siguientes operaciones:

• Buscar un nombre dentro de la lista.


• Eliminar un elemento de la lista.
• Imprimir por pantalla toda la lista.

6
Programación Orientada a Objetos

1. Bibliografía

• Ceballos, F.J. (2011). Microsoft C#, Curso de Programación, 2ª. Edición. Madrid, España.
Editorial RA-MA.

También podría gustarte