All pastes #126901 Raw Edit

Chank

public text v1 · immutable
·published 2006-08-11 21:57 UTC
rendered paste body
//Programa que lê dois vetores e posteriormente faz algumas alterações;
Program vetores;
uses crt;
var
    va,vb:Array[1..10] of Integer;
    vc,vd,ve:Array[1..20] of Integer;
    i,k,c,val_d:Integer;
    igual,achou:Boolean;
Begin
    //Criando o primeiro vetor
        WriteLN('Criando o vetor a');
        For i := 1 to 10 do
            Begin
                clrscr;
                WriteLN('Digite o valor ',i,' do vetor A:');
                ReadLN(va[i]);
            End;
        clrscr;
    //Criando o segundo vetor
        For i := 1 to 10 do
            Begin
                clrscr;
                WriteLN('Digite o valor ',i,' do vetor B:');
                ReadLN(vb[i]);
            End;
        clrscr;
    WriteLN('Vetor A ->');
    For i := 1 to 10 do
        Write(va[i],' ');
        WriteLN;
        WriteLN;
    WriteLN('Vetor B ->');
    For i := 1 to 10 do
        Write(vb[i],' ');
        WriteLN;
        WriteLN;
    //Vetor C - União dos vetores A e B sem repetição
    For i := 1 to 10 do
        vc[i] := va[i];
        c := 10;
        For k := 1 to 10 do
        Begin
            achou := False;
            For i:=1 to 10 do
            Begin
                If vb[k] = va[i] then
                achou:=true;
            End;
            If not achou then
            Begin
                c := c + 1;
                vc[c] := vb[k];
            End;
        End;
    WriteLN('A) Uniao A e B(Vetor C) e:');
    For i := 1 to 20 do
        Begin
            If (vc[i] <> 0) and (vc[i-1] <> vc[i]) Then
                Write(vc[i],' ');
        End;
    //Vetor D - Interseção dos vetores A e B
    WriteLN;
    WriteLN;
    val_d := 1;
    For i := 1 to 10 do
        For k := 1 to 10 do
            Begin
                If va[i] = vb[k] Then
                    Begin
                        vd[val_d] := vb[k];
                        val_d := val_d + 1;
                    End;
            End;
    //Imprimindo Vetor D
    WriteLN('B) Intersecao dos vetores A e B(Vetor D) e:');
    For i := 1 to 20 do
        If (vd[i] <> 0) and (vd[i] <> vd[i-1]) Then
            Write(vd[i],' ');
    //Vetor E - Elementos que existem no vetor A e não tem no vetor b
    For i := 1 to 10 do
    Begin
        igual :=  False;
        For k := 1 to 10 do
        Begin
            if va[i] = vb[k] then
            Begin
                igual := True;
                ve[i] := 0;
            End;
            if (igual = False) and (k = 10) then
            ve[i] := va[i];
        End;
    End;
     //Imprimindo Vetor E
     WriteLN;
     WriteLN;
     WriteLN('C) Elementos que existem no vetor A e nao existem no vetor B:');
     For i := 1 to 20 do
        Begin
            If (ve[i] <> 0) and (ve[i] <> ve[i-1]) Then
            Write(ve[i],' ');
        End;
     Readkey;
end.