Ir ao conteúdo

H3nrique

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

Reputação

0
  1. Eu não conhecia esses laços for com mais de uma variável, no caso você usou "novo". Mas enfim, consegui corrigir meu algoritmo. Eis o código: #include <stdio.h> main () { int i, j, k, Lidos[20]; int Repetidos[20] {-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2}; int Repeticoes[20] {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; for (i = 0; i < 20; i++) { printf("Digite o a[%d] = ", i); scanf("%d", &Lidos[i]); for (j = 0; j <= i; j++) { if (Lidos[i] == Repetidos[j]) { Repeticoes[j]++; break; } else if (Repetidos[j] == -2) { Repetidos[[COLOR="red"]j[/COLOR]] = Lidos[i]; [COLOR="Red"]break;[/COLOR] } } if ( Lidos[i] < 0 || i >= 19) { for (k = 0; k < i; k++) { if (Repeticoes[k] != 1 && Repetidos[k] != -2) { printf("O numero %d apareceu %d vezes.\n", Repetidos[k], Repeticoes[k]); } } break; } } return 0; } A modificações estão em vermelho. Obrigado, dúvida solucionada.
  2. Olá pessoal, criei uma conta no clube só para tirar essa dúvida, e muitas outras que surgirem. Pois muito bem, estava tentando um exercício da lista sobre vetores passada por minha professora. Eis o enunciado da mesma: Minha abordagem do problema: A medida que as entradas são armazenadas num vetor, chamado "Lidos", o algoritmo verifica se o mesmo valor informado pelo usuário é igual aos valores de um segundo vetor, chamado "Repetidos", se for igual: um terceiro vetor, chamado "Repeticoes", na posição do mesmo valor de entrada recebe +1 e encerra o laço. E se o valor de Repetidos for igual a -2 (todos os valores do vetor são definidos como -2) essa posição passa a valer o valor digitado pelo usuário. Em seguida, se próxima entrada do usuário for negativa ou a variável de percurso do laço de leitura for maior ou igual a 19 ele verificará se os valores de "Repeticoes" é diferente de 1 (todos foram definidos para 1) e se "Repetidos" são diferentes de -2. E por fim, imprime os números repetidos e suas repetições. Aqui esta o código: O algoritmo apresenta um erro, como mostrado na imagem a seguir: O numero de repetições do segundo numero, sempre é somado +1. Quando o usuário digita a segunda sequencia de números repetidos o vetor de repetições já recebe +1, antes mesmo, do segundo 2 ser informado, assim sempre estando 1 a mais para as próximas sequências... Não consigo entender o porque disso acontecer, se vocês puderem me explicar o que realmente acontece, e me ajudar a consertar esse erro, eu agradeço. Obrigado!

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!