Maxgomesrj Postado Março 4, 2019 Denunciar Share Postado Março 4, 2019 Boa tarde pessoal. Estou realizando um exercício em que o volume e mostrado em traços, mas está aparecendo o valor numerico, como resolver. Desde já agradeço. Arquivo index.php <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>Projeto controle remoto!</h1> <pre> <?php require_once "ControleRemoto.php"; $se = new ControleRemoto(); $se->ligar(); $se->play(); $se->maisVolume(); $se->abrirMenu(); Arquivo: Controleremoto.php <?php require_once "Controlador.php"; /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * Description of ControleRemoto * * @author Max */ class ControleRemoto implements Controlador { private $volume; private $ligado; private $tocando; //Metodos especiais public function __constructor() { $this->volume = 50; $this->ligado = false; $this->tocando = false; } private function getVolume(){ return $this->volume; } private function getLigado(){ return $this->ligado; } private function getTocando(){ return $this->tocando; } private function setVolume($volume){ $this->volume = $volume; } private function setLigado($ligado){ $this->ligado = $ligado; } private function setTocando($tocando){ $this->tocando = $tocando; } public function abrirMenu(){ echo "<br>Está ligado?<br>R: " . ($this->getLigado()?"SIM":"NÃO"); echo "<br>Está tocando?<br>R: " . ($this->getTocando()?"SIM":"NÃO"); echo "<br>Volume: " . $this->getVolume(); for($i=0; $i <= $this->getVolume(); $i+=1){ echo "|"; } echo "<br>"; } public function fecharMenu(){ echo "<br>Fechando Menu..."; } public function desligar(){ $this->setLigado(false); } public function ligar(){ $this->setLigado(true); } public function desligarMudo(){ if($this->getVolume() && $this->getVolume() == 0) { $this->setVolume(50); } } public function ligarMudo(){ if($this->getligado() && ($this->getVolume() > 0)) { $this->setVolume(0); } } public function maisVolume(){ if($this->getLigado()){ $this->setVolume($this->getVolume() + 5); }else { echo "<p>ERRO! Não posso aumentar o volume!</p>"; } } public function menosVolume(){ if($this->getLigado()){ $this->setLigado($this->getVolume() - 5); }else { echo "<p>ERRO! Não posso diminuir o volume!</p>"; } } public function pause(){ if ($this->getLigado() && $this->getTocando()) { $this->setTocando(false); } } public function play(){ if ($this->getLigado() && $this->getTocando() == false) { $this->setTocando(true); } } } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lowys Postado Março 4, 2019 Denunciar Share Postado Março 4, 2019 Olá! Não encontrei onde o sr. declarou os traços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maxgomesrj Postado Março 5, 2019 Autor Denunciar Share Postado Março 5, 2019 public function abrirMenu(){ echo "<br>Está ligado?<br>R: " . ($this->getLigado()?"SIM":"NÃO"); echo "<br>Está tocando?<br>R: " . ($this->getTocando()?"SIM":"NÃO"); echo "<br>Volume: " . $this->getVolume(); for($i=0; $i <= $this->getVolume(); $i+=10){ echo "|"; } echo "<br>"; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lowys Postado Março 5, 2019 Denunciar Share Postado Março 5, 2019 3 horas atrás, Maxgomesrj disse: echo "<br>Está tocando?<br>R: " . ($this->getTocando()?"SIM":"NÃO"); echo "<br>Volume: " . $this->getVolume(); for($i=0; $i <= $this->getVolume(); $i+=10){ Então aparecem o número e as pipe bars? remova esse . $this-> getVolume( echo "<br>Volume: " . $this-> getVolume(); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maxgomesrj Postado Março 6, 2019 Autor Denunciar Share Postado Março 6, 2019 Obrigado!. Funcionou mas quando coloco: public function maisVolume(){ if($this->getLigado()){ $this->setVolume($this->getVolume() + 5); }else { echo "<p>ERRO! Não posso aumentar o volume!</p>"; } } Aparece somento um traço, quando deveria aparecer 5 traços. Se eu colocar valor 10 aparece dois traços se eu colocar valor 15 aparece três traços. public function maisVolume(){ if($this->getLigado()){ $this->setVolume($this->getVolume() + 20); }else { echo "<p>ERRO! Não posso aumentar o volume!</p>"; } } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leonardo Persan Postado Março 8, 2019 Denunciar Share Postado Março 8, 2019 Isso acontece porque no loop você está pulando de 10 em 10 Em 05/03/2019 em 09:40, Maxgomesrj disse: for($i=0; $i <= $this->getVolume(); $i+=10){ Se você trocar para $i+=5 deve funcionar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maxgomesrj Postado Março 10, 2019 Autor Denunciar Share Postado Março 10, 2019 Ok. Obrigado!. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Maxgomesrj
Boa tarde pessoal.
Estou realizando um exercício em que o volume e mostrado em traços, mas está aparecendo o valor numerico, como resolver.
Desde já agradeço.
Arquivo index.php
Arquivo: Controleremoto.php
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.