Ajuda Exrcício CASA!

15 respostas
cristian.ferreira

[b]Classe : Casa Atributos: cor, porta1, porta2, porta3
Métodos: Void Pinta(), quantasPortasEstaoAbertas()

Crie uma casa e pinte-a. Crie três portas e coloque-as na casa; abre e feche as mesmas como desejar. Utilize o método quantasPortasEstaoAbertas para imprimir o numero de portas abertas.
Minha Classe
[/b]

public class Casa {

String cor;

int porta1;

int porta2;

int porta3;
void pinta(String cor){
	 this.cor = cor;
	 System.out.println(cor);
	
}

[b] Não consigo passar daqui !!! poderiam me ajudar ??
Obrigado…

[/b]

15 Respostas

williamdasflores

HauaUHAuhAa...tava vendo um topico com esse exercicio

public class Casa {
	String cor;
	Porta p1[] = new Porta[3];
	
	public void setPinta(String cor)
	{
		this.cor = cor;
	}
	
	public void quantidadePortasAbertas()
	{
		int cont = 0;
		int i = 0;
		
		for(i = 0; i < p1.length; i++)
		{
			if(p1[i].estaAberta == true)
			{
				cont += 1;
			}
			
		}
		System.out.println(cont +" portas abertas");
	}
}

Você fez a classe Porta????

rafaelviny

[size=18]pesquisar!

vc existe?[/size]

cristian.ferreira

[b]Caro rafaelviny, se eu não existisse não estava aqui no fórum tentando sanar minhas dúvidas e também não criaria um post antes de pesquisar sobre o conteúdo. Se você chegou até onde você está hoje tenho certeza que já passou por onde estou hoje ! Porém sou iniciante em programação e estou me esforçando para ficar bom. Ok?

[/b]

d34d_d3v1l

Cristian, relex, ta no caminho certo… tire suas dúvidas sim…
E nunca espere que façam as coisas para você…

Bom, nosso amigo postou a resposta né.

Continue postando… e sempre pesquise antes…
Continue assim e ignore os comentários ‘desnecessários’
blz ?

Abraços!

cristian.ferreira

valeu d34d_d3v1l, é de pessoas assim como você que nós iniciantes precisamos para nos incentivar. Obrigado, abraços…

Mephy

cristian.ferreira:
[b]Caro rafaelviny, se eu não existisse não estava aqui no fórum tentando sanar minhas dúvidas e também não criaria um post antes de pesquisar sobre o conteúdo. Se você chegou até onde você está hoje tenho certeza que já passou por onde estou hoje ! Porém sou iniciante em programação e estou me esforçando para ficar bom. Ok?

[/b]

sem querer discutir nem nada, mas “você” refere-se ao substantivo “pesquisa” u.u

da dúvida, é sempre bom montar o design/sketch da classe (atributos, métodos) antes de programá-los, pra isso precisa da análise do problema-enunciando:
como pede-se para “criar portas”, é necessário uma classe porta.
Dentro dessa classe porta, o que realmente nos interessa é o atributo: boolean estado (true aberta, false fechada), ou algo parecido, com um método (estaAberta) que nos retorna esse estado (pode servir como get)
depois disso, chegamos a um código parecido com o postado pelo williamdasflores

comentários do código citado:

int i = 0;
for (i = 0 ...)

demorei pra sacar a declaração ._.

if (p1[i].estaAberta == true)

comparamos com true pra voltar um valor true?
era melhor dizer

if (p1[i].estaAberta)

bem, finalizando, o processo de análise é essencial pra entender o código, eu que não sei nada de Java tô aqui tentando ajudar só conhecimentos de AOO

isso aí, t+ n.n

adriano_si

Bom… muita calma nessa hora… a história não é bem assim e acredito que ambos tem um pouco de razão… cristian… se esforce para ser bom mesmo, se possível, o melhor… lhe dou algumas dicas do que fazer para sobreviver tranquilamente no GUJ sem STRESS até o dia que você ficar realmente bom e puder opinar também com autoridade… Lembre-se, quando encontrares um outro você pela frente, o ajude da mesma forma.

Alguns helps que considero primordiais para um bom convívio aqui:

1 - http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Isso é importante para que possamos ler com clareza o código que você colar aqui;

2 - http://www.guj.com.br/java/15777-antes-de-voce-perguntar

Esse é primordial… Antes de postar, procure se o trabalho, dúvida ou exercício que você vai póstar já não foi discutidpo ou respondido no fórum, isso evita duplicidade de POSTs que acabam se tornando desnecessários. Foi isso o que os amigos em cima lhe alertaram, esse exercício da casa já foi resolvido aqui recentemente, se você tivesse pesquisado teria já toda uma discussão sobre o assunto que não necessita ser repetida.

3 - http://www.istf.com.br/perguntas/

Esse é primordial pra sua vida na TI e acho que nosso amigo rafaelviny também poderia dar uma lida, principalmente no último tópico…

Não deixe de ler os 3, absorvê-los e aplicá-los aqui.

Abs [] e bons estudos.

cristian.ferreira

Valeu pessoal, vou seguir as dicas de vocês !
Obrigado…

rafaelviny

cristian.ferreira:
[b]Caro rafaelviny, se eu não existisse não estava aqui no fórum tentando sanar minhas dúvidas e também não criaria um post antes de pesquisar sobre o conteúdo. Se você chegou até onde você está hoje tenho certeza que já passou por onde estou hoje ! Porém sou iniciante em programação e estou me esforçando para ficar bom. Ok?

[/b]

nada contra criar post (o forum é para isso), porem no google encontrei exercicios semelhantes e ultimamente 40 % dos post estão sendo com perguntas aonde as respostas já existem aqui no proprio forum…

desculpa se ficou chateado com meu post, porem vc so vai perceber como é chato ver post duplicados ou post aonde a resposta é so procurar no google ou no forum quando vc estiver respondendo as duvidas… (esse tipo de coisas desanimam quem tenta ajudar)…

qualquer duvida posta ae

Caio.Sergio

Opa Cristian, tudo bem cara?

primeiro quero dizer que não tem nada demais pedir ajuda como você pediu, bom vou postar aqui os códigos completos do seu trabalho, mas sugiro que vc não copie e apresente na faculdade, e sim estude ele e crie o seu próprio código OK?

Classe Cassa:

import java.util.*;


public class Casa {
    //atributos
    String cor;
    boolean porta1;
    boolean porta2;
    boolean porta3;
    
