вам не кажется, что здесь куча лишнего кода? я бы сделал так: Uses CRT; Var a, b, c, s, p: Real; Begin ClrScr; Write('Vvedite dlini storon pramougolnogo treugolnika, a i b-kateti, c - gipotenuza'); Readln(a,b,c); {vod znachenii} p:=(a+b+c); {perimetr} s:=(a*b)/2; {plozhad} Writeln('plozhad treugolnika=',s:6:2,' perimetr=',p:7:2); {vivod znachenia na ekran} readkey; End.