Boa noite, bom minha duvida e a seguinte prof falou para fazer metodo Fria o carro e vira a direita vira aesquerda na classe carro, vou posta o codigo se puderem me ajudar agradeço. me explicar como faz gostaria ao final, na main saber como faz para chamar esses tres metodos para imprimir.
obrigado.
publicclassCarro{publicintViraDireita;publicintViraEsquerda;publicintFreia;publicStringcor;publicStringmodelo;privatedoublevelocidadeAtual;//encapsulou a velocidadeAtualpublicdoublevelocidadeMaxima;Motormotor;publicvoidacelera(doublequantidade){doublevelocidadeNova=this.velocidadeAtual+quantidade;this.velocidadeAtual=velocidadeNova;}publicintpegaMarcha(){if(this.velocidadeAtual<=0){return-1;}if(this.velocidadeAtual>0&&this.velocidadeAtual<40){return1;}if(this.velocidadeAtual>=40&&this.velocidadeAtual<80){return2;}return3;}publicvoidliga(){System.out.println("Brummmm... liguei o fusca!");}publicdoublepegaVelocidade(){returnvelocidadeAtual;}// metodo freia depois imprimir chamando na mainpublicvoidfreia(doublequantidade){doublefreiaNova=this.VelocidadeAtual-quantidade;this.Freia=this.freiaNova;}//vira esquerda nao estou conseguindopublicviraAesquerda(intquantidade){intviraesquerda=this.viraesquerda+quantidade;this.ViraEsquerda;}//tbem nao estou conseguindopublicviraAdireita(intquntidade){intviradireita=this.viradireita+quantidade;this.ViraDireita=this.viradireita;}}
principal Main, aqu nessa classe oque tenho que fazer e chmar os tres metodos que foi acrescentado, freia vira esquerda e vira direita, so que nao sei como implementa como que faz.
publicclassTesteCarro{publicstaticvoidmain(String[]args){CarromeuCarro=newCarro();meuCarro.cor="Verde";meuCarro.modelo="Fusca";//meuCarro.velocidadeAtual = 40;meuCarro.liga();meuCarro.acelera(40);meuCarro.velocidadeMaxima=80;System.out.println("A marcha do fusca e: "+meuCarro.pegaMarcha());System.out.println("A velocidade do fusca e: "+meuCarro.pegaVelocidade());meuCarro.acelera(40);System.out.println("A marcha do fusca e: "+meuCarro.pegaMarcha());System.out.println("A velocidade do fusca e: "+meuCarro.pegaVelocidade());}}
Olá olivercld, bom pelo que eu entendi você quer implementar os métodos, freia, viraADireita e viraAesquerda, e depois imprimi-los na tela, é isso?
Bom fiz a correção dos métodos na classe carro e fiz as implementações no main, ja chamando para impressão. por favor me responda se resolveu a sua dúvida.
seguem os os códigos fontes,
packagetestecarro;publicclassCarro{publicintViraDireita;publicintViraEsquerda;publicdoubleFreia;////Alterado o tipo para doublepublicStringcor;publicStringmodelo;privatedoublevelocidadeAtual;//encapsulou a velocidadeAtual publicdoublevelocidadeMaxima;//Motor motor; publicvoidacelera(doublequantidade){doublevelocidadeNova=this.velocidadeAtual+quantidade;this.velocidadeAtual=velocidadeNova;}publicintpegaMarcha(){if(this.velocidadeAtual<=0){return-1;}if(this.velocidadeAtual>0&&this.velocidadeAtual<40){return1;}if(this.velocidadeAtual>=40&&this.velocidadeAtual<80){return2;}return3;}publicvoidliga(){System.out.println("Brummmm... liguei o fusca!");}publicdoublepegaVelocidade(){returnvelocidadeAtual;}///////////////////////////////////////////Métodos que foram alterados// metodo freia depois imprimir chamando na main publicdoublefreia(doublequantidade){// tipo do método igual ao o tipo de retornodoublefreiaNova=this.velocidadeAtual-quantidade;this.Freia=freiaNova;returnthis.Freia;//retorno para impresão}//vira esquerda nao estou conseguindo publicintviraAesquerda(intquantidade){// tipo do método igual ao o tipo de retornointviraesquerda=this.ViraEsquerda+quantidade;this.ViraEsquerda=viraesquerda;returnthis.ViraEsquerda;//retorno para impresão}//tbem nao estou conseguindo publicintviraAdireita(intquantidade){// tipo do método igual ao o tipo de retornointviradireita=this.ViraDireita+quantidade;this.ViraDireita=viradireita;returnthis.ViraDireita;//retorno para impresão}}
/* * To change this template, choose Tools | Templates * and open the template in the editor. */packagetestecarro;/** * * @author Caio */publicclassTesteCarro{/** * @param args the command line arguments */publicstaticvoidmain(String[]args){CarromeuCarro=newCarro();meuCarro.cor="Verde";meuCarro.modelo="Fusca";//meuCarro.velocidadeAtual = 40; meuCarro.liga();meuCarro.acelera(40);meuCarro.velocidadeMaxima=80;System.out.println("A marcha do fusca e: "+meuCarro.pegaMarcha());System.out.println("A velocidade do fusca e: "+meuCarro.pegaVelocidade());meuCarro.acelera(40);System.out.println("A marcha do fusca e: "+meuCarro.pegaMarcha());System.out.println("A velocidade do fusca e: "+meuCarro.pegaVelocidade());//implementaçõesSystem.out.println("\n Chamada das 3 funcões que estavam erradas, imprimindo todas");System.out.println("A velocidade após o freio eh: "+meuCarro.freia(20));System.out.println("A curva pra direita foi de: "+meuCarro.viraAdireita(5));System.out.println("A curva pra esquerda foi de: "+meuCarro.viraAesquerda(10));}}
Vlw!!!!
olivercld
:lol:
obrigado Caio.Sergio
E la no metodo viraDireita e viraEsquerda eu teria que fazer laço de condição como if ou for ?
mais uma e na hora que imprimo o metodo freia (20) quer dizer que ele freiou a 20 km ou estou errado
masi obrigado por me ajudar.
valeu mesmo.
abelgomes
De boa Caio.Sergio , acho muito boa sua inciativa de ajudar, mas esse lance de dar fonte pronto, fica meio chato, o cara não tem aquele BUM da descoberta e já vi 2 topicos seus que vc coloca o fonte pronto! Como disse, é muito bacana sua vontade de ajudar, mas seria mais interessante ensinar o cara a fazer do que entregar pronto… vlw
olivercld
abelgomes entao fera estou aprendendo lendo apostilas caelum e livros praticando, pratico assimque posso porque trabalho dia todo estudo de segunda a sabado que e meu curso… entao eu nao tenho quem me explica ou ensina se vc tiver afim te pago. a unica ajuda e aqui no forum. vc é administrador ou moderador do forum ? não né,entao jaquefalou aquilo se tiverafim de ensinar estou dispostoaprender duvidas sao muitas
Caio.Sergio
Cara, de boa mesmo, eu nao dei o código pronto pra ele, o código que eu postei foi ele que fez, eu só peguei e indiquei onde ele tava errado e arrumei o return, nao postei código.
do novo… quem fez o código foi ele,
de qualquer maneira, como que ele vai aprender sem ver a forma correta de fazer? a minha intenção foi só de ajudar!!!
Mas blz respeito a sua opnião, desculpa por qualquer incômodo
abelgomes
Ninguém nasceu sabendo, todo mundo passo o dia todo trabalhando, não estou falando que vc esta fazendo algo de errado, mas que eu era iniciante, gostava daquele momento que eu descobria onde tinha errado que dava aquela satisfação impagável, só acho que o nosso amigo tirou isso de vc ao lhe entregar o codigo pronto. Ele argumentou que lhe mostrou o erro para vc aprender, por mim tudo bem, foi só um comentario.
ps.: o mercado é voraz meu amigo…
Não levem a mal…
olivercld
certo meu caro amigo abelgomes , voce tem toda razao ninguem nasceu sabendo, tambem sou iniciante como eu ja disse o tempo que tneho para praticar e 1 hora do dia no intervalo do almoço ou aos domingos, estou com muita dificuldade e tenho muitas duvidas e fora o prof do curso que vejo so no meio da semana so tneho o forum para tirar duvidas alias o melhor, e agradeço a voçe a todos continuarei praticando ate eu conseguir realmente aprender vontade eu tenho espero um dia ser como voçe que aprendeu e tudo mais, valeu ai e eu sei que o mecado e voraz.
Abç, fica na paz.
abelgomes
blz…é dificil alguém com essa força de vontade que vc tem, tenho certeza que colherá bons frutos no futuro…