Tire suas Dúvidas

Então pessoal, criei essa sessão para vocês postarem suas dúvidas e, na medida do possível vou tentando ajudar vocês a solucioná-las.

Obrigado.
  1. #1 by Henrique on 29 de Abril de 2009 - 8:21

    Ajuda com programa!
    To começando a estudar java na facul…
    e falando bem a verdade to meio perdido saiuhasiuhsa
    bem, meu professor pidiu para fazer o seguinte programa:

    Implemente a classe Produto que contem os atributos codigo, nome, quantidade, valor. Faço os métodos para retirar produtos do estoque e para dar entrada em estoque e o método para listar o valor total de estoque (quantidade * valor).

    Eu fiz, mais acho que está errado, e estou com duvidas sobre algumas coisas, vou postar o código:

    package exercicioproduto;

    public class Produto {

    private String nome;
    private int codigo;
    private int valor;
    private int quantidade;

    public static void main(String[] args) {

    }

    public Produto(String nome, int codigo){
    this.nome = nome;
    this.codigo = codigo;
    }

    public void Retirar(int nome) {
    nome -= quantidade;
    }

    public void EntradaProduto(int nome){
    nome += quantidade;
    }

    public void ValorEstoque(int nome){
    nome = quantidade * valor;
    }
    }


    Os métodos eu axo que estão errados, não sei como posso fazer para implementar a retirada e a entrada de produtos, não sei se tenho que fazer uma string ou algo do tipo…

    Se puder ajudar eu agradeço!
  2. #2 by admin on 29 de Abril de 2009 - 12:30

    Sua dúvida foi respondida. Espero que tenha ajudado!
  3. #3 by Isaque on 30 de Abril de 2009 - 20:33

    Então flavio…tenho um exercicio para fazer, mas não to conseguindo



    a) Escreva um programa que sorteie um número randomicamente no intervalo de 1-1000. O programa mostra uma mensagem (JLabel) – Eu tenho um número entre 1 e 1000, você pode adivinhá-lo? Entre com seu chute.
    a. Um JTextField deve ser usado na captura do valor. Para cada tentativa de adivinhação a cor de fundo deve mudar ou para vermelho ou azul. Vermelho indica que o usuário está chegando mais perto e azul indica que o usuário está se afastando do número. Um JLabel deve mostrar ou “Mais Perto” ou “Mais Longe” como auxílio ao usuário.
    b. Quando a resposta estiver correta, você deve mostrar a frase “Correto!” e não permitir mais a edição no JTextField.
    c. Um JButton deve permitir um novo jogo.Quando o JButton é clicado, um novo número randômico deve ser gerado e o JTextField ser editável.

    o Meu problema…é: como comparar as diferenças entre (numero sorteado-numero fornecido)…dos chutes…!
  4. #4 by Flávio J. Mendes on 30 de Abril de 2009 - 20:48

    Dúvida respondida.
  5. #5 by Mateus on 1 de Maio de 2009 - 14:25

    Fala cara! Grande blog e ótimo trabalho que você faz aqui! Meus parabéns!
    De qualquer forma, tenho um exercício programa em Java, e também tô meio perdidinho… preciso montar uma classe caixa com o método recebePagamento (foi fácil de fazer), e com mais outro, que tá complicando, que é o forneceTroco… esse método tem que receber o número de notas e devolver o troco preferencialmente com as notas mais altas. Aqui explica melhor:

    Classe Caixa:
    Esta classe modela o fluxo de caixa do teatro. Tem como tarefa gerenciar a quantidade
    de notas de 1, 5, 10, 20, 50 e 100 reais. Para isso, deve receber pagamentos e fornecer
    trocos.
    A classe Caixa deve implementar pelo menos os seguintes métodos:
    *recebePagamento (notas1, notas5, notas10, notas20, notas50, notas100):
    onde notasX é quantidade de notas X recebidas (X sendo 1, 5, 10, 20, 50 ou
    100).
    *forneceTroco(valor): se há o valor do troco pedido no caixa, retira do caixa as
    notas necessárias para o troco (decrementa os contadores das notas) e retorna
    o valor 1, que significará que o troco foi feito com sucesso. O cálculo do troco
    deve sempre dar preferência para as notas de valores mais altos. Se não houver
    o valor do troco no caixa, então exibe mensagem informando o fato e retorna o
    valor zero, que significará que houve falha no troco.

    Você tem alguma idéia de como fazê-lo, cara?
    Se possível, não use conceitos muito avançados, porque eu tive uns 3 meses de Java até agora… de qualquer forma, qualquer coisa que você possa me dar um apoio, já fico extremamente grato!!!
    Obrigado!
  6. #6 by Joao Paulo on 1 de Maio de 2009 - 16:03

    opa … e que estou precisando resolver esse exercicio
    pois valerá nota , e eu perdi a aula de introdução.., e quero aprender :(
    se puder me ajudar

    Crie uma classe com o nome Computadores e insira alguns atributos
    que possam ser comuns aos computadores. Crie os métodos mostrar
    preço sugerido, que irá variar de acordo com os atributos fornecidos e
    também tempo estimado de resposta para ordenar um vetor de
    1.000.000 de posições. Este por sua vez, varia de acordo com o atributo
    velocidade do processador.


    valeu abraços
  7. #7 by Flávio J. Mendes on 1 de Maio de 2009 - 21:59

    Mateus, sua dúvida foi respondida.
  8. #8 by Mateus on 3 de Maio de 2009 - 14:11

    Sua tarefa é implementar um conjunto de classes em Java para controlar a venda de ingressos para um teatro. O
    teatro é uma importante casa de espetáculos que disponibiliza quatro setores de
    assentos, com localização e preços diferenciados: camarote, frente, meio e fundo. As
    classes implementadas devem ser capazes de executar todo o processo de vendas de
    ingressos, incluindo: abertura diária do caixa, definição da quantidade de locais em
    cada setor, verificação de locais disponíveis quando um cliente deseja comprar
    ingressos, cálculo de troco adequado aos clientes de acordo com as regras do teatro e
    exibição de informações (relatórios) sobre os dados atuais, quando solicitados.
    A seguir são definidas as classes e alguns métodos obrigatórios. Você deve escolher o
    tipo de retorno e os tipos de parâmetros de forma adequada para cada método, assim
    como o tipo adequado para cada atributo das classes.
    Atenção: seu programa será verificado obedecendo aos nomes das classes e
    métodos fornecidos. Portanto, observe atentamente as definições. Se necessário
    (e provavelmente será), crie outros métodos (adicionais) não definidos aqui. Escolha
    quais variáveis devem ser atributos dessas classes.
    Classe Caixa:
    Esta classe modela o fluxo de caixa do teatro. Tem como tarefa gerenciar a quantidade
    de notas de 1, 5, 10, 20, 50 e 100 reais. Para isso, deve receber pagamentos e fornecer
    trocos.
    A classe Caixa deve implementar pelo menos os seguintes métodos:
     recebePagamento (notas1, notas5, notas10, notas20, notas50, notas100):
    onde notasX é quantidade de notas X recebidas (X sendo 1, 5, 10, 20, 50 ou
    100).
     forneceTroco(valor): se há o valor do troco pedido no caixa, retira do caixa as
    notas necessárias para o troco (decrementa os contadores das notas) e retorna
    o valor 1, que significará que o troco foi feito com sucesso. O cálculo do troco
    deve sempre dar preferência para as notas de valores mais altos. Se não houver
    o valor do troco no caixa, então exibe mensagem informando o fato e retorna o
    valor zero, que significará que houve falha no troco.
    Classe Setor:
    Esta classe modela cada setor do teatro. Tem a tarefa de gerenciar os lugares
    disponíveis.
    A classe Setor deve implementar pelo menos os seguintes métodos:
    SISTEMAS DE
    INFORMAÇÃO
     abreSetor(codigo, capacidade, preco): onde codigo é um número inteiro
    qualquer que identifica o setor, capacidade é a quantidade de lugares que este
    setor comporta, e preco é o preço unitário (de um lugar) neste setor.
     reservaLugar(quantidade): reserva quantidade de lugares neste setor (isto é,
    decrementa essa quantidade do número de lugares disponíveis) se houver essa
    quantidade de lugares disponível. Senão, emite mensagem informando tal fato.
    Retorna o número de lugares reservados.
     capacidadeSetor(): retorna a capacidade do setor.
     disponibilidadeSetor(): retorna o número de lugares disponíveis no setor.
    Classe Vendedor
    Esta classe modela uma entidade (real ou virtual) responsável pela venda de ingressos
    e também pelo teatro. É o vendedor quem deve abrir o teatro e o caixa. Para tanto, esta
    classe deve interagir com o usuário e com as classes Caixa e Setor. Além disso, é
    responsável por gerar relatórios da situação atual do teatro (setores) e do caixa.
    A classe Vendedor deve implementar pelo menos os seguintes métodos:
     abreCaixa(notas1, notas5, notas10, notas20, notas50, notas100): onde
    notasX é a quantidade de notas X (X sendo 1, 5, 10, 20, 50 ou 100) que o caixa
    possuirá no início do dia. Este método deve instanciar um objeto da classe Caixa
    e chamar métodos para inicializar seus atributos.
     abreTeatro(codigoCamarote, capacidadeCamarote, precoCamarote,
    codigoFrente, capacidadeFrente, precoFrente, codigoMeio,
    capacidadeMeio, precoMeio, codigoFundo, capacidadeFundo,
    precoFundo): cria os 4 setores (camarote, frente, meio e fundo) e inicializa seus
    atributos. Para a criação dos setores devem ser instanciados objetos da Classe
    Setor.
     vendeIngresso(quantidade, codigoSetor, notas1, notas5, notas10, notas20,
    notas50, notas100): onde quantidade é o número solicitado de ingressos,
    codigoSetor é o código do setor que o comprador (usuário do sistema) deseja e
    notasX é o número de notas X (X sendo 1, 5, 10, 20, 50 ou 100) que o
    comprador (usuário do sistema) forneceu para pagar os ingressos solicitados.
    Neste método, o vendedor deve conferir se o dinheiro recebido é suficiente para
    pagar os ingressos e se há a quantidade solicitada de lugares disponível no
    setor especificado. Se as duas condições não forem verdadeiras, exibe
    mensagem informando o fato (conforme a condição que falhou) e NÃO faz a
    venda. Deve ainda verificar se o usuário pagou além do valor necessário e,
    neste caso, calcular o valor do troco e pedir para o caixa devolver o troco devido.
    Caso o caixa não possua dinheiro para fornecer o troco, deve exibir uma
    mensagem informando o fato e NÃO efetua a venda. Se houver lugar no setor
    solicitado, se o dinheiro pago for suficiente, e se a devolução de troco for
    realizada com sucesso, então reserva quantidade lugares no setor
    codigoSetor e exibe mensagem informando que a venda foi realizada com
    sucesso. NOTE: se a venda não for realizada com sucesso mas o pagamento foi
    feito, o dinheiro pago precisa ser devolvido! (isto é, precisa decrementar os
    contadores das notas do caixa).
     geraRelatorio(): deve exibir a situação atual do teatro e do caixa, com as
    seguintes informações: código, capacidade e número de lugares disponíveis de
    cada setor; valor em dinheiro existente no momento da abertura do caixa, valor
    em dinheiro no atual momento (valor total e quantidade de cada tipo de nota) e
    quanto faturou até o momento; quantidade total de ingressos vendidos. O layout
    SISTEMAS DE
    INFORMAÇÃO
    do relatório deve seguir o modelo abaixo, inclusive as linhas em branco (campos
    definidos entre “” são variáveis):
    Layout para o relatório:
    RELATÓRIO PARCIAL DO TEATRO:
    SETOR CAMAROTE:
    Código:
    Capacidade:
    Lugares disponíveis:
    SETOR FRENTE:
    Código:
    Capacidade:
    Lugares disponíveis:
    SETOR MEIO:
    Código:
    Capacidade:
    Lugares disponíveis:
    SETOR FUNDO:
    Código:
    Capacidade:
    Lugares disponíveis:
    CAIXA:
    Valor inicial:
    Valor atual:
    Número de notas de R$ 1,00:
    Número de notas de R$ 5,00:
    Número de notas de R$ 10,00:
    Número de notas de R$ 20,00:
    Número de notas de R$ 50,00:
    Número de notas de R$ 100,00:
    Faturamento:
    Quantidade total de ingressos vendidos:


    Se liga cara, esse é o exercício todo… eu achei bem complicadinha pra quem tem pouco mais de 3 meses em Java…
    Mas então cara, como você bolaria isso?
    Depois eu te mando a minha pra ver o que você achou…
    abração cara!
  9. #9 by Daniel on 4 de Maio de 2009 - 13:07

    O que é recursividade?
  10. #10 by Henrique on 5 de Maio de 2009 - 10:05

    Flávio, to aki denovo pidindo sua ajuda… hehe
    Cara, meu professor deu outro exercicio e fiz uma parte dele mais nao sei como fazer o resto.
    Este aqui é o exercicio:

    Faca uma classe Cartao que possua uma senha. Devera conter um metodo retirada e um metodo saldo, que receba uma senha que devera ser a mesma armazenada no cartao. Faca tambem um metodo que altere a senha, desde que receba a senha antiga como parametro.

    vou postar aqui o que eu fiz(não sei se está correto)

    public class Cartao {

    public static void main(String args[]) {

    }

    private String nome;
    private int senha;
    private float quantidade;
    private int saldo;

    public Cartao(String nome, int senha, float quantidade, int saldo){
    this.nome = nome;
    this.senha = senha;
    this.saldo = saldo;
    this.quantidade = quantidade;
    }

    public void Retirar(float qtdretirar) {
    quantidade -= qtdretirar; // esse método irá retirar a ‘qtdRetirar’ da ‘quantidade’ total.
    }
    public int getSaldo() {
    return saldo;
    }
    public void setSaldo(int saldo) {
    this.saldo = saldo;
    }
    }
  11. #11 by Henrique on 5 de Maio de 2009 - 10:07

    postei errado… desculpa flavio!

    mais entao, meu código é aquele ali de cima!
    fiz o método retirada e o método saldo
    não sei como faço para fazer a senha!
    e nem como fazer para alterá-la…

    se puder dar alguma dica agradeço!

    e desculpa pelo post
  12. #12 by Mateus on 8 de Maio de 2009 - 1:02

    Fala aí Flávio! Já virou meu ídolo, cara! hauehaeueha
    de qualquer jeito, agora nem é tanto uma dúvida… é mais uma curiosidade:
    conhece alguma ferramenta, ou acha que é possível criar uma, que possa receber milhares de CEPs, e, jogando os CEPs nesse programinha, ele seja capaz de devolver a localização do CEP? Creio que seja perfeitamente possível, porque os CEPs devem respeitar alguma definição no que se refere à localidade. Talvez passando este trecho numérico como parâmeio, e criando vários ifs, será que é possível bolar algo nesse molde, se é que já não existe algo parecido?
    Falou cara! Obrigado!
  13. #13 by Flávio J. Mendes on 8 de Maio de 2009 - 1:30

    Então cara, os correios, no site deles oferecem um pacote chamado DNE, mas acredito que seja muito caro para o que você deva estar pensando em fazer. Achei um arquivo compactado, que seria um SQL com o cadastro de CEPs de 2008, mas não cheguei a testar. O link é esse. Apenas com um algoritmo acho que não seria capaz de descobrir o endereço completo pelo CEP não. A cidade talvez. Abraço!
  14. #14 by Maurício Faustino on 14 de Maio de 2009 - 10:15

    Como eu faço para colocar um browser no Swing?
    de preferencia com o motor do firefox ou chrome?
(não será publicado)