Boa tarde pessoal. Sou novo aqui e também em programação estou apreendendo.
Pela quantidade post que encontrei aqui estou certo que aqui tem vários expert na programação e também a linguagem java. tenho esse trabalho e preciso de ajuda.
Não sei onde começar.
Pretende-se implementar um programa para manter os registos telefónicos dos
clientes de uma empresa de telecomunicações e produzir a devida faturação.
Para isso, o programa deverá manipular dois tipos essenciais de registos
(Classe): Cliente e Chamada.
1- Os registos Cliente e Chamada deverão conter a seguinte informação,
respetivamente:
Class Cliente:
nome;
nº cliente;
morada;
nº de telefone (String);
lista de chamadas.
Class Chamada:
nº de telefone destino;
tipo de chamada(F-fixo, I-internacional, T-telemóvel);
tempo, em minutos (valor real).
2- O programa deverá possibilitar as seguintes operações, através de um
menu:
inserir um novo cliente;
remover um cliente existente;
alterar os dados de um cliente;
pesquisar clientes por nº de cliente;
pesquisar clientes por qualquer termo do seu nome;
inserir uma chamada na lista de chamadas de um cliente;
imprimir os dados de um cliente;
construir e imprimir a fatura de um dado cliente, tendo em conta o seguinte preçário:
chamada telefone fixo = 2.5 dobras / min
chamada internacional = 10.4 dobras / min
chamada para telemóvel = 1.25 dobras / min
exportar a fatura de um dado cliente para um ficheiro de texto ##
eessaéaclassecliente.publicclassCliente{// os atributos da ClassprivateStringnome;privateintnumero;privateStringmorada;privateStringtelefone;Chamada[]cliente;privateintregisto_chamadas=0;
publicCliente(){}publicCliente(Stringnome,intnumero,Stringmorada,Stringtelefone){this.nome=nome;this.numero=numero;this.morada=morada;this.telefone=telefone;this.cliente=newChamada[100];}// os Guets e setspublicStringgetNome(){returnnome;}publicintgetNumero(){returnnumero;}publicStringgetMorada(){returnmorada;}publicStringgetTelefone(){returntelefone;}publicvoidsetNome(Stringnovo_nome){nome=novo_nome;}publicvoidsetMorada(Stringnova_morada){morada=nova_morada;}publicvoidsetTelefone(Stringnovo_telefone){telefone=novo_telefone;}publicvoidsetChamada(Chamadachamada){cliente=newChamada[registo_chamadas++];}
publicstaticvoidmain(String[]args){System.out.println("Escolha uma opção");intescolha=0;do{menu();escolha=entrada.nextInt();entrada.nextLine();switch(escolha){case1:cadastro();break;case2:remover();break;case3:alterarDados();break;case4:pesquisarClientePeloNumero();break;case5:pesquisarClienteNome();break;case6:break;case7:pesquisarClienteTelefone(pesquisa);break;case8:break;case9:break;}}while(escolha!=10);}publicstaticvoidmenu(){System.out.println(" CADASTRO DO CLIENTE");System.out.println(" 1-Insere cliente ");System.out.println(" 2-Apagar cliente ");System.out.println(" 3-Editar os dados de cliente ");System.out.println(" 4-Pesquisar cliente por numero ");System.out.println(" 5-Pesquisar cliente por qual quer termo do seu nome");System.out.println(" 6-Inserir uma chamada ");System.out.println(" 7-Pesquisar cliente por telefone ");System.out.println(" 8-Imprir fatura ");System.out.println(" 9-Exportar a fatura de um dado cliente para um ficheiro de texto");System.out.println(" 10-Terminar");}publicstaticvoidcadastro(){inserirNome();inserirTelefone();inserirMorada();System.out.println("O cliente foi cadastrado com os seguintes dados");guardarCadastro();}publicstaticvoidinserirNome(){intguardarNome=0;System.out.print("Nome do clinte: ");nome=entrada.nextLine();guardarNome++;}publicstaticvoidinserirTelefone(){intgTelefone=0;System.out.print("Numero de telefone: ");telefone=entrada.nextLine();while(gTelefone<telefone.length()||telefone.length()!=7){if(telefone.charAt(gTelefone)>='0'&&telefone.charAt(gTelefone)<='9'&&telefone.length()==15)gTelefone++;elseif((telefone.charAt(gTelefone)>='0'&&telefone.charAt(gTelefone)<='9')||telefone.length()!=15){System.out.println("O telefone tem apenas 15 dígitos");telefone=entrada.nextLine();}else{System.out.println("O número de telefone cotem somente dígitos");gTelefone=0;telefone=entrada.nextLine();}}}publicstaticvoidinserirMorada(){intguardarMorada=0;System.out.print("Insira a morada do cliente: ");morada=entrada.nextLine();guardarMorada++;}publicstaticvoidguardarCadastro(){Clientecliente=newCliente(nome,numero+1,morada,telefone);guardarCliente[numero++]=cliente;imprimirdados(numero-1);}publicstaticvoidimprimirdados(intpesquisa){System.out.println("Nome do cliente: "+guardarCliente[pesquisa].getNome());System.out.println("Número do cliente: "+guardarCliente[pesquisa].getNumero());System.out.println("Morada do cliente: "+guardarCliente[pesquisa].getMorada());System.out.println("Telefone do cliente: "+guardarCliente[pesquisa].getTelefone());}publicstaticvoidalterarDados(){System.out.println("Qual é o número do cliente que pretendes alterar os seus dados?");pesquisa=entrada.nextInt()-1;System.out.println("Insira os novos dados do cliente");entrada.nextLine();inserirNome();inserirTelefone();inserirMorada();guardarCliente[pesquisa].setNome(nome);guardarCliente[pesquisa].setTelefone(telefone);guardarCliente[pesquisa].setMorada(morada);}publicstaticvoidpesquisarClientePeloNumero(){System.out.println("Qual é o número do cliente para o pesquiusar");pesquisa=entrada.nextInt()-1;if(pesquisa<numero){System.out.println("OS dados do cliente a pesquisar");imprimirdados(pesquisa);}else{System.out.println("O cliente cujo o numero é este não existe");}}publicstaticvoidpesquisarClienteTelefone(intpesquisa){Stringtelefo="";System.out.println("Digite o numero do Cliete");telefo=entrada.nextLine();for(pesquisa=0;pesquisa<numero;pesquisa++){if((guardarCliente[pesquisa].getTelefone().equals(telefo)))imprimirdados(pesquisa);elseSystem.out.println("Este cliente não existe");}}publicstaticvoidpesquisarClienteNome(){Stringnom="";System.out.println("Digite o nome do Cliete para o pesquisar");nom=entrada.nextLine();for(pesquisa=0;pesquisa<numero;pesquisa++){if((guardarCliente[pesquisa].getNome().equals(nom)))imprimirdados(pesquisa);elseSystem.out.println("Este cliente não existe");}}publicstaticvoidremover(){System.out.println("Insira o numero do cliente para remover");pesquisa=entrada.nextInt()-1;if(pesquisa<numero){Clientecliente=newCliente(nome,numero+1,morada,telefone);guardarCliente[numero-1]=cliente;System.out.println("Cliente removido");numero--;}else{System.out.println("O cliente enexiste");}}publicstaticvoidinserirChamada(){}
}
Quero ajuda para poder terminar o metudo inserirChamada. que não estou a ver como estou com muito receio.