    //Construtor que define a cor inicial da casa e se as portas estão fechadas ou abertas
    public Casa(){
        this.cor = "branca";
        
        //// true = aberta || false = fechada
        porta1 = false; // porta fechada
        porta2 = true; // porta aberta
        porta3 = true; //porta aberta
    }
    
    /////////////////
    ////Método que pinta a casa com a cor passada por parâmetro
    public void pinta(String cor){
        System.out.println("A cor atual da casa é " + this.cor);
        this.cor = cor;
        System.out.println(" A cor escolhida para pintar a casa foi " + cor);
        System.out.println("A casa foi pintada de " + this.cor);
    }
    
    /////////////////
    ////Método que imprimi na tela quantas portas estão abertas
    public void quantasPortasEstaoAbertas(){
        int numero_de_portas_abertas = 0;
        
        if(porta1 == true){ // verificação da porta aberta
            System.out.println("a Porta 1 está aberta");
            numero_de_portas_abertas++;
        }else{
            System.out.println("a Porta 1 está fechada");
        }
        
          if(porta2 == true){ // verificação da porta aberta
            System.out.println("a Porta 2 está aberta");
            numero_de_portas_abertas++;
        }else{
            System.out.println("a Porta 2 está fechada");
        }
          
            if(porta3 == true){ // verificação da porta aberta
            System.out.println("a Porta 3 está aberta");
            numero_de_portas_abertas++;
        }else{
            System.out.println("a Porta 3 está fechada");
        }
        System.out.println("    " + numero_de_portas_abertas + " Portas estão abertas");
        System.out.println("\n\n");
    }
    
    

}

Classe Main

public class Main {


