Ir ao conteúdo
  • Cadastre-se

Duvida em dois exercícios. Loop contável e contagem de repetições em array.


Posts recomendados

E ai rapeize, to com dois códigos aqui, e estou com dúvidas nos dois.
O primeiro é esse aqui:

 public static boolean tadentro(int[] vetor, int tamanho, int numero){        vetor = new int[tamanho];                for (int i = 0; i < tamanho; i++){            if (vetor[i] == numero){                return true;                }            }        return false;    }        public static void main(String[] args){        boolean pode = true;        String aux = "", texto;        Scanner teclado = new Scanner(System.in);                int N = teclado.nextInt();        for (int i = 0; i < N; i++){            texto = teclado.nextLine();            for (int j = 0; j < texto.length(); j++){                if (pode && texto.charAt(j) != ' '){                    aux += texto.charAt(j);                    pode = false;                }else if(!pode && texto.charAt(j) == ' '){                    pode = true;                }            }            System.out.println(aux);            pode = true;            aux = "";        }    } 

 

   

 

https://www.urionlinejudge.com.br/judge/pt/problems/view/1318, esse é o link para o exercício.

Bem, ele funciona quando você tira o for de cima e deixa só o segundo, digitando cada string em cada execução. Mas quando o usuário escolhe o numero de iterações começa a dar problema, na primeira iteração, o for de cima simplesmente ignora o for de baixo, só efetuando as operações na segunda vez que ele passa. Eu queria saber porque na primeira iteração ele ignora o for de baixo.

 

O segundo:

  
  public static void main(String[] args){        int[] vetor, vetor2;        int falsos = 0, bilhetes = 0;        Scanner teclado = new Scanner(System.in);                do{            bilhetes = teclado.nextInt();            int pessoas = teclado.nextInt();            if (bilhetes == 0 && pessoas == 0){                break;            }            vetor = new int[pessoas];            vetor2 = new int[pessoas];                        for (int i = 0; i < pessoas; i++){                vetor[i] = teclado.nextInt();            }                        for (int i = 0; i < pessoas; i++){                for (int j = 0; j < pessoas; j++){                    if (vetor[i] == vetor[j] && i != j && !tadentro(vetor2, pessoas, vetor[i])){                        vetor2[i] = vetor[i];                        falsos += 1;                    }                }            }            System.out.println(falsos);            falsos = 0;        }while(true);

 

O segundo problema eu tenho que contar quantas repetições um vetor tem.

Eexemplo: O vetor: 6 1 3 6 6 4 2 3 1 2 tem 4 repetições.

Esse código que eu fiz não funciona de jeito nenhum.

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...