Program Z1;
var a,b,c,k: integer ;
begin;
read;
k:=1;
while (a>0) or (b>0) do;
begin;
b:=b*2;
a:=a-b/2;
if a<=0 then wrileln('Чёрт')
else begin;
b:=b-c;
a:=a+c;
end;
if b<0 then wrileln('Мужик')
else k:=k+1;
end;
writeln(k=k)
end.
Program1.pas(9) : Нельзя преобразовать тип real к integer
Что делать?

12 Янв 2020 в 19:56
218 +1
0
Ответы
1

Ошибка возникает из-за того, что переменные a, b и c объявлены как целочисленные (integer), а при вычислениях используются операции с вещественными числами (real).

Чтобы исправить эту ошибку, необходимо либо изменить тип данных переменных a, b и c на real, либо произвести нужные преобразования типов данных при выполнении арифметических операций.

В данном случае, можно изменить тип данных переменных a, b и c на real:

var a,b,c,k: real;

После этого программа должна скомпилироваться без ошибок.

18 Апр 2024 в 20:28
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир