Цитата:
Сообщение от Vladimir_S
Вот именно ТАК! И только ТАК!
А вообще - в математике следует не гадать на кофейной гуще, а разобраться.
Двойное неравенство
2.5 ≤ p < a
читается, как "p больше или равно 2.5, но меньше а". В Паскале двойные неравенства не предусмотрены, поэтому условия нужно задать порознь и соединить их логическим отношением "и" ("and"). При этом, если мы меняем местами члены неравенства, то отношение их друг к другу должно остаться тем же, т.е. на кого из них "смотрело" острие знака "<", "≤", ">" или "≥", на того и должно смотреть, так же, как и "раструб". Поэтому указанное неравенство записываем так:
(p ≥ 2.5) and (p < a).
|
если я делаю так
program A2;
var a,b,s,p:real;
begin
writeln ('vvedite p');
readln(p);
writeln('vvedite a');
readln(a);
writeln ('vvedite b');
readln(b);
if (p>=2.5) and (p<a) then
s:=(sqr(a)-p)/(b*(ln(b+p)/ln(2))
else if (p>4) and (p<=b) then
s:=(3.51*sqrt(p))/(a-1)
else writeln ('nevernoe uslovye');
writeln ('s=',s);
readln
end.
то все равно получается та же ошибка