Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class DiasLluviosos {
- private boolean[] diasLluviosos = new boolean [365];
- /** post: diasLluviosos queda inicializado en false para todos sus elementos. */
- public DiasLluviosos() {
- for (int i=0; i < diasLluviosos.length; i++){
- diasLluviosos [i] = false;
- }
- }
- /** pre: se indica el diaDelAño comprendido en el rango [1, 365] en el que llovió o no.
- * post: modifica si en un diaDelAño llovió o no. */
- public void registrarQueLlovioElDia(int diaDelAño, boolean llovio){
- verificarDiaDelAño (diaDelAño);
- diasLluviosos [diaDelAño -1] = llovio;
- }
- /** pre: se indica el diaDelAño comprendido en el rango [1, 365].
- * post: devuelve si llovió o no el diaDelAño indicado. */
- public boolean consultarSiLlovioElDia(int diaDelAño){
- verificarDiaDelAño (diaDelAño);
- return (diasLluviosos [diaDelAño -1]);
- }
- /** post: devuelve la cantidad de dias en los que llovió. */
- public int contarDiasLluviosos(){
- int cantidadDeDiasLluviosos = 0;
- for (int i=0; i< diasLluviosos.length; i++){
- if (diasLluviosos [i]){
- cantidadDeDiasLluviosos ++;
- }
- }
- return (cantidadDeDiasLluviosos);
- }
- /** post: devuelve el numero de cuatrimestre en los que llovió la mayor cantidad de días. */
- public int consultarCuatrimestreMasLluvioso(){
- int[] cuatrimestreDeDiasLluviosos = new int [3];
- // Primer cuatrimestre del año.
- for (int i=0; i < 120; i++){
- if (diasLluviosos [i]){
- cuatrimestreDeDiasLluviosos [0] ++;
- }
- }
- // Segundo cuatrimestre del año.
- for (int i=120; i < 240; i++){
- if (diasLluviosos [i]){
- cuatrimestreDeDiasLluviosos [1] ++;
- }
- }
- // Tercer cuatrimestre del año.
- for (int i=240; i < 365; i++){
- if (diasLluviosos [i]){
- cuatrimestreDeDiasLluviosos [2] ++;
- }
- }
- // Busco el máximo entre los 3 cuatrimestres.
- int maximoDeDiasLluviosos = cuatrimestreDeDiasLluviosos [0];
- int cuatrimestreMasLluvioso = 0;
- for (int i=1; i <3; i++){
- if (cuatrimestreDeDiasLluviosos [i] > maximoDeDiasLluviosos){
- cuatrimestreMasLluvioso = i;
- }
- }
- return (cuatrimestreMasLluvioso+1);
- }
- /** post: devuelve el numero del primer dia del año en el que llovió. */
- public int consultarPrimerDiaConLluvia(){
- int primerDiaConLluvia = 0;
- boolean continuar = true;
- for (int i=0; i < diasLluviosos.length && continuar ; i++){
- if (diasLluviosos [i]){
- primerDiaConLluvia = i;
- continuar = false;
- }
- }
- return (primerDiaConLluvia +1);
- }
- private void verificarDiaDelAño (int diaDelAño){
- if (diaDelAño < 1 || diaDelAño > 365){
- Error diaDelAñoFueraDeRango = new Error ("El diaDelAño indicado -"+diaDelAño+"- no está comprendido dentro del rango.");
- throw diaDelAñoFueraDeRango;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment