не разумею где ошибка?program a3; var a, b, c, p: integer;

Не разумею где ошибка?
program a3;
var
a, b, c, p: integer;
begin
if agt;b then
if bgt;c then
min:= c;
avg:= b;
max:= a;
else
min := b;
avg := c;
max := a
else
begin
if agt;c then
min := c;
avg := a;
max := b
else
min := a;
avg := c;
max := b;
end
else
if bgt;c then
min := b;
avg := a;
max := c;
//else
//p:=a, b, c
writeln ('малое число= ',min, среднее число= ', avg 'наибольшее число= ', max)
end.

Задать свой вопрос
1 ответ

Ошибок несколько:

1. Нету ввода a,b,c (команда read)

2. В каждом if после then ты делаешь три присваивания, их надобно обернуть в begin - end

3. Не понятна логика if-then-else. К примеру, после if bgt;c then у тебя два else. Применяй отступы, чтоб было нагляднее, к примеру:

if bgt;c then  

     begin


         min:= c;  

         avg:= b;  

         max:= a;


     end


   else  

     begin


         min := b;  

         avg := c;  

         max := a


     end

Ещё, чтоб сделать все эти проверки нагляднее, можешь пробовать использовать такую конструкцию:

if (agt;b) and (bgt;c) then  

   begin


       min:= c;  

       avg:= b;  

       max:= a;


   end


Тогда для тебя не будут необходимы else и ты в их не запутаешься.

4.  Переменные min, avg, max обязаны быть описаны в секции var


5. В строке writeln ('малое число= ',min, среднее число= ', avg 'максимальное число= ', max) пропущена кавычка перед словом "среднее" и запятая после "avg"

6. Нужна точка с запятой в конце строчки writeln

*****************************

У меня на Паскаль АВС работает:

program a3;  

var  

a, b, c, min, avg, max: integer;  

begin  

write('a = '); readln(a);

write('b = '); readln(b);

write('c = '); readln(c);

 if (agt;b) and (bgt;c) then begin min:=c; avg:=b; max:=a; end;

 if (agt;c) and (cgt;b) then begin min:=b; avg:=c; max:=a; end;

 if (bgt;a) and (agt;c) then begin min:=c; avg:=a; max:=b; end;

 if (bgt;c) and (cgt;a) then begin min:=a; avg:=c; max:=b; end;

 if (cgt;a) and (agt;b) then begin min:=b; avg:=a; max:=c; end;

 if (cgt;b) and (bgt;a) then begin min:=a; avg:=b; max:=c; end;

writeln ('минимальное число= ',min, '  среднее число= ', avg, '  максимальное число= ', max);  

end.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт