Program primer_1;var v,a,b,c,r,h:real;var num:integer;beginwriteln('Введите значение...

0 голосов
136 просмотров

Program primer_1;
var v,a,b,c,r,h:real;
var num:integer;
begin
writeln('Введите значение num');
writeln('num='); readln(num);
case num of
1: writeln('Введите значения a,b,c');
write('a='); readln(a);
write('b='); readln(b);
write('c='); readln(c);
v:=a*b*c;
writeln('v=',v:8:3);
2: write('Bвежите значения r');
write('r='); readln(r);
v:=4/3*pi*power(r;3);
writeln('v=',v:8:3);
3: write('Введите значения r,h');
write('r='); readln(r);
write('h='); readln(h);
v:=1/3*pi*sqr(r)*h;
wrireln('v=',v:8:3);
else write(‘Введено число вне диапазона 1-3!’);
end.

пытаюсь написать программу в которой от того какую цифру из трех ты выберешь будет зависеть объем какой из трех фигур надо будет найти. Вижу что ошибка в использовании оператора case, как будто нельзя писать какие-то другие действия кроме write после 1: 2: 3:


Информатика (105 баллов) | 136 просмотров
0

В паскале с оператором case плохо знаком,но все же,если он выдает ошибку ,что вам мешает ввести все переменные до оператора case?А в самом операторе только присваивать.И вконце вывести.

0

а как же он будет определять какой из объемов к чему относится?

0

в лс напишу

0

В классическом Паскале нет функции power )) Нет его и в ТурбоПаскаль и в БорландПаскале даже. В Delphi и Pascal.ABC есть. Во Free Pascal - не помню...

0

А так, по программе - Вы не заключили каждую группу операторов под case в операторные скобки begin .. end

Дан 1 ответ
0 голосов
Правильный ответ

Кажется понял в чем проблема.У вас не работало т,к, отсутствовали begin и end; в case .Плюс еще пару недочетов в коде

(4.8k баллов)
0

спасибо помогло!