Subido por Aarón Macias

Practica 1

Anuncio
Practica 1
Entrega individual: deberá enviarla al sistema moodle en un archivo compreso. Recuerde que es
indispensable que sus códigos estén documentados.
Objetivo practico: El alumno demostrara el domino en las diversas estructuras de control y en el
flujo de entrada/salida para resolver problemas de mediana complejidad que incorporen la
implementación y manipulación de referencias dinámicas y métodos estáticos.
Programación: Resuelva los siguientes problemas, recuerde que debe emplear los objetos
incorporados en System.out y Scanner para manejar el flujo de salida/entrada respectivamente.
Además de emplear los operadores new para el diseño de arreglos dinámicos. Recuerde construir
métodos estáticos que le permitan elevar el potencial a nivel de programación, generando
programas altamente independientes de los datos.
1. Escriba un programa que calcule y visualice las n filas del triángulo de Pascal (n es introducida
desde teclado). Realice para su construcción dos versiones una sin emplear arreglos y otra
empleándolos.
1
1
1
1
1
1
2
3
4
1
3
6
1
4
1
Cada fila comienza y termina con un 1 y, para el resto de los elementos, su valor es la suma de los
dos elementos que están justo encima de él. Si esta forma de visualización le parece demasiado
compleja, puede visualizarse el triangulo como:
1
1
1
1
1
1
2 1
3 3 1
4 6 4 1
Las filas de el triangulo de Pascal son convencionalmente enumeradas comenzando con la fila 0,
y los numero en las filas impares son por lo general relativamente escalonados a los números de
las filas pares.
La construcción está relacionada con el coeficiente binomial (combinaciones de n en k) establecido
por:
Para cualquier entero no negativo n y cualquier entero k entre 0 y n.
2. Realice un programa que lea una cadena de caracteres, la escriba al revés transformando las
mayúsculas en minúsculas y viceversa, además mostrará el número de veces que aparecen
los dígitos en la cadena.
Por ejemplo:
Ingresa -> Buenos Aires 115B
Salida -> b511 SERIa SONEUb digitos -> 3
3. Realice una función, a la cual se le pasen como parámetro dos cadenas de caracteres de
tamaño variable (s1 y s2), la función deberá de regrese el número de veces que aparece la
cadena s1 en la cadena s2.
Por ejemplo:
Ingresa cadena s1-> si
Ingresa cadena s2 -> si y solo si
Salida -> total 2
4. Desarrolle un programa que genere un número aleatorio (entre 30 y 60) y que nos permita
adivinar el número del que se trata en 5 intentos, para esto deberá de permitir al usuario
capturar desde teclado valores que permitan corroborar nuestra suposición del número que se
trata. Al final, en caso de haber acertado nos deberá informar el número de intentos fallidos, y
en caso contrario nos informara los intentos y el valor del número que se trato de adivinar.
5. Construya un programa que capture un numero y de cómo resultado el valor del numero en
Romano. La numeración romana utiliza siete letras mayúsculas a las que corresponden los
siguientes valores.
Letras
Valores
I
1
V
5
X
10
L
50
C
100
D
500
M
1000
Los múltiples símbolos pueden ser combinados para producir cantidades entre estos valores,
siguiendo ciertas reglas en la repetición. En los casos en que sea más pequeño, se permite a
veces colocar un valor menor (sustrayendo), el símbolo con un valor menor colocado antes que
un valor más alto, de manera que, por ejemplo, se puede escribir IV para cuatro, IX para
nueve, mientras que XXX representa el 30.
Ejemplos:
XVI = 16, LXVI = 66, MCMXCVIII = 1998
6. Elabore un programa empleando funciones y parámetros de manera que solucione ecuaciones
de segundo grado, recuerde que los valores para a, b y c serán ingresados por el usuario.
Dada la ecuación de segundo grado:
Se pueden presentar tres casos distintos:
discr
>0.0
las
dos
hay que calcular el discriminante:
o
Si
raíces
son
reales
y
distintas,
y
valen:
o
Si discr = 0.0 las dos raíces son reales e iguales, y valen:
o
Finalmente, si discr < 0.0 las dos raíces son complejas conjugadas. Las partes real e imaginaria
valen:
7. Realice un programa empleando funciones y parámetros que sea capaz de leer como entrada
una cantidad entera comprendida entre 0 y 1100; y de cómo resultado la cantidad con letra, por
ejemplo:
valore de entrada -> 16
valor de salida “dieciséis“
valore de entrada -> 1022
valor de salida “un mil veintidós“
8. Kitty envía un tipo de mensajes originales a su amigo Garf. Para escribir un mensaje, ella elije
una palabra W y un numero n, y replica W n veces de manera horizontal. De manera que repite
esta cadena en la siguiente línea pero rotando un carácter a la izquierda. Y ella repite este
proceso de salida rotada hasta que la palabra W aparece desplegada en la primer columna del
patrón rectangular que ella produce. Como ejemplo, ella proporciona la palabra “Hello” y el
numero 3, por lo que obtiene:
HelloHelloHello
elloHelloHelloH
lloHelloHelloHe
loHelloHelloHel
oHelloHelloHell
Diseñe un programa empleando funciones y parámetros que reciba de entrada varios casos de
prueba de manera iterativa. Cada caso de prueba tiene una palabra y un entero positivo que
debería de generar el correspondiente patrón rectangular. La cadena son caracteres de la A a
la Z (mayúsculas/minúsculas) y el numero es un digito de 1 a 9. La entrada será leída desde
teclado y la salida será un patrón rectangular correspondiente a la entrada que se halla
procesado. Punto en una entrada indica el fin de la captura.
Descargar