Universidad Católica del Norte Escuela de Ingeniería Prueba Corta 1 Estructura de Datos y Archivos Profesor: Eric Ross <eross@ucn.cl> Fecha: 01 de Octubre de 2013 Nombre Alumno: Email del Alumno: Problema 1 (100 puntos). En el mundo de la música, las notas musicales tienen los siguientes nombres, en orden de creciente tono: Do, Re, Mi, Fa, Sol, La, Si. Después del Si la secuencia vuelve a partir desde Do. Lo que no mucha gente sabe, es que entre la mayoría de dichas notas, existen notas intermedias, llamadas "sostenidos", y se marcan poniendo un # después de la nota base. Escribiendo la escala completa se tiene: Do Do# Re Re# Mi Fa Fa# Sol Sol# La La# Si Do Do# Re ..... Nótese que entre el Mi y el Fa no hay un sostenido. Lo mismo pasa entre el Si y el Do. En esta escala completa, el intervalo entre una nota y la siguiente se llama un "semitono": entre Do y Do# hay UN semitono; entre Sol y Sol# hay UN semitono; entre Si y Do hay UN semitono. En la música, muchas veces sucede que una composición debe "transponerse": esto significa que se debe cambiar de tono, o sea, una secuencia de notas se debe subir o bajar una cantidad dada de semitonos. Por ejemplo, Secuencia original: Do Fa Sol La Sol Transposición de +2 semitonos: Re Sol La Si La Transposición de -2 semitonos: La# Re# Fa Sol Fa Su misión de hoy es crear una aplicación que a partir de una secuencia de notas, permita transponerlas, subiendo o bajando una cantidad de semitonos. La pantalla de la aplicación debe tener la siguiente forma: Universidad Católica del Norte Escuela de Ingeniería Prueba Corta 1 Estructura de Datos y Archivos Profesor: Eric Ross <eross@ucn.cl> En el TextBox superior se debe permitir escribir la secuencia de notas. Esta secuencia se ingresará separando cada nota por un espacio en blanco. El TextBox intermedio sirve para indicar la cantidad de semitonos a transponer. Al presionar el botón "Transponer!", la aplicación debe realizar la transposición de la secuencia de notas original, y escribir el resultado en el TextBox inferior. Al presionar el botón "Guardar", se debe guardar en el archivo "c:\transposicion.txt" tanto la secuencia original, como la secuencia transpuesta, indicando la cantidad de semitonos. Por ejemplo: Observación 1: Al ingresar las notas en la aplicación, no se debe hacer diferencias entre mayúsculas y minúsculas: "Do" es lo mismo que "do". Observación 2: En el archivo de salida no es necesario escribir las notas tal como fueron ingresadas, o sea, se acepta que si se ingresó "Do", el archivo de salida diga "do". Tips: Dim a As String a = "hola,como,estas" Dim p As String() p = a.Split(",") MsgBox(p(0)) ' hola MsgBox(p(1)) ' como MsgBox(p(2)) ' estas Dim m as String m = a.ToUpper() MsgBox(m) ' HOLA,COMO,ESTAS Dim s as String s = a.Substring(4, 6) MsgBox(s) ' ,como, Nota: Grabe el proyecto, comprímalo en un archivo ZIP o RAR, y suba dicho archivo a Educ@, en la sección Trabajos > PruebaCorta1. El sistema se cierra automáticamente. No hay entregas pasada la hora de término. Hora de Cierre: 11.25