Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida em 2 funções


HugoTessaro

Pergunta

Boa noite, faço curso de programação em pascal, e o professor deu um exercicio para que resolvessemos. Mas não consegui deixar ele 100%, o resultado final da um valor totalmente diferente...

Vou postar o código e se alguém puder me ajudar agradeçerei

Function Pertence(vet: Array of Integer; v: Integer):Boolean;
Var
x: Integer;
Begin
  For x:=1 To 7 Do
    If (vet[x] = v) Then
      Result := TRUE;
End;

Function Posicao(vet: Array of Integer; v: Integer):Integer;
Var
x: Integer;
Begin
  If Pertence(vet,v) Then
    For x:=1 To 7 Do
      If (vet[x] = v) Then
        Result := x;
End;

VAR
Vetor: Array[1..7] of Integer;
x: Integer;
BEGIN
  For x:=1 To 7 Do
    Begin
    WriteLN('Digite o ',x,'o valor');
    ReadLN(Vetor[x]);
    End;

WriteLN('Digite um valor para verificar se contem no vetor');
ReadLN(x);

  If Pertence(Vetor,x) = TRUE Then
    WriteLN('O valor ',x,' esta na posicao ',Posicao(Vetor,x),' do vetor')
  Else
    WriteLN('Este valor não pode ser encontrado');

ReadLN;
END.

A ideia do programa é, digitar 7 valores; depois digitar um outro fora do array; ai ter uma função pra verificar se aquele valor está presente no array de 7 numeros; depois ele verifica a posição no array daonde aquele valor está.

Aqui estou usando para compilar em DOS no Delphi, se alguém tiver alguma ideia ai...

Valeu

Editado por HugoTessaro
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
A ideia do programa é, digitar 7 valores; depois digitar um outro fora do array; ai ter uma função pra verificar se aquele valor está presente no array de 7 numeros; depois ele verifica a posição no array daonde aquele valor está.

Observe as modificações:

program Project1;
{$APPTYPE CONSOLE}
uses SysUtils;

Function Pertence(vet: Array of Integer; v: Integer):Boolean;
Var
x: Integer;
Begin
  For x:=1 To 7 Do
    If (vet[x] = v) Then
      Result := TRUE;
End;

Function Posicao(vet: Array of Integer; v: Integer):Integer;
Var
x: Integer;
Begin
  If Pertence(vet,v) Then
    For x:=1 To 7 Do
      If (vet[x-1] = v) Then
         begin
            Result := x;
            break;
         end;
End;

VAR
Vetor: Array[1..7] of Integer;
x: Integer;
BEGIN
  For x:=1 To 7 Do
    Begin
    WriteLN('Digite o ',x,'o valor');
    ReadLN(Vetor[x]);
    End;

WriteLN('Digite um valor para verificar se contem no vetor');
ReadLN(x);

  If Pertence(Vetor,x) = TRUE Then
    WriteLN('O valor ',x,' esta na posicao ',Posicao(Vetor,x),' do vetor')
  Else
    WriteLN('Este valor não pode ser encontrado');

ReadLN;
END.

end.

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...