Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
s4lezardv1A

VisualG VISUALG - Exercicio com Vetores

Recommended Posts

Postado (editado)

Pessoal estou com uma duvida nesse exercicio. Não estou entendendo muito vetores, alguem pode ajudar a resolver? O começo eu ja consegui, o que eu não estou conseguindo é que depois do numero digitado, o programa percorra do inicio ate o final dos vetores para saber se o numero digitado é igual ou não:

 

Faça um algoritmo que leia 10 números e armazene-os em um vetor de 10 posições. Porém, antes de armazenar o número, verifique se ele já não existe no vetor, caso exista mostre uma mensagem de erro ao usuário juntamente com os números que já foram digitados e peça para que o usuário digite um número diferentes dos que já existem.

 

Se alguem puder dar uma verificada no codigo e dizer onde estou errando por favor.

Editado por s4lezardv1A
não estava conforme as regras

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro usuário,

 

Seja bem-vindo ao Fórum do Clube do Hardware.

 

No intuito de servir como fonte de pesquisa no caso de instituições de ensino, informamos que incorrer no resolvimento por completo de questões relacionadas a disciplinas escolares de cursos técnicos e faculdades podem ser revistas e removidas pela Equipe de Moderação do Clube do Hardware.

 

Para sanar dúvidas sobre esse tipo de problema, por gentileza, publique o passo a passo do desenvolvimento da questão, projeto, monografia ou conteúdo em dúvida para que possamos analisar se a resposta está correta ou não, ou para que possa ser auxiliado com a dúvida no desenvolvimento do exercício.

 

Infelizmente, não há como resolver os trabalhos pelos usuários. O objetivo do Fórum do Clube do Hardware é auxiliar seus usuários a encontrar soluções para que possam sanar suas dúvidas, e não de trazer soluções prontas para seus usuários.. Além disso, copiar e colar respostas que não são de autoria própria do qualquer usuário é considerado plágio, o que é ilegal.

 

Esperamos que compreenda.

 

Atenciosamente,

Equipe Clube do Hardware

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, nem criar um vetor você sabe? Inicie com o que você sabe, poste o código aqui que vamos te guiar para o caminho certo. Ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

sim sim vou postar o codigo que eu fiz ate agora, perdão não tinha me informado sobre essa parte. Estou no primeiro semestre de T.I, o codigo que eu fiz ate agora:

=================================================================

Var
   // Seção de Declarações das variáveis
   vNumbers,vNumbers2: vetor[1..10] de inteiro
   counter,counter2,repetido: inteiro

Inicio
   // Seção de Comandos, procedimento, funções, operadores, etc...
   Para counter de 1 ate 10 faca
      escreval("Digite um numero:")
      leia (vNumbers[counter])
      repetido<- vNumbers[counter]





      se vNumbers[counter] = repetido então
      escreval("numero repetido")
      fimse

    fimpara


Fimalgoritmo

===========================================================

 

   

   se vNumbers[counter] = repetido então
      escreval("numero repetido")

 

Esssa comparação que não estou conseguindo, quero que a variavel repetido receba o numero digitado, e ela percorra todo os vetores procurando se tem numero repetido ou não. Acredito que tenha que colocar outro para e reformular a comparação, mas não sei como.

Editado por DiF
Inserir o código com o botão CODE <>

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

Então;

 

Suas variáveis estão muito confusas de entender, seria melhor se colocasse algo mais simples como x e y, segue um exemplo de vetor:

 

Algoritmo "Vetor e laço"
Var
x: vetor [1..10] de inteiro
i,n: inteiro
Inicio
para i de 1 ate 10 faca
escreval ("Escreva o",i ,"º número")
leia (i)
fimpara
Fimalgoritmo

Não fica melhor de entender?

 

Após fazer um laço para ler 10 números, você terá que fazer 2 laços.

Estes laços irão servir para mostrar os números repetidos.

 

Segue o exemplo:

para i de 1 ate 10 faca
para j de i+1 ate 10 faca

 

E no no final, estará que se Y número for igual a X número, então escreva um número que não se repita. 

 

Sou iniciante também, mas pela minha lógica acredito eu que funcione, tente, e se não conseguir, aguarde alguém mais experiente, valeu!

Editado por Niê
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok vou mudar as variaveis e tentar pensar em alguma coisa dessa forma. Mas colocando esses 2 laços, primeiramente o programa ira permitir que eu digite os 10 numeros, para depois ele mostrar os repetidos e pedir para digitar um novo numero.?

 

Ou permitira com que se eu digitar um numero 10 no indice1 e digitar o numero 10 no indice 3, ele ja peça para digitar um novo numero para o indice 3?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

Olá.


Para adiantar... segue um esboço:
 

// Faça um algoritmo que leia 10 números e armazene-os em um vetor de 10
// posições. Porém, antes de armazenar o número, verifique se ele já não
// existe no vetor, caso exista mostre uma mensagem de erro ao usuário
// juntamente com os números que já foram digitados e peça para que o usuário
// digite um número diferentes dos que já existem.
algoritmo "FCdH"
var
   vNumeros :vetor[1..10] de inteiro
   repetido :inteiro
   contator :inteiro
   i        :inteiro
inicio
para contator de 1 ate 10 faca
   repita
      escreval("Digite",contator,"o número")
      leia(vNumeros[contator])
      repetido <- 0 //inicializa como não repetido
      para i de 1 ate contator-1 faca //do primeiro até o penúltimo número
         se (vNumeros[contator] = vNumeros[i]) ENTÃO //se for igual
            repetido <- 1 //marca como repetido
         fimSe
      fimPara
   ate repetido=0
fimPara
fimAlgoritmo

 

Tente entender a estrutura.. aí veja o que está faltando e implemente.


Qualquer dúvida é só perguntar.

 

No aguardo.

Editado por Simon Viegas
  • Triste 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal consegui. Usei um algoritmo em que tem um laço, leia 10 numero,depois do leia ele tem outro laço, dentro desse laço tem um loop, se o numero digitado for igual a outra variavel peça para digitar novamente. Se não a variavel recebe o numero digitado.

Exemplo:

para counter de 1 ate 10 faca

escreval( "Digite o",counter,"º numero:")
 leia (V[counter])

 para counter1 de 1 ate counter faca
 enquanto (V[counter] =V1[counter1]) faca


 escreval
 escreval
 escreval("Numero ",V[counter]," ja foi digitado como",counter1,"º numero")
 escreval("Digite novamente o ",counter,"° numero.")
 leia (V[counter])
 fimenquanto
 fimpara
 V1[counter1]<-V[counter]

 

a logica principal fica assim, e no resto ele só exibe com outro laço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×