Universidad de Costa Rica
|
|
Duración: Ochenta 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 todas las preguntas. ¡No haga más de lo que se le pide!
1) [50 pts]
class Biblio { static void vuelveTres( char[] V ) { /* ... */ } } |
1.a) [25 pts]
Implemente el
método
estático "vuelveTres()
" de la clase
"Biblio
" que sirve para separar un arreglo en 3
partes de longitud similar e invertir cada parte. No olvide
escribir la
especificación completa de
"vuelveTres()
".
1.b) [25 pts] Suponga que ya cuenta con un método
en "Biblio
" que permite ordenar ascendentemente una
parte de un arreglo. Uselo para mejorar su implementación
de "vuelveTres()
" de manera que, según lo
indique el argumento booleano "ordene
", además
de invertir las 3 partes del arreglo, también las deja
ordenadas (en este caso, cada uno de los pedazos quedaría
en orden descendente). No olvide escribir la
especificación completa de sus
rutinas.
2) [50 pts] Implemente "
Biblio.esCarnet()
".
/** Retorna "{@code true}" si "{@code carnet}" es un carnet UCR válido. <li> La '{@code A}' del principio puede ser mayúscula o minúscula. <li> Comienza con "{@code A}" o con un dígito. <li> Tiene sólo dígitos en el resto. <li> Es de longitud 6. <li> <code> esCarnet( "a00345" ) == true </code> <li> <code> esCarnet( "782015" ) == true </code> <li> <code> esCarnet( "00345" ) == false </code> */ boolean esCarnet( String carnet ); |
Adolfo Di Mare <adolfo@di-mare.com>.
|