Необходимо написать программу используя оператор выбора CASE. Формулировка: Составить программу, которая по введенной с клавиату
Необходимо написать программу используя оператор выбора CASE.
<u>Формулировка: </u>
<em>Составить программу, которая по введенной с клавиатуры буквы (P,K,T) будем высчитывать площади прямоугольника, квадрата и треугольника соответственно. </em>
Попробовал решить самостоятельно:
program HW;
uses crt;
VAR
x,y:integer; <em>{ длинна и ширина прямоугольника }</em>
a,b:integer;<em> { основание и высота треугольника }</em>
d:integer; <em>{ длина стороны квадрата }</em>
rez:real; <em>{ результат }</em>
ploshad:real; <em>{ площадь }</em>
P:real;<em> { прямоугольник }</em>
K:real;<em> { квадрат }</em>
T:real; <em>{ треугольник }</em>
BEGIN
Write ('Если вы желаете вычеслить площадь прямоугольника, введите его длину и ширину, если же нет, оставьте это поле пустым:');
Readln (x,y);
Write ('Если вы желаете вычеслить площадь квадрата, введите длину его стороны, если же нет, оставьте это поле пустым:');
Readln (d);
Write ('Если вы желаете вычеслить площадь треугольника, введите его основание, а затем высоту, если же нет, оставьте это поле пустым:');
Readln (a,b);
Write ('Укажите букву площади которую хотите вычеслить: прямоугольника(P),квадрата(K) или же треугольника(T) - ');
Readln (ploshad);
CASE ploshad OF
P:rez:=x*y;
K:rez:=d*d;
T:rez:=0.5*a*b;
Else write ('Извините, вы ввели не верный символ.');
end;
begin
Writeln ('Результат = ',rez:100:3);
end;
end.
_____________________________________________
Но, при запуске программы в строке "CASE ploshad OF" выдает ошибку, что "Ожидался порядковый или строковый тип". Как исправить?