Syvered Posted July 23, 2016 at 05:14 PM Report #597782 Posted July 23, 2016 at 05:14 PM Boas, Comecei a aprender Java num site chamado codecademy.com há alguns dias e, após algumas lições, decidi aventurar-me e testar os meus conhecimentos até então aprendidos com algo básico e simples. No entanto, após execução do obtido, nada acontece. Abaixo apresento o código: class Wood { //Variables int WoodPrice; int Durability; int Quality; int Quantity; int HandMoney = 10000; int BankMoney = 10000; int UpdatedHandMoney; int TotalPrice; //Class Constructor public Wood(int Durability,int Quality,int Quantity) { WoodPrice = ((Durability + Quality) / 2) * Quantity; } public void CheckBank() { System.out.println("You currently have " + BankMoney + "$ on your bank account."); } public void WoodInfo() { System.out.println("Wood Information"); System.out.println("Durability: " + Durability); System.out.println("Quality: " + Quality); System.out.println("Wood Price: " + WoodPrice + "$"); } public void BuyWood() { if(HandMoney > WoodPrice) { System.out.println("You have bought the wood."); UpdatedHandMoney = HandMoney - WoodPrice; System.out.println("You're current balance is now " + UpdatedHandMoney + "$"); System.out.println("You still have " + BankMoney + "$ in your bank account"); } else if(HandMoney == WoodPrice) { System.out.println("You have bought the wood."); System.out.println("You are out of money"); System.out.println("You still have " + BankMoney + "$ on your bank."); } else if(HandMoney + BankMoney >= WoodPrice) { System.out.println("You don't have enough money on you but you can transfer some from the bank"); } else if(HandMoney + BankMoney >= WoodPrice) { System.out.println("You don't have enough money to buy this wood."); } } public static void main(String[] args){ //Main Wood Pine = new Wood(100,5,100); Pine.WoodInfo(); Pine.BuyWood(); } } Não obtive qualquer tipo de erro por parte do Java, mas simplesmente nada acontece, ao contrário do que eu previa. Desculpem lá erros básicos que vos possam "irritar" 🙂 Obrigado
iron Posted July 25, 2016 at 01:11 PM Report #597794 Posted July 25, 2016 at 01:11 PM (edited) O que previas? Vê e diz-me a diferença que existe aqui else if(HandMoney + BankMoney >= WoodPrice) { System.out.println("You don't have enough money on you but you can transfer some from the bank"); } else if(HandMoney + BankMoney >= WoodPrice) { System.out.println("You don't have enough money to buy this wood."); } Edited July 25, 2016 at 01:13 PM by iron Cumprimentos, iron
tiago.f Posted July 28, 2016 at 10:25 AM Report #597859 Posted July 28, 2016 at 10:25 AM Olá, além do comentário acima, define lá "não acontece nada" Não aparece nada na consola? nem sequer os prints: System.out.println("Wood Information"); System.out.println("Durability: " + Durability); System.out.println("Quality: " + Quality); System.out.println("Wood Price: " + WoodPrice + "$"); ? Como estás a compilar e executar o código? EDIT: também: diz-nos lá onde está a atribuir os valores às variaveis da classe (membros)? nao vejo...
iron Posted July 28, 2016 at 06:44 PM Report #597869 Posted July 28, 2016 at 06:44 PM No fim tens lá o main. Ele deve estar é a executar mal o código. Cumprimentos, iron
tiago.f Posted July 28, 2016 at 07:29 PM Report #597870 Posted July 28, 2016 at 07:29 PM Sim o main está lá, mas ainda assim não sei como ele compilou (se é que compilou) nem como executou o código. O segundo ponto é que não há atribuição de valores aos membros da classe - esperava ver algo no construtor. Obviamente essas variáveis estarão vazias quando utilizadas noutros métodos...
iron Posted July 28, 2016 at 07:57 PM Report #597871 Posted July 28, 2016 at 07:57 PM Não estarão vazias. Estarão com os valores "por defeito" do java. Cumprimentos, iron
HappyHippyHippo Posted July 28, 2016 at 08:05 PM Report #597872 Posted July 28, 2016 at 08:05 PM Não estarão vazias. Estarão com os valores "por defeito" do java. o segredo do problema é : quais são esses valores ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
tiago.f Posted July 28, 2016 at 08:10 PM Report #597873 Posted July 28, 2016 at 08:10 PM Certo... E algumas delas estarão com esse valores para sempre! Vamos esperar pelo Syvered.... o segredo do problema é : quais são esses valores ? Não, o segredo é saber o que "nada acontece" quer de facto dizer...
HappyHippyHippo Posted July 28, 2016 at 08:31 PM Report #597874 Posted July 28, 2016 at 08:31 PM Não, o segredo é saber o que "nada acontece" quer de facto dizer... olha bem para o código, é facil deduzir o que o ele quer dizer com "não faz nada" é obvio que faz os println, se o código compila (o próprio disse que executou-o, que dizer que compilou), então o problema é que o código não faz o que ele quer volto o dizer, o segredo para resolver o problema já foi dito aqui por todos : as variáveis não estão vazias, mas quais os valores dessas variáveis e porquê ? nota : e para quem sabe programar, basta olhar para o construtor da classe para perceber !!! 2 Report IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
cajoblue Posted August 1, 2016 at 06:37 PM Report #597911 Posted August 1, 2016 at 06:37 PM Boas! Estou com uma forte dificuldade em apresentar o menu. Não estou a inserir o código dentro do metido "main", e quando o faço da erro. Pede novos motodos, e ainda assim apresenta erro! ps: a função "mostrarMenu", serve para apresentar os menus. static String[] menuPrincipal = {"### Menu Principal ###", "1 - Novo Utente", "2 - Pesquisa Utente", "3 - Editar Utente", "4 - Estatisticas", "0 - Sair..." }; static void metodoMenuPrincipal(){ mostrarMenu(menuPrincipal, 6); System.out.println("Escolha uma das seguistes opções."); int opcaoMenuPrincipal=sc.nextInt(); private static void mostrarMenu(String[] menu,int numero0pcoes){ for(int i = 0; i < numero0pcoes; i++){ System.out.println(menu[i]); } }
HappyHippyHippo Posted August 5, 2016 at 10:06 AM Report #598005 Posted August 5, 2016 at 10:06 AM (edited) Boas! Estou com uma forte dificuldade em apresentar o menu. Não estou a inserir o código dentro do metido "main", e quando o faço da erro. Pede novos motodos, e ainda assim apresenta erro! ps: a função "mostrar que código é que inseres no método main? que erros é que são apresentados ? que métodos são pedidos ? Edited August 5, 2016 at 10:06 AM by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now