Programa para incluir, alterar, excluir,... AJUDA!

4 respostas
M

Ola pessoal!
Sou novato aki no forum, e estou com um problema aki com um programinha que serve para incuir, alterar, excluir, pesquisar, ordenar e a quantidade de convidados cadastrados.
Ele ta incluindo blz, mas da opção alterar em diante não ta funcionando!!
Segue o código do programa e da casse convidado abaixo:

package br.com.cet.algoritmos;
/**
 * autor: Marcos
 *
 * To change this generated comment edit the template variable "typecomment":
 * Window>Preferences>Java>Templates.
 * To enable and disable the creation of type comments go to
 * Window>Preferences>Java>Code Generation.
 */

import javax.swing.*;     
public class ProgramaFinal  { 

	static int tamanho = 5;
	static Convidado [] conv = new Convidado[tamanho];
	 
	/**
	 * @param args
	 */
	/**
	 * @param args
	 */
	public static void main(String[] args)  {
	int acao = 0;
	while (acao != 9){ 
		try{
	 	/* Object[] marcos = new Object[1]; */
		String input = JOptionPane.showInputDialog(null,
							" 1 = Inclusão \n"           + 
							" 2 = Alteração \n"          + 
							" 3 = Exluir \n"             +
							" 4 = Pesquisar \n"          + 
							" 5 = Ordenar a Lista \n"    +
							" 6 = Quantidade de Convidados \n" + 
							" 9 = Sair");
		acao = Integer.parseInt(input);
	
	    switch (acao) {
	    	case 1:
	    		if (numeradora() == tamanho) {
	    			JOptionPane.showMessageDialog(null, " Lista Ja Esta Completa ", 
	    	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
	    			break;
	    		}
	    		
	    		incConv();
    			break;
	    	case 2:
	    		if (exitConv() == 9){
	    			JOptionPane.showMessageDialog(null, "Não  Convidados Cadastrados ", 
			                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
	    			break;
	    		}
	    		altConv();
    			break;
			case 4: 
				pesqConv();
				break;
			case 3: 
				excConv();
				break;
			case 6:
				qtdConv();		
				break;
			default: 
				if (acao != 9){
				JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima!", 
		                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
				}
				   
    	}
   
    }catch (NumberFormatException e ){
    	JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima! ", 
                "Mensagem", JOptionPane.INFORMATION_MESSAGE);    
	}catch (NullPointerException e ){
    	System.out.println(e);
    }
	catch (ArrayIndexOutOfBoundsException e ){
    	System.out.println("Fora do Array");
    }
  
	}
 }
	
	
	/**
	 * Numera o array .
	 */
	public static int numeradora(){
		int numera = 0;
		for(int i =0;i < tamanho; i++){
			if (conv[i] == null){
				numera = i;
				break;
			}
			else {
				numera = tamanho;
			}
		}
		return numera;
	}
	/**
	 * Metodo Para Inclusao dos Convidados
	 * 
	 */
	public static  void incConv() {
		Convidado convidado;
		@SuppressWarnings("unused")
		String convConv,convTel;
		convTel = null;
		convConv = JOptionPane.showInputDialog(" Nome Do Convidado?");
		if (convConv.equals("")){
			JOptionPane.showMessageDialog(null, " Falta Informa o Nome do Convidado ", 
						"Mensagem", JOptionPane.INFORMATION_MESSAGE);
		}
		else {
			convTel = JOptionPane.showInputDialog(" Telefone Do Convidado");
		}
		convidado = new Convidado();
		conv[numeradora()]= convidado;
		  JOptionPane.showMessageDialog(null,"Convidado Cadastrado com Sucesso!", 
                               "Mensagem", JOptionPane.INFORMATION_MESSAGE);
	}
		
		
	public static  void altConv(){
		int encontrou = 0;
		String convConv = "";
		convConv = JOptionPane.showInputDialog(" Nome do Convidado Para Alterar?");
		if (convConv.equals("")){
			JOptionPane.showMessageDialog(null, " Falta Informar o Nome do Convidado Para Pesquisa!", 
	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
			
		}
		else {
			boolean ok = false;
			for(int i=0; i < tamanho;i++){
				if ((conv[i]!= null) && convConv.equalsIgnoreCase(conv[i].nome)){
					encontrou = i;
					ok = true;
					break;
				}
			}
			
			if (ok == true){
				int acao = 0;
				try{
					/* Object[] Marcos = new Object[1]; */
					String input = JOptionPane.showInputDialog(null,
								" 1 = Altera Convidado \n"           + 
								" 2 = Altera Numero do Telefone \n"  + 
								" 9 = Sair");
					acao = Integer.parseInt(input);
		
					switch (acao) {
					case 1:
						convConv = JOptionPane.showInputDialog(null,
								 "Vai Altera Convidado " + conv[encontrou].nome + " Para?");
						conv[encontrou].nome(convConv);
						JOptionPane.showMessageDialog(null,"Convidado Alterado com Sucesso!",
								"Mensagem", JOptionPane.INFORMATION_MESSAGE);
						break;
					case 2:
						String telConv = JOptionPane.showInputDialog(null,
								 "Vai Altera o Telefone de  " + conv[encontrou].nome + " Para?");
						conv[encontrou].telefone(telConv);
						JOptionPane.showMessageDialog(null,"Telefone do Convidado Alterado com Sucesso!",
								"Mensagem", JOptionPane.INFORMATION_MESSAGE);
						break;
					default: 
						if (acao != 9){
							JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima! ", 
									"Mensagem", JOptionPane.INFORMATION_MESSAGE);
						}
					
					}
	   
				}catch (NumberFormatException e ){
						JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima! ", 
								"Mensagem", JOptionPane.INFORMATION_MESSAGE);    
				}catch (Exception e ){
					//System.out.println("Sair 2");
				}
			}
			else{
				JOptionPane.showMessageDialog(null, " Convidado Não Está Cadastrado! ", 
						"Mensagem", JOptionPane.INFORMATION_MESSAGE);
				
			}
			
		}
	}
	
