нельзя преобразовать real к integer, все перепробовал, не могу найти ошибку
program delta;
var a,b,c,d,e:integer;
begin
writeln('Введите число');
readln(a);
c:=a;
b := 0;
while a>0 do
begin
a:= a div 10;
inc(b);
end;
d:=c-(c mod 10)-(c div exp(ln(10) * (b-1)))*(exp(ln(10) * (b-1))+(c mod 10)*(exp(ln(10) * (b-1)))+(c div exp(ln(10) * (b-1))));
writeln(d);
end.
SpitefulSpamer:
Потому что функции exp() и ln() - возведение в степень и вычисление логарифма - выдают дробные числа
Ответы на вопрос
Ответил Таганроглицей4
0
Ответ:
a по-идее всегда больше 0 (Т.к. integer)
Ответил Александр Ивановъ
0
"komradultro2015: суть задания в том, чтобы переставить у данного числа первую и последнюю цифру местами"
А если число оканчивается нулём?
Новые вопросы