Está en la página 1de 3

algoritmo lectura_secuencial_temperaturas

var
tiempo:entero:=0;

temperatura:real:=0;

temperaturaAnterior:real:=0;

numTiempo:real:=0;

totalTemp:real:=0;

media:real:=0;

mediaAnterior:real:=0;

mediaSuperior:booleano:=falso;

incrementoMedia:real:=0;

diferencia:real:=0;

diferenciaABS:real:=0;

porcentajeMedia:real:=0;

incoherencia:booleano:=falso;

incoherenciaTiempo:entero:=0;

incoherenciaMedia:real:=0;

incoherenciaN:real:=0;

hayIncoherencia:booleano:= falso;
fvar

tiempo:=leerEntero();

mientras (tiempo≠-1) hacer

temperaturaAnterior=temperatura;

temperatura:=leerReal();

totalTemp=totalTemp+temperatura;

numTiempo=numTiempo+1;

mediaAnterior=media;

media=totalTemp/numTiempo;

mediaSuperior=mediaAnterior<media

si (numTiempo>1) entonces

si (mediaSuperior=verdadero) entonces
incrementoMedia=incrementoMedia+1

fsi

diferencia=temperatura-temperaturaAnterior;

si (diferencia<0) entonces

diferenciaABS=diferencia*(-1);

sino

diferenciaABS=diferencia;

fsi

porcentajeMedia=media*0.3;

si (hayIncoherencia=falso) entonces

incoherencia=porcentajeMedia<diferenciaABS;

hayIncoherencia=incoherencia;

fsi

si (hayIncoherencia=verdadero)

incoherenciaTiempo=tiempo;

incoherenciaMedia= media;

incoherenciaN= numTiempo;

fsi

fsi

tiempo:=leerEntero();

fmientras

si (tiempo=-1) y (incoherencia=falso) entonces

escribirReal(media);

escribirReal(incrementoMedia);

fsi

si (tiempo=-1) y (incoherencia=verdadero) entonces

escribirEntero(incoherenciaTiempo);

escribirReal(incoherenciaMedia);

escribirReal(numTiempo);
fsi

falgoritmo

También podría gustarte