Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Halan batista

Problemas no calculo de media de valores

Recommended Posts

Olá.

Bem estamos desenvolvendo um trabalho de calculo da media das temperaturas em um determinado intervalo de tempo. Començando, entro com a quantidade de temperaturas que irei digitar, depois o intervalo de tempo.

 

O meu problema é o seguinte, as restricoes tudo está funcionando belezinha, o problema é no calculo da media.

 

O calculo da media deve ser feito de acordo com a imagem que está em anexo. A imagem está usando o intervalo de 2 minutos, por isso a media é calculada de 2 em 2 temperaturas.Preciso de uma fórmula que me possibilite calcular com qualquer intervalo.

 

Imagem Postada

 

Assim eu entrei com os valores das temperaturas, como eu coloquei que o intervalo de medida seria de 2 em 2, eu pego de dois em dois valores.

Eu pego o primeiro valor mais o segundo e divido pelo intervalo que no caso é 2 e tenho a media, depois pego o segundo valor mais o terceiro e divido pelo intervalo e tenho a media, eu pego o terceiro valor mais o quarto e divido pelo intervalo e tenho outra media...

 

Eu pensei em fazer esse calculo mais ou menos dessa forma:

 

for (n=0 ; n<num ; n++)

{

media[n] = vetorTemp[n] + vetorTemp[m] / inter;

System.out.print("\n A media é: "+media[n]+"\n");

}

 

Só que assim eu to sem ideia de como eu faço pra ir incrementando intendeu... Ai o intervalo está de dois em dois...

Se eu colocasse o intervalo de 3 em 3 essa linha vetorTemp[n] + vetorTemp[m] / inter; teria que ter mais um valor correto?

Só que ai que está o meu problema como eu faco pra ele ir incrementando de acordo com o valor do intervalo?

Se for de 3 em 3 seria vetorTemp[n] + vetorTemp[m] + vetorTemp[m] / inter;

Se for de 4 em 4 seria vetorTemp[n] + vetorTemp[m] + vetorTemp[m] + vetorTemp[m] / inter;

 

Deu pra compreender? O código até onde fiz está abaixo...

 

 

Scanner in = new Scanner(System.in);
      int n,m;
      int num,inter, media_calc;
      int temp;
      System.out.println("Digite quantas temperaturas você usará: ");
      num = in.nextInt();
      if (num <=10000)
      {
      System.out.println("Digite o intervalo de medicao: ");
      inter = in.nextInt();
      media_calc = (num / inter) + 1;
 

      int vetorTemp[] = new int[num];
      int media[] = new int[num];
 
      for (n=0 ; n < num ; n++)
      {
       
          System.out.println("Digite a Temperatura "+(n + 1));
          vetorTemp[n] = in.nextInt();
 
          if((vetorTemp[n] <= 200) && (vetorTemp[n] >= -200)) {
 
     }else{
         System.out.println("Temperatura invalida.\n");
     }
     }
  
      }
      else
      {
          System.out.println("Intervalo fora do padrao.");
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

É isso?

 

for(j=0; j<=lidas-intervalo;j++) {
soma = 0;
for(int i=j; i<j+intervalo; i++)
soma += temp[i];
media[j] = soma/intervalo;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.