Universidad de Costa Rica
|
|
Duración: Ciento veinte minutos. Lea bien el examen antes de hacerlo. El examen es a libro abierto. Cuenta la documentación. Cuenta la redacción y la ortografía. Puede hacer el examen con lápiz. Resuelva las tres preguntas. ¡No haga más de lo que se le pide!
1) [33 pts]
{ int[] V = {1,2,3,4,5,6,7}; assertTrue( estaOrdenado( V ) ); } { int[] V = {7,6,5,4,3,2,1}; assertTrue( estaOrdenado( V ) ); } { int[] V = {1,2,3,4,4,5,6}; assertTrue( estaOrdenado( V ) ); } { int[] V = {1,2,3,4,4,5,4}; assertFalse( estaOrdenado( V ) ); } { int[] V = {1,1,1,1,1,1,0}; assertTrue( estaOrdenado( V ) ); } { int[] V = {0,1,1,1,1,1,0}; assertFalse( estaOrdenado( V ) ); } { int[] V = {1,0,0,0,0,0,0}; assertTrue( estaOrdenado( V ) ); } { int[] V = {1,0,0,0,0,0,1}; assertFalse( estaOrdenado( V ) ); }
1.a) [5 pts]
Especifique
el método estático estaOrdenado()
que
sirve para determinar si un vector tiene los valores en orden
creciente o decreciente.
1.b) [18 pts]
Implemente esAscendente( int V[] )
que determina
si un vector tiene los valores ascendentes, como ocurre con
{2,4,6,7}
y con {0,1,1,1,1}
.
1.c) [10 pts]
Suponga que ya usted cuenta con esDecendente()
y
también con esAscendente()
.
Implemente estaOrdenado()
.
2) [33 pts] El método estático
rectangular(desde,n,m)
graba un rectángulo de
números de "n" renglones y "m" columnas. El valor "desde"
indica cuál es es primer valor a grabar. Por ejemplo, al
ejecutar rectangular(13,3,5)
se obtendría este
rectángulo:
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
2.a) [6 pts]
Especifique
rectangular()
.
2.b) [27 pts]
Implemente rectangular()
.
3) [33 pts] Escriba un programa completo que lea números enteros y grabe con
System.out.print()
en renglones aparte
únicamente aquellos números que contengan el
dígito 3. Por ejemplo, si la entrada contiene los
siguientes números:
1314 1516 1718 1920 2122 23 2425 2627 12 897 557 889 774 135 8556 5789 3 78 3 23Después de ejecutar su programa se obtendría lo siguiente:
1314 23 135 3 3 23(Si usa el método
leeInt()
no hace falta que lo copie de nuevo).
Adolfo Di Mare <adolfo@di-mare.com>.
|