consegui resolver
var
nome,nmaior,nmenor:caracter
x,y:real
i,l,maior,menor:inteiro
vet:vetor[1..4] de inteiro
inicio
x<-0
para i<-1 ate 20 passo 1 faca
Escreval("qual o nome do aluno?")
leia(nome)
para l<-1 ate 4 passo 1 faca
escreval("qual a media de ",nome," na ",l,"ª materia?")
leia(vet[i])
x<-x+vet[i]
y<-y+vet[i]
se (maior
maior<-vet[i]
menor<-maior -1
nmaior<-nome
fimse
se (menor>=vet[i]) entao
menor<-vet[i]
nmenor<-nome
fimse
fimpara
x<-x/4
escreval("Media semestral de ",nome,": ",x)
x<-0
fimpara
y<-(y/4)/20
escreval("Media da turma: ",y)
escreval("Aluno ",nmaior," tem a maior media: ",maior)
escreval("Aluno ",nmenor," tem a menor media: ",menor)
fimalgoritmo