Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Profesores:
Neiner Maximiliano
Villegas Octavio
Nota:
Esta guía forma parte del trabajo práctico número uno (TP Nro 1), que será entregado en
dos partes (una antes del primer parcial y la otra antes del segundo parcial), las fechas de
entrega serán publicadas por el profesor de Laboratorio III a su debido tiempo.
Nota:
Tener en cuenta que de esta forma todos nuestros proyectos quedaran con estas opciones,
si se elige la primera forma solo se cambiarán los valores para ese proyecto, debiendo repetir
el mismo procedimiento cada vez que se cree un nuevo proyecto.
3. Se recomienda utilizar los prefijos para cada elemento dentro de las aplicaciones de
tipo Windows Form como las convenciones al nombrar clases, métodos, atributos,
etc., ya que se tendrán en cuenta al momento de evaluar este trabajo práctico.
Aplicación Nº 1
Se requiere crear la clase abstracta SerHumano que posea los siguientes atributos privados:
_nombre (String)
_peso (Single)
_altura (Single)
_sexo (String)
Además tendrá los siguientes métodos:
Comer(String)
Dormir (método abstracto)
Aplicación Nº 2
Escribir una aplicación con estos dos espacios de nombres (NameSpaces): Geometría y
PruebaGeometría.
Dentro del espacio de nombres Geometría se deberán escribir dos clases: Punto y Cuadrado.
La clase Punto ha de tener dos campos de sólo lectura: X e Y (que serán las coordenadas del
punto).
Elaborar una aplicación que, al „clickear‟ el botón, muestre el mensaje: “¡¡¡Hola mundo VB
Net!!!”. Para ello se deberá tener: un formulario llamado „frmSaludo‟ que contenga un botón
(btnSaludar) y una etiqueta (lblSaludo).
El diseño será como el siguiente:
Realizar una aplicación que lea un número entero de un TextBox (txtNumero) y muestre en
un ListBox (lstTabla) la tabla de multiplicar de dicho número. El diseño de entrada y salida
debe ser similar al siguiente:
Escriba dos funciones que reciban como argumento una cadena de caracteres. Una de las
funciones devolverá la cadena en forma invertida y la otra la retornará sus letras ordenadas
alfabéticamente.
Elabore una aplicación que permita leer n números de tipo entero, y a continuación los
visualice ordenados en forma ascendente o descendente.
Construya una aplicación que permita el ingreso de un número entero y muestre en pantalla
la siguiente información:
1) Cantidad de cifras
2) Suma de cifras impares
3) Suma de cifras pares
4) Suma total de cifras
5) Cifra mayor
6) Cifra menor
7) Divisores de dicho número.
Elaborar una aplicación que permita presentar los diferentes tipos de formularios de Visual
Basic. Para ello utilice como contenedor principal un formulario MDI, tal como se muestra en
la siguiente figura:
Elaborar una aplicación que permita ingresar los datos de una persona, guardar estos datos
en una lista genérica y mostrarlos en un ListBox.
Para esto se debe sobrescribir el método ToString de la clase Persona. Los atributos de
esta clase son:
Nombre, Apellido, Edad, Sexo (enumerado), Profesión (enumerado) y los atributos que
corresponden a los intereses que son de tipo Booleano: Cine, Deportes e Internet.
Utilizar la función InputBox para el ingreso de la edad, y un MessageBox para confirmar
la operación de cancelación (que eliminará al último elemento de la lista genérica).
Al pulsar el botón „Salir‟ se le dará al usuario la oportunidad de guardar los datos de la lista
genérica en un archivo de texto.
Elaborar una aplicación que permita calcular el salario neto de un empleado en función del
número de horas trabajadas, del pago por hora de trabajo y de un descuento fijo al sueldo
bruto del 20%.
Al pulsar el botón „Aceptar‟, se creará un objeto de tipo „Empleado‟ (usted deberá diseñar la
clase Empleado). Dicha clase es la que contendrá todos los métodos necesarios para poder
realizar el ejercicio. Además se deberá realizar un archivo de texto con toda la información
necesaria para poder entregarle al empleado su recibo de sueldo. Para ello utilizar la sobre
escritura del método ToString de Empleado.
Se desea elaborar la boleta de pago de los trabajadores de una fábrica. Para ello se cuenta
con los siguientes datos de entrada:
Además, se sabe que los trabajadores trabajan en dos turnos: diurno y nocturno, y que la
tarifa por las horas extras diurnas es de $10 y por las horas extras nocturnas es de $15.
Los descuentos a aplicar son sobre el sueldo básico y se obtienen de la siguiente manera:
Finalmente el sueldo neto del trabajador se calcula mediante las siguientes expresiones:
Ingresos = Sueldo Básico + Cantidad de horas Extras * Pago por hora Extra
Egresos = Renta + Fonavi + AFJP
Sueldo Neto = Ingresos - Egresos
Se debe crear una clase llamada Boleta que contenga los siguientes atributos:
Nombre, Apellido, Sueldo, Horas extras, Turno, Rentas, Fonavi, AFJP.
Todos los métodos estarán en la clase Boleta.
Guardar los datos en un archivo de texto en el directorio de la aplicación al pulsar el botón
„Aceptar‟.
Se desea construir una aplicación que calcule las ventas totales al final del día, así como los
impuestos a pagar (21% del total).
Imprimir el Ticket con el Nombre del local, la fecha, los ítems, la facturación total y el monto
a pagar, para esto guardar los datos en un archivo de texto que mantenga los datos de los
tickets anteriores.
Promedio Puntuación
9-10 A
7-8 B
4-6 C
2-3 D
0-1 E
Al pulsar el botón „Aceptar‟, se creará un objeto de tipo „Estudiante‟ (usted deberá diseñar la
clase Estudiante).
Profesores Neiner – Villegas Guía VB.net Página 10
Dicha clase es la que contendrá todos los métodos necesarios para poder realizar el ejercicio.
Utilizar los eventos Validating y Validated para validar el ingreso correcto de las notas.
Se tiene un cajero automático el cuál dispone de los siguientes billetes: $ 2, $ 5, $ 10, $ 20,
$ 50 y $ 100. Se pide elaborar una aplicación que permita la lectura de la cantidad a retirar e
indique el menor número de billetes a utilizar.
Si hay un resto menor a $ 2, indicarlo por medio de un MessageBox.
No se debe permitir la escritura en los TextBoxes que muestran la cantidad de billetes a
extraer.
Los manejadores de los eventos „Click‟ de los botones „Aceptar‟ y „Limpiar‟ deben tener el
siguiente comportamiento:
1. Asignar, en el evento „Load‟ del formulario, el manejador para el evento „Click‟
del botón „Aceptar‟. Dicho manejador, llamado Calcular, tendrá la lógica para
poder realizar la operación requerida por el ejercicio.
2. Al hacer „Click‟ en „Aceptar‟ se removerá el manejador Calcular para el evento
„Click‟ del botón „Aceptar‟, se le agregará un manejador al botón „Limpiar‟ y por
último se le asignará el procedimiento Informar al evento „Click‟ del botón
„Aceptar‟.
3. Al hacer „Click‟ en „Limpiar‟ se deberán quitar los manejadores que tienen los
eventos „Click‟ de los botones „Limpiar‟ y „Aceptar‟ y se le asignará el
procedimiento Calcular al evento „Click‟ del botón „Aceptar‟.
Realizar una aplicación que simule una calculadora que realice las cuatro operaciones básicas
(suma, resta, multiplicación y división).
Habrá solo un procedimiento encargado de manejar el evento „Click‟ de todos los botones.
Sólo los botones numéricos tendrán, al momento de abrir la aplicación, agregado dicho
manejador. El manejador se deberá llamar ManejadorCentral.
Al pulsar el primer botón numérico se debe agregar, para el evento „Click‟ de los botones de
las operaciones, el ManejadorCentral, que será removido al pulsar alguna operación (+, -,
* o /). En ese momento el display (TextBox) quedará en blanco y con foco, previamente la
aplicación deberá guardar el primer número ingresado y la operación a realizar.
Una vez que se vuelva a pulsar algún botón numérico, se tendrá que agregar al evento „Click‟
del botón calcular (=) el ManejadorCentral, que se quitará cuando dicho botón sea
pulsado por el usuario. Al mismo tiempo se deberá realizar la operación matemática que
eligió el usuario, mostrando el resultado en el display (TextBox).
Nota:
No se podrá escribir directamente en el display, únicamente se utilizarán los botones de la
aplicación.
Todos los manejadores de eventos serán agregados y quitados de forma dinámica.
Para realizar la operación matemática se creará un objeto de tipo Delegate (con la firma
que corresponda).
La clase Calculadora dispondrá de un método de clase para realizar las cuatro operaciones
básicas.
Se guardará en un archivo de texto las operaciones y los resultados de cada operación
realizada por el usuario con la fecha y hora en que se realizó.
Se necesita crear una aplicación que permita cargar objetos de tipo Persona y mostrar la
información ordenadas por apellido, nombre o DNI.
Para esto es necesario crear la clase Persona con los siguientes atributos privados:
Apellido (String)
Nombre (String)
DNI (Double)
Construir un Control de Usuario que herede de la clase TextBox. Dicho control, que
llamaremos “TxtSoloNumeros”, deberá permitir la entrada únicamente a los dígitos del 0 al 9,
cualquier otro carácter no se deberá „escribir‟ en el cuadro de texto.
Tener en cuenta tecla de retroceso (BackSpace), para poder borrar algún número.
Mejorar el Control de Usuario del punto anterior para que se puedan escribir números
enteros, decimales, binarios, octales o hexadecimales.
Para esto se deberá crear una propiedad llamada “TipoDeDato” que admita las
enumeraciones del enumerado „TipoDatos‟ (Entero, Doble, Binario, Octal y Hexadecimal).
Aplicación Nº 20
Realizar una aplicación que acepte fechas con el siguiente formato numérico: “dd, mm, aaaa”
en un Control de Usuario que además solo permita ingresar los números correctos.
Este control está compuesto por tres TextBoxes y expondrá una propiedad pública de solo
lectura llamada “FechaEnLetras” que tendrá un valor de tipo String con la fecha ingresada.
Esta propiedad solo tendrá valores luego de haberse ingresado el último dígito del año.
A manera de ejemplo considere lo siguiente:
Cuando el usuario haga „Click‟ en el botón „Salir‟ se deberá observar el siguiente mensaje:
Se necesita crear un TextBox que permita el ingreso de cualquier carácter salvo aquel que se
desea ocultar.
Dicho control debe tener la propiedad de lectura-escritura llamada “LetraOculta” en la
cuál se indicará el carácter a ocultar.
Se podrá cambiar el carácter tanto en tiempo de diseño como en tiempo de ejecución.
Para poder realizar esto se pide la utilización de una enumeración y una propiedad llamada
“TipoDeLetra”.
Elaborar una aplicación que permita calcular la edad de una persona y la cantidad de días
vividos hasta la fecha tomando como punto de partida su fecha de nacimiento.
El diseño de la interfaz debe ser similar a la figura mostrada anteriormente.
Se pide que se cree un Control de Usuario llamado “FechaValida” (control solo compuesto
de un TextBox) que nos permita solo el ingreso correcto de una fecha y complete
automáticamente las barras (/) que separan las cifras.
Además, contará con sus respectivas propiedades publicas, las cuales permitirán cambiar los
colores de fondo ya sea en forma dinámica (en tiempo de ejecución) como en forma estática
(en tiempo de diseño).
Realizar un Control de Usuario que tenga la funcionalidad del clásico juego de TaTeTi.
Dicho control estará compuesto de nueve botones y un único manejador de eventos (para el
evento „Click‟ de cada uno de los botones).
La aplicación deberá informar cuál de los dos participantes ganó si la “X” o el “O”.
Aplicación Nº 28 (Alarma)
Construir un Control de Usuario que se llamará “Alarma” que tendrá como finalidad
generar un evento cuando la fecha y hora actual coincida con la fecha y hora programada
(fecha y hora de la alarma).
La interfaz del control „Alarma‟ contendrá:
Un evento: TiempoAgotado
Aplicación Nº 29 (Termómetro)
El evento de esta clase se disparará cuándo la temperatura a medir (que se ingresa por la
propiedad) es mayor o igual al atributo „valorMaximo‟.
Un centro numérico es un número que separa una lista de números enteros (comenzando en
1) en dos grupos de números, cuyas sumas son iguales.
El primer centro numérico es el 6, el cuál separa la lista (1 a 8) en los grupos: (1; 2; 3; 4; 5)
y (7; 8) cuyas sumas son ambas iguales a 15.
El segundo centro numérico es el 35, el cuál separa la lista (1 a 49) en los grupos: (1 a 34) y
(36 a 49) cuyas sumas son ambas iguales a 595.
Se pide elaborar una aplicación que calcule los centros numéricos entre 1 y N (se debe
ingresar un número para operar).
Permitir el ingreso de números que no superen los cinco dígitos.
Un número perfecto es un entero positivo, que es igual a la suma de todos los enteros
positivos (excluido el mismo) que son divisores del número.
El primer número perfecto es 6, ya que los divisores de 6 son 1, 2, 3 y 1 + 2 + 3 = 6.
Escribir una aplicación que encuentre todos los números perfectos para el número límite que
se ingresará en la aplicación.
El botón “Cancelar” cancelará la operación (Utilizar el control BackGroundWorker).
Utilizar un control ProgressBar para seguir el progreso de la operación.
Se desea elaborar una aplicación que permita controlar el proceso de matrícula en un curso
de computación y guarde los datos en un DataSet llamado “dsInscripcion” con los
siguientes DataTables (“dtMatricula”, “dtCurso” y “dtLocalidad”).
Los DataTables “dtCurso” y “dtLocalidad” deberán contener al menos cinco registros cada
uno.
Los datos que se deberán guardar en “dtMatricula” son:
1) Curso en que se matriculó el alumno.
2) Fecha de la matrícula.
3) Apellidos y nombres del alumno.
4) Sexo del alumno.
5) Dirección del alumno.
6) Localidad de residencia del alumno.
Crear un programa que permita crear distintos tipos de vehículos, para esto tener en cuenta
los siguientes puntos:
Desarrollar una aplicación que utilice DataBinding para poder recorrer todos los registros
del DataSet “dsAlumnos” permitiendo Añadir, Borrar y Editar todos los datos de los alumnos.
También debe permitir realizar una búsqueda de un alumno por su nombre y apellido.
Para esto Se deberá crear un formulario con un menú, desde el cuál nos permita habilitar un
botón, que al hacerle click con el mouse, nos muestre un InputBox en donde se ingrese la
palabra que se tiene que completar. Esta palabra no puede ser mayor a 6 caracteres, de lo
contrario, se debe solicitar su ingreso nuevamente.
En el formulario se pondrán tantos Labels en forma paralela, como letras tenga la palabra a
descubrir.
Realizar una figura con Labels ocultos, que se muestren a medida que se ingresen letras
incorrectas.
Se debe lograr, agregando y quitando manejadores, que se no pueda ingresar una nueva
palabra hasta que empiece otro juego nuevo.
Crear una clase con un método estático que reciba por referencia una palabra y la
transforme a minúsculas. Este método lo utilizaremos para la palabra del InputBox y para las
letras del TextBox.
Crear una opción en el menú que nos permita ingresar el nombre del jugador.
Si dicho jugador gana, contabilizar los errores cometidos para guardarlo en una lista
(ListBox) de los que cometieron menos errores, esta lista estará siempre a la vista y
ordenada de menor a mayor cantidad de errores cometidos. Si no se ingresa ningún nombre
en un juego nuevo, este se guardara en la lista como "Anónimo".
Aplicación NameSpace My