Ir ao conteúdo
  • Cadastre-se

Ajuda num exercício simples


Khromos

Posts recomendados

Então galera, to começando a estudar Java e C# e estou com essas pequenas dúvidas.

1 - crie classe Clientes com atributos código e nome e métodos set e get. (ja foi criado a classe em outra janela com os métodos set e get)

2 - Crie uma classe chamada CadastroClientes com método main

3 - Crie uma rotina de cadastro com as opções - 01 - Cadastrar - 02 imprimir - 03 - sair do programa

4 - na opção cadastrar cadastre clientes no Máximo 5

5 - Na opção imprimir, imprima (usar JOptionPane

6 - Na opção 3 encerre o programa!

 

O exercício que tenho que fazer pro curso é esse. mas qd coloco pra rodar ele aparece umas mensagens doidas. estou usando o eclipse. n encontrei o erro. alguém pode ajudar esse pequeno padawan. ahuhauha hauahau

package aula03;import javax.swing.JOptionPane;public class cadastroClientes {    public static void main(String[] args) {                            Clientes [] pessoas = new Clientes[5];        int codigo;        String nome;                String menu = "01 - Cadastrar \n"+                      "02 - Imprimir \n" +                      "03 - Sair do Programa \n"+                      " Escolha sua opção \n\n";                boolean sair = false;        while(sair == false){            int op = Integer.parseInt(JOptionPane.showInputDialog(menu));                        switch(op){            case 1:                for (int i = 0; i < pessoas.length; i++){                    Clientes p1 = new Clientes();                    codigo = Integer.parseInt("Digite o codigo da " + (i+1) + " pessoa: ");                    nome = JOptionPane.showInputDialog("Digite o nome da " + (i+1) + " pessoa: " );                                        p1.setCodigo(codigo);                    p1.setNome();                    pessoas[i] = new Clientes();                    pessoas[i] = p1;                                                }                break;                            case 2:                int i = 0;                JOptionPane.showMessageDialog(null, "Código: " + pessoas[i].getCodigo());                JOptionPane.showMessageDialog(null, "Pessoa: " + pessoas[i].getNome());                break;                            case 3:                JOptionPane.showMessageDialog(null, "Obrigado por usar a Khromos corporation! \n Tenha um bom dia!");                sair = true;                                                                                                    }                            }            }}

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Khromos

 

No seu código você esqueceu de passar a variável nome para p1.setNome.

Antes:

p1.setCodigo(codigo);p1.setNome();pessoas[i] = new Clientes();pessoas[i] = p1; 

Depois:

p1.setCodigo(codigo);p1.setNome(nome);pessoas[i] = new Clientes();pessoas[i] = p1; 

Você também esqueceu de usar JOptionPane na entrada de dados do código.

Antes:

case 1:   for (int i = 0; i < pessoas.length; i++){      Clientes p1 = new Clientes();      codigo = Integer.parseInt("Digite o codigo da " + (i+1) + " pessoa: ");      nome = JOptionPane.showInputDialog("Digite o nome da " + (i+1) + " pessoa: " );

Depois:

case 1:   for (int i = 0; i < pessoas.length; i++){      Clientes p1 = new Clientes();      codigo = Integer.parseInt(JOptionPane.showInputDialog("Digite o codigo da " + (i+1) + " pessoa: "));      nome = JOptionPane.showInputDialog("Digite o nome da " + (i+1) + " pessoa: " );

E sua impressão (case 2) só mostra a primeira posição. Corrija.

Use um laço FOR ou WHILE.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Nossa, agora aparece um novo erro!

package aula03;import javax.swing.JOptionPane;public class cadastroClientes {    public static void main(String[] args) {                            Clientes [] pessoas = new Clientes[5];        int codigo;        String nome;                String menu = "01 - Cadastrar \n"+                      "02 - Imprimir \n" +                      "03 - Sair do Programa \n"+                      " Escolha sua opção \n\n";                boolean sair = false;        while(sair == false){            int op = Integer.parseInt(JOptionPane.showInputDialog(menu));                        switch(op){            case 1:                for (int i = 0; i < pessoas.length; i++){                    Clientes p1 = new Clientes();                    codigo = Integer.parseInt("Digite o codigo da " + (i+1) + " pessoa: ");                    nome = JOptionPane.showInputDialog("Digite o nome da " + (i+1) + " pessoa: " );                                        p1.setCodigo(codigo);                    p1.setNome();                    pessoas[i] = new Clientes();                    pessoas[i] = p1;                                                }                break;                            case 2:                int i = 0;                JOptionPane.showMessageDialog(null, "Código: " + pessoas[i].getCodigo());                JOptionPane.showMessageDialog(null, "Pessoa: " + pessoas[i].getNome());                break;                            case 3:                JOptionPane.showMessageDialog(null, "Obrigado por usar a Khromos corporation! \n Tenha um bom dia!");                sair = true;                                                                                                    }                            }            }}

Dai da esse erro aqui quando compila:

Exception in thread "main" java.lang.NumberFormatException: For input string: "Digite o codigo da 1 pessoa: "    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)    at java.lang.Integer.parseInt(Integer.java:580)    at java.lang.Integer.parseInt(Integer.java:615)    at aula03.cadastroClientes.main(cadastroClientes.java:26)

Dai n compila! =\
 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!