alextecno 0 Denunciar post Postado Setembro 15, 2008 oi pessoal, sou novo aqui e não sei cm isso funciona, mais preciso terminar um programa q eu começei. ele lê um vetor imprime o maior e o menor numero encontrado e suas respectivas posições. até aí eu já fiz. agora eu preciso imprimir o numero mais proximo da media e a posiçao que ele ocorre. será que alguem podia me ajudar nessa parte. desde já muito obrigado!! Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Setembro 15, 2008 bom eu pensei em fazer isso: * primeiro ordene o vetor; com o vetor ordenado você sabe ql é o menor e o maior elemento do vetor.. ai calcula a média e tal, e vai calculando o resto da media com kd elemento, oq + c aproximar é ele ;D []'s Compartilhar este post Link para o post Compartilhar em outros sites
alextecno 0 Denunciar post Postado Setembro 15, 2008 bom eu pensei em fazer isso: * primeiro ordene o vetor; com o vetor ordenado você sabe ql é o menor e o maior elemento do vetor.. ai calcula a média e tal, e vai calculando o resto da media com kd elemento, oq + c aproximar é ele ;D []'s nao posso ordenar o vetor pq senao quando eu for armazenar a posiçao q ele ocorre, ele vai armazenar a posiçao dele depois de ordenado.e eu preciso q ele retorne a posição original. então se alguem tiver uma idea por favor me ajude!! Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Setembro 16, 2008 Calcule a média. Crie duas variáveis. Uma que armazene a diferença entre o elemento e a média e outra que armazene a posição desse elemento no vetor. Fica algo parecido com isso: inteiro: numero, posicao posicao <- 1 numero <- vet[1] - media para i de 2 ate n faca se (numero < (vet[i] - media)) entao numero <- vet[i] posicao <- i fimse fimpara Falta resolver um detalhe. Se o número do vetor for menor que a média a comparação deve ser refeita. Compartilhar este post Link para o post Compartilhar em outros sites
alextecno 0 Denunciar post Postado Setembro 20, 2008 consegui resolver aí vai a solução procedure calcula_prox_media (a:t_vetor); var temp,i,dif,menordif:integer; begin temp:=0; for i := 1 to max do begin temp:= temp + a; end; begin media := temp div max; menordif:=maior-menor; posimedia:=1; for i := 1 to max do begin dif := abs (a-media); if dif < menordif then begin menordif := dif; prox := a; posimedia:=i; end; end; end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Setembro 22, 2008 Muito bem. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites