• Необходимо написать программу используя оператор выбора CASE.
    Формулировка:
    Составить программу, которая по введенной с клавиатуры буквы (P,K,T) будем высчитывать площади прямоугольника, квадрата и треугольника соответственно.

    Попробовал решить самостоятельно:
    program HW;
    uses crt;
    VAR
    x,y:integer; { длинна и ширина прямоугольника }
    a,b:integer; { основание и высота треугольника }
    d:integer; { длина стороны квадрата }
    rez:real; { результат }
    ploshad:real; { площадь }
    P:real; { прямоугольник }
    K:real; { квадрат }
    T:real; { треугольник }
    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" выдает ошибку, что "Ожидался порядковый или строковый тип". Как исправить?

Ответы 0

  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years