	public static void excConv() {
		int encontrou = 0;
		String convConv = "";
		convConv = JOptionPane.showInputDialog(" Nome do Convidado Para Exluir?");
		if (convConv.equals("")){
			JOptionPane.showMessageDialog(null, " Falta Informa o Nome do Convidado Para Pesquisa! ", 
	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
			
		}
		else {
			boolean ok = false;
			for(int i=0; i < tamanho;i++){
				if ((conv[i]!= null) && convConv.equalsIgnoreCase(conv[i].nome)){
					encontrou = i;
					ok = true;
					break;
				}
			}
			
			if (ok == true){
				conv[encontrou].nome("");
				conv[encontrou].telefone("");
			}
		}
		
	}
	/**
	 * Metodo para o pesquisa de o convidados esta cadastrado ou Nao 
	 *
	 */
	public  static void pesqConv() {
		String Convconv = null;
		Convconv = JOptionPane.showInputDialog(" Nome Do Convidado Para Pesquisa?");
		if (Convconv.equals("")){
			JOptionPane.showMessageDialog(null, " Falta Informa o Nome do Convidado Para Pesquisa ! ", 
	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
			
		}
		
		int encontrou = 0;
		boolean ok = false;
		for (int i=0;i < tamanho;i++){
			if ((conv[i]!= null) && Convconv.equalsIgnoreCase(conv[i].nome)){
				encontrou = i; 
				ok = true;
				break;
			}
		}
	
		if (ok == true){  
			JOptionPane.showMessageDialog(null, " Convidado Cadastrato! "+conv[encontrou].nome+" - "+conv[encontrou].telefone, 
	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
		}
		else {
			JOptionPane.showMessageDialog(null, "Convidado Nao Cadastrado", 
	                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
		}
	}
		
	public  void ordConv() {
		for (int i = 0; i < conv.length-1; i++){
			for (int j = i+1; j < conv.length; j++){
				if ((conv[i]!=null) && (conv[j] != null))
				if (conv[i].nome.compareToIgnoreCase(conv[j].nome) < 0){
					
				}
			}
			}
		}	
	
	/**
	 * Metodo para Calcular a quantidade de Convidados
	 * @return 
	 * @return
	 */
	public static void qtdConv() {
		int qtdconv = 0;
		String out="";
		for (int i =0; i < tamanho;i++){
			if (conv[i] == null){
				qtdconv = qtdconv+i;
				break; 
			}else {
				out += conv[i].nome+ " - "+ conv[i].telefone+"\n";
			}
		}
		out = out + "Quantidade de Convidados é : " + qtdconv+"\n";
		JOptionPane.showMessageDialog(null, out, 
                "Mensagem", JOptionPane.INFORMATION_MESSAGE);
	}
	
	
	public static int exitConv() {
		int existe = 0;
		for (int i =0; i < tamanho;i++){
			if (conv[i] == null){
				existe = i;
				break; 
			}
		}
		return existe;
	}
	
	
	
}
Classe convidado:
package br.com.cet.algoritmos;
/**
 * @author Marcos Monteiro
 *
 * To change this generated comment edit the template variable "typecomment":
 * Window>Preferences>Java>Templates.
 * To enable and disable the creation of type comments go to
 * Window>Preferences>Java>Code Generation.
 */

/**
 * Class representa os convidados
 */
public class Convidado {
	public static final String conv = null;
	public String nome;
	public String telefone;
	public void nome(String string) {
		// TODO Auto-generated method stub
		
	}
	public void telefone(String string) {
		// TODO Auto-generated method stub
		
	}
	
		
	}

4 Respostas

B

Que tal ser maiis específico com o seu “Não ta funcionando”??
O q ta acontecendo??

C

Cara, tipo tem algumas coisas que voce tem que aprender logo.

Principios da orientaçao a objetos, “dividir em partes, e fazer que essas partes possam fazer um todo funcionar”

Acredito que se voce “pensar” orientado nessa primeira classe, divindo-as por suas tarefas, metade dos erros qe ela tem irao sumir.

E procure ser mais especifico na hora que pedir para encontrar o erro, exemplo, “erro na listagem de dados da consulta”, ou “qual o erro neste trecho de codigo?”

M

Aew galera foi mal! mas essa foi a minha primeira vez no forum, mas é o seguinte, nesse programa eu incluo o nome e o numero da pessoa, Ok!
Mas quando eu vou alterar (ou qualquer outra opção) ele não tá encontrando o nome q eu já inclui. OK!
E esse nome vem da classe CONVIDADO q mostrei anteriormente!
Eu gostaria de saber o pq do programa não tá conseguindo fazer isso?
Obrigado a todos!!

Esse é a parte do código p/ alterar o nome ou o telefone!

public static  void altConv(){ 
      int encontrou = 0; 
      String convConv = ""; 
      convConv = JOptionPane.showInputDialog(" Nome do Convidado Para Alterar?"); 
      if (convConv.equals("")){ 
         JOptionPane.showMessageDialog(null, " Falta Informar o Nome do Convidado Para Pesquisa!", 
                   "Mensagem", JOptionPane.INFORMATION_MESSAGE); 
          
      } 
      else { 
         boolean ok = false; 
         for(int i=0; i < tamanho;i++){ 
            if ((conv[i]!= null) && convConv.equalsIgnoreCase(conv[i].nome)){ 
               encontrou = i; 
               ok = true; 
               break; 
            } 
         } 
          
         if (ok == true){ 
            int acao = 0; 
            try{ 
               /* Object[] Marcos = new Object[1]; */ 
               String input = JOptionPane.showInputDialog(null, 
                        " 1 = Altera Convidado \n"           + 
                        " 2 = Altera Numero do Telefone \n"  + 
                        " 9 = Sair"); 
               acao = Integer.parseInt(input); 
       
               switch (acao) { 
               case 1: 
                  convConv = JOptionPane.showInputDialog(null, 
                         "Vai Altera Convidado " + conv[encontrou].nome + " Para?"); 
                  conv[encontrou].nome(convConv); 
                  JOptionPane.showMessageDialog(null,"Convidado Alterado com Sucesso!", 
                        "Mensagem", JOptionPane.INFORMATION_MESSAGE); 
                  break; 
               case 2: 
                  String telConv = JOptionPane.showInputDialog(null, 
                         "Vai Altera o Telefone de  " + conv[encontrou].nome + " Para?"); 
                  conv[encontrou].telefone(telConv); 
                  JOptionPane.showMessageDialog(null,"Telefone do Convidado Alterado com Sucesso!", 
                        "Mensagem", JOptionPane.INFORMATION_MESSAGE); 
                  break; 
               default: 
                  if (acao != 9){ 
                     JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima! ", 
                           "Mensagem", JOptionPane.INFORMATION_MESSAGE); 
                  } 
                
               } 
       
            }catch (NumberFormatException e ){ 
                  JOptionPane.showMessageDialog(null, " Opção Errada, Escolha Uma das Opções Acima! ", 
                        "Mensagem", JOptionPane.INFORMATION_MESSAGE);    
            }catch (Exception e ){ 
               //System.out.println("Sair 2"); 
            } 
         } 
         else{ 
            JOptionPane.showMessageDialog(null, " Convidado Não Está Cadastrado! ", 
                  "Mensagem", JOptionPane.INFORMATION_MESSAGE); 
             
         } 
          
      } 
   }
M

Aew pessoal! vcs podem me ajudar???

Criado 21 de junho de 2007
Ultima resposta 26 de jun. de 2007
Respostas 4
Participantes 3