Ir ao conteúdo
  • Cadastre-se

Uotar

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Tudo que Uotar postou

  1. E não é que era isso mesmo!! Muito obrigado meu amigo!
  2. Boa tarde amigos, Estou com um problema que não acho o erro de jeito nenhum. O programa em questão deve determinar a interseção de dois conjuntos de no máximo 100 elementos cada Ja quebrei a cabeça mas não consigo encontrar o erro. O programa compila mas não imprime corretamente o vetor interseção Segue o código: { Determina a interseção de dois conjuntos de, no máximo, 100 elementos cada } Program Intersecao ; type Vetor = array [1..100] of real; procedure DetermineConjuntoIntersecao ( n :integer; A :Vetor; m :integer; B :Vetor; { A,B : entrada: conjuntos fornecidos } { n,m: entrada: números de elementos dos conjuntos A e B } var p :integer; var I :Vetor );{ I: saída: conjunto Interseção de A com B } { p: saída: apontador para o conjunto interseção } var y,k { auxiliares } : integer; Achou { encontrou um elemento da interseção } : boolean; begin p := 0; { sinaliza conjunto Interseção vazio } {y := 1;} for y:=1 to n do begin k := 1; Achou := false; repeat { verifica se o elemento A[i] está em B } if A[y] = B[k] then begin p := p + 1; I [p] := A [y]; { armazena A[i] no conjunto interseção } Achou := true; end; k := k + 1; until (k > m) or (Achou); end; end; { Defina o tipo das variáveis } var m,n,p { números de elementos dos conjuntos } : integer; A,B { conjuntos fornecidos como entrada } : Vetor; I { conjunto interseção } : Vetor; j : integer; Begin ClrScr; writeLn( 'DETERMINA INTERSEÇÃO DE DOIS CONJUNTOS DE NO MÁXIMO 100 ELEMENTOS CADA' ); writeLn; writeLn( '=====================================================' ); writeLn; writeLn( 'Aluno: Valter Almeida Santos Júnior' ); writeLn( 'Matrícula: 2016007243' ); writeLn; writeLn( '=====================================================' ); writeLn; writeLn( 'Entre com o número de elementos do conjunto A' ); readLn( n ); { Lê os elementos do conjunto A } writeLn; writeLn( 'Entre com os ', n, ' elementos do conjunto A' ); for j := 1 to n do begin write( 'A[', j, '] = ' ); readLn( A[j] ); end; writeLn; writeLn( 'Entre com o número de elementos do conjunto B' ); readLn( m ); { Lê os elementos do conjunto B } writeLn; writeLn( 'Entre com os ', m, ' elementos do conjunto A' ); for j := 1 to m do begin write( 'B[', j, '] = ' ); readLn( B[j] ); end; writeLn; DetermineConjuntoIntersecao ( n, A, m, B, p, I ); writeLn; for j := 1 to p do writeLn( I [p]: ); readkey; end. Muito obrigado pela ajuda!!!

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