Ir ao conteúdo

Posts recomendados

Postado

escreva um único programa que preencha o vetor x de 40 posições usando a seguinte expressão : 1+random(2)/(1+random(50)). após o preenchimento de x, deve-se calcular/imprimir: (i) a sua média (considerando os 40 valores); (ii) as suas 10 primeiras médias móveis, considerando 8 valores consecutivos de x. considerando que xi é a i-ésima entrada de x e mi é a i-ésima média móvel em relação a x, temos que: m1=(x1+x2+...+x8)/8;  m2=(x2+x3+...+x9)/8; m3=(x3+x4+...+x10)/8;....; m10=(x10+x16+...+x17)/8.

Postado
16 minutos atrás, Simon Viegas disse:

@Arthur Silveiira, poste o que já conseguiu fazer e em qual parte está com dúvidas.

 

Outra coisa: qual programa está utilizando para editar e compilar o código?

não to conseguindo interpretar direito não sei nem por onde começar, estou usando o pascalzim 

  • Membro VIP
Postado
1 hora atrás, Arthur Silveiira disse:

escreva um único programa que preencha o vetor x de 40 posições usando a seguinte expressão : 1+random(2)/(1+random(50)). após o preenchimento de x, deve-se calcular/imprimir: (i) a sua média (considerando os 40 valores); (ii) as suas 10 primeiras médias móveis, considerando 8 valores consecutivos de x. considerando que xi é a i-ésima entrada de x e mi é a i-ésima média móvel em relação a x, temos que: m1=(x1+x2+...+x8)/8;  m2=(x2+x3+...+x9)/8; m3=(x3+x4+...+x10)/8;....; m10=(x10+x16+...+x17)/8.

 

@Arthur Silveiira, comece fazendo algo mais simples... aos pouco vai desdobrando e evoluindo...

 

Qual o seu nível conhecimento no Pascal?

 

Sugiro fazer o seguinte:

Crie um programa que preencha um vetor x de 3 posições, lendo os valores do usuário, e após imprima os 3 valores da tela.

 

Poste o texto do código completo.

Postado
44 minutos atrás, Simon Viegas disse:

 

@arthur silveiira, comece fazendo algo mais simples... aos pouco vai desdobrando e evoluindo...

 

qual o seu nível conhecimento no pascal?

 

sugiro fazer o seguinte:

crie um programa que preencha um vetor x de 3 posições, lendo os valores do usuário, e após imprima os 3 valores da tela.

 

poste o texto do código completo.

 

Muito obrigado, consegui essa agora, ficou assim:

program t2q2_assps ;

var
x: array[1..36] of real;
i: integer;
media,r1,r2,mm1,mm2,mm3,mm4,mm5,mm6,mm7,mm8,mm9,mm10,mm11,mm12,mm13,mm14,mm15: real;

//sendo: mm referente a média movel, r1 a entrada para o primeiro random e r2 para o segundo random

begin

 for i:= 1 to 36 do
  begin
      r1:= 1+random(2);
        r2:= 1+random(200); 
    x[i]:= r1/r2;
    media:=( (x[i]/36) + media);
  end;

 writeln('média: ',media);
 
  mm1:= (x[1]+x[2]+x[3]+x[4]+x[5]+x[6])/6;
        writeln('média movel 1=: ',mm1);
        
  mm2:= (x[2]+x[3]+x[4]+x[5]+x[6]+x[7])/6;
        writeln('média movel 2=: ',mm2);
        
  mm3:= (x[3]+x[4]+x[5]+x[6]+x[7]+x[8])/6;
        writeln('média movel 3=: ',mm3);
        
  mm4:= (x[4]+x[5]+x[6]+x[7]+x[8]+x[9])/6;
        writeln('média movel 4=: ',mm4);
        
  mm5:= (x[5]+x[6]+x[7]+x[8]+x[9]+x[10])/6;
        writeln('média movel 5=: ',mm5);
        
  mm6:= (x[6]+x[7]+x[8]+x[9]+x[10]+x[11])/6;
        writeln('média movel 6=: ',mm6);
        
  mm7:= (x[7]+x[8]+x[9]+x[10]+x[11]+x[12])/6;
        writeln('média movel 7=: ',mm8);
       
  mm8:= (x[8]+x[9]+x[10]+x[11]+x[12]+x[13])/6;
        writeln('média movel 8=: ',mm8);
  
  mm9:= (x[9]+x[10]+x[11]+x[12]+x[13]+x[14])/6;
        writeln('média movel 9=: ',mm9);
  
  mm10:=(x[10]+x[11]+x[12]+x[13]+x[14]+x[15])/6;
          writeln('média movel 10=: ',mm10);
     
    mm11:=(x[11]+x[12]+x[13]+x[14]+x[15]+x[16])/6;
          writeln('média movel 11=: ',mm11);
    
    mm12:=(x[12]+x[13]+x[14]+x[15]+x[16]+x[17])/6;
          writeln('média movel 12=: ',mm12);
    
    mm13:=(x[13]+x[14]+x[15]+x[16]+x[17]+x[18])/6;
          writeln('média movel 13=: ',mm13);
    
    mm14:=(x[14]+x[15]+x[16]+x[17]+x[18]+x[19])/6;
          writeln('média movel 14=: ',mm14);
    
    mm15:=(x[15]+x[16]+x[17]+x[18]+x[19]+x[20])/6;
          writeln('média movel 15=: ',mm15);

 end.

 

  • Membro VIP
Postado
4 horas atrás, Arthur Silveiira disse:

escreva um único programa que preencha o vetor x de 40 posições usando a seguinte expressão : 1+random(2)/(1+random(50)). após o preenchimento de x, deve-se calcular/imprimir: (i) a sua média (considerando os 40 valores); (ii) as suas 10 primeiras médias móveis, considerando 8 valores consecutivos de x. considerando que xi é a i-ésima entrada de x e mi é a i-ésima média móvel em relação a x, temos que: m1=(x1+x2+...+x8)/8;  m2=(x2+x3+...+x9)/8; m3=(x3+x4+...+x10)/8;....; m10=(x10+x16+...+x17)/8.

 

Detalhes sobre a sintaxe:

  1. insira um Randomize() no início do programa. Qualquer coisa dá uma pesquisada para entender o motivo;
  2. a media móvel 7 está dando um resultado errado;
  3. creio que não precisa de uma variável para cada médias. Ou utiliza uma só para todas, ou poderia utilizar um vetor, em vez de um "monte de variáveis".

 

 

Outros pontos estranhos/curiosos:

  1. são 40 posições, não 36;
  2. a média móvel é para 8 valores, não 6.
  3. o denominador vai de 1 a 50, e não de 1 a 200.

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!