Programa 03

3 respostas
eclipseprogramaçãojava
Dieggo

Alguém consegue me ajudar com este exercício?

Programa 3

Classe: Casa
Atributos: cor, porta1, porta2, porta3
Método: void pinta(String s),
int quantasPortasEstaoAbertas()

Crie uma casa e pinte-a. Crie três portas e coloque-as na casa; abra e feche as mesmas como
desejar. Utilize o método quantasPortasEstaoAbertas para imprimir o número de portas
abertas.

3 Respostas

TerraSkilll

Sim, alguém consegue.

Mas primeiro, mostre o que já tentou, e onde está sua dificuldade.

Abraço.

Dieggo

Olá @TerraSkilll.

Vou compartilhar com você o que eu fiz hoje a noite, assim você pode me dar uma ajuda!

Obrigado

Dieggo

Olá @TerraSkilll

Veja abaixo o exercício resolvido, verifique se existe algum ponto que eu possa melhorar o mesmo.

package br.com.caelum.exercicios;

public class Casa {

String cor;

Porta porta1 = new Porta();

Porta porta2 = new Porta();

Porta porta3 = new Porta();
public void pinta(String corEscolhida) {
	if (this.cor == corEscolhida) {
		System.out.println("A casa já está pintada de " + this.cor);

	} else {
		this.cor = corEscolhida;
		System.out.println("A casa está com a cor " + this.cor);
	}

}

int quantasPortasEstaoAbertas() {
	int cont = 0;

	if (this.porta1.aberta) {
		cont++;
	}

	if (this.porta2.aberta) {
		cont++;
	}

	if (this.porta3.aberta) {
		cont++;
	}

	return cont;

}

}

package br.com.caelum.exercicios;

public class Porta {

boolean aberta = false;
String cor;
double dimensaoX, dimensaoY, dimensaoZ;
int cont;

// verifica se a porta já está pintada, caso contrário pinta a mesma
public void pinta(String corEscolhida) {
	if (this.cor == corEscolhida) {
		System.out.println("A porta já está com essa cor.");
	} else {
		this.cor = corEscolhida;
		System.out.println("A porta está com a cor " + this.cor);
	}
}

// verifica se a porta já está aberta, caso contrário abre a mesma
public void abre() {
	if (this.aberta == true) {
		System.out.println("A porta já está aberta.");
	} else {
		this.aberta = true;
		System.out.println("A porta está aberta.");
	}
}


// verifica se a porta está fechada, caso contrário fecha a mesma
public void fecha() {
	if (this.aberta == false) {
		System.out.println("A porta já está fechada.");
	} else {
		this.aberta = false;
		System.out.println("A porta está fechada.");
	}
}

// checa se a porta está aberta ou não
boolean estaAberta() {
	if (this.aberta) {
		System.out.println("A porta está aberta");
		return true;
	} else {
		System.out.println("A porta está fechada");
		return false;
	}
}

public String qualcor() {
	return this.cor;
}

public double getDimensaoX() {
	return dimensaoX;
}

public void setDimensaoX(double dimensaoX) {
	this.dimensaoX = dimensaoX;
}

public double getDimensaoY() {
	return dimensaoY;
}

public void setDimensaoY(double dimensaoY) {
	this.dimensaoY = dimensaoY;
}

public double getDimensaoZ() {
	return dimensaoZ;
}

public void setDimensaoZ(double dimensaoZ) {
	this.dimensaoZ = dimensaoZ;
}

}

package br.com.caelum.exercicios;

public class TestaCasa {

public static void main(String[] args) {
	
	Casa c = new Casa();
	c.porta1.abre();
			
	c.porta2.abre();
	
	c.porta3.abre();
	
	c.pinta("Amarela");
	c.pinta("Amarela");
	
	c.porta1.pinta("Branca");
	c.porta1.pinta("Branca");
	
	c.porta2.pinta("Laranja");
	c.porta2.pinta("Laranja");
	
	c.porta3.pinta("Verde");
	c.porta3.pinta("Verde");
	
	System.out.println("Número de portas abertas " + c.quantasPortasEstaoAbertas());
	
	
	
	
}

}

Criado 27 de março de 2018
Ultima resposta 13 de abr. de 2018
Respostas 3
Participantes 2