Program Refinery(Input,Output); Uses Crt; { Leonidas Georgiou, Assignment 4, 4/12/06 } Var N, Largest, Smallest, Tot, High, Low, Pressure, A, B : Integer; Average2 : Real; Infile, Outfile : Text; Procedure LargestPress(Var Pressure, Largest : Integer); Begin If Pressure >= Largest Then Largest := Pressure; End; Procedure SmallestPress(Var Pressure, Lowest : Integer); Begin If Pressure <= Lowest Then Smallest := Pressure; End; Procedure AveragePress(Var REsult : Integer; Var Average : Real); Begin Average:= Result / 6; end; Procedure Overpressure(Var Largest: Integer); Begin If Largest > 5000 Then Writeln(Outfile,'DANGER! OVERPRESSURE OF ', Largest); End; Procedure Vaccum(Var Smallest : Integer); Begin If Smallest < 14 Then Writeln(Outfile,'DANGER! VACCCUME OF ', Smallest); End; Procedure Print(Var Largest, Smallest : Integer; Var Average : Real); Begin Writeln(Outfile,'High Pressure is ', Largest); Writeln(Outfile,'Low pressure is ', Smallest); Writeln(Outfile,'Average pressure ', Average:6:2); End; Begin ClrScr; Assign(Infile,'C:/mlkia.txt'); Assign(Outfile,'C:/skt.txt'); Rewrite(Outfile); Reset(Infile); B := 1; A := 1; Write(Outfile,'Number of Intervals to Monitor: '); Readln(Infile,N); Writeln(Outfile,N); While A <= N do Begin High:= -Maxint; Low:= Maxint; Tot:= 0; Average2:= 0; Writeln(Outfile,'***********************************************************'); While B <= 6 do Begin Read(Infile,Pressure); Write(Outfile,'PROCESS',B,' PRESSURE: ',Pressure); Writeln(Outfile); Tot := Tot + Pressure; LargestPress(Pressure,High); SmallestPress(Pressure,Low); Writeln(Outfile,'********************************************************'); B := B + 1; End; AveragePress(Tot,Average2); Overpressure(High); Vaccum(Low); Print(High,Low,Average2); B := 1; A := A + 1; End; Close(Infile); Close(Outfile); Readln; End. I'M CALLING THIS BULLSHIT BECAUSE I DON'T UNDERSTAND IT AT ALL. I'M REALLY STUPID AND STUFF, YOU KNOW, AND ANYTHING I DON'T UNDERSTAND IS A) UNIMPORTANT AND B) BULLSHIT. THANKS FOR READING