Предмет: Информатика, автор: JinaJelly

Написать программу в PascalABC!!!
Число в двоичной системе счисления, введенное
пользователем программы, преобразовать в десятичное число.

Ответы

Автор ответа: yankim
0
var a:string;
i,a1,ar:integer;b:real;
begin
readln(a);
b:=0;
for i:=1 to length(a) do 
begin 
val(a[length(a)-i+1],a1,ar);
 b:=b+a1*exp((i-1)*ln(2));
 end;
writeln('b=',b);
end. 
Автор ответа: JinaJelly
0
А можно вариант по-проще? без "length" и "val"
Автор ответа: yankim
0
Цикл замените на while a<>0
a1=a mod 10
После чего необходимо с помощью div отбросить последнюю цифру. Счетчик i лучше просто увеличивать с помощью inc внутри цикла, формула для вычисления прежняя.
Похожие вопросы
Предмет: Русский язык, автор: thisissamka