    public static void main(String[] args) {
        Casa casa = new Casa();
        
        casa.pinta("Laranja"); // chamada da funcão passando por parâmetro a cor que a casa será pintada
        casa.quantasPortasEstaoAbertas();
        
        casa.pinta("Vermelho");  // chamada da funcão passando por parâmetro a cor que a casa será pintada
        casa.quantasPortasEstaoAbertas();
   
        
        
        
    }

}

Pessoal, não há nada demais em ele pedir esse tipo de orietação, pois como ele mesmo disse, todos ja fomos iniciantes uma vez.

Cristian espero ter ajudado, fiz um post recente mostrando para iniciantes como montar uma classe bem definida

Qualquer coisa posta aih cara, vlw arrebenta fera!!!

adriano_si

Caros colegas de GUJ… O assunto já foi encerrado e espero que tenha resolvido o Problema do Cristian… Caio Sergio… realmente não há problemas em pedir ajuda e muito menos em ajudar… O problema é que certos comportamentos começam a atrair certas pessoas que só querem se dar bem, sei que não é o caso do Cristian, por isso indiquei a ele os 3 Links em meu Post anterior, sugiro que você também leia o último pra entender o porque desse comportamento e o porque de indicar o mesmo a iniciantes…

O fórum ficaria um lugar mais agradável e desafiante se a maioria seguisse o que sugere o criador do texto. Eu também fui iniciante e fazia as mesmas perguntas da mesma forma, até que fui apresentado a esse Post… Mudou minha forma de entrar em fóruns e encarar as coisas…

Fazer trabalho dos outros, com a ilusão de que os mesmos irão ler e entender o que você fez, é Utopia… Pode funcionar pra 1 ou 2… Em 98% dos casos esse tipo de atitude garantirá que os mesmos façam propaganda do fórum aos seus amigos preguiçosos, garantindo que aqui se chega na resposta facilmente e sem esforço…

Acredite… Isso é antigo, e se nós mesmos não procurarmos organizar, GUJ ficará cada vez mais idêntico ao Orkut…

Abs []

Caio.Sergio

Bom, como vc é moderador, não vou discutir, concordo em parte com você, mas vai muito da analise, exemplo:

esse algorítimo da casa, é muito simples, simples demais, então se ele nao conseguiu fazer, quer dizer que relamente é iniciante e procura ajuda, e nao está utilizando o forum de má fé.
Eu mostrei o código como um exemplo, e não com intenção de fazer o trabalho para ele.

outro exemplo:

o usuário pede exemplos de algorítimos um pouco mais complicado, nesse casso se nota que ele conhece a linguagem, aih sim, nesse caso concordo 100% com vc, pois aih poderá ou não estar agindo de má fé

abraço

adriano_si

Fala Caio… você se confundiu… eu não sou moderador rsrsrsrsrsrs :smiley:

Quanto o pedido de algoritmo, mais uma vez lhe peço pra ler o último Link que passei a ele no meu penúltimo Post, traz um pouco do nosso perfil e o que pode colaborar para a “saúde” do fórum…

Sei que ele não perguntou por maldade (esclareci no post anterior) assim como sei que você não respondeu com esse objetivo também, mas é que pela experiência, já sabemos que essa sequencia atrai somente coisa não muito boa…

Abs [] e bons estudos…

cristian.ferreira

[b]Caio.Sergio obrigado por postar o código, te garanto que não foi com mal intenção que criei o post e sim para sanar minhas duvidas. Já tinha feito 2 exercícios parecidos como esse que postei porem não consegui fazer o último. Você comentou sobre copiar e apresentar na faculdade, isso não irá acontecer pois já me formei em sistemas de informação e atualmente trabalho como analista de suporte. Porém vejo que há muitas oportunidades para programador JAVA, e resolvi estudar por minha conta. Estou estudando as apostilas da CAELUM e nela diz que o GUJ é fórum onde posso tirar minhas duvidas com pessoas experientes.

[color=blue]
Vou seguir as dicas aqui faladas por todos vocês !
Obrigado + uma vez.[/color]

Abraços…[/b]

Caio.Sergio

OK adriano, concordo com vc nessa parte.

Cristian vlw cara, precisando tamo aih!!!

Criado 6 de abril de 2011
Ultima resposta 7 de abr. de 2011
Respostas 15
Participantes 7