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

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

спросил от Начинающий (153 баллов) в категории Информатика
1 Ответ
0 интересует 0 не интересует
ответил от Начинающий (190 баллов)
 
Лучший ответ

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. 

оставил комментарий от Начинающий (153 баллов)
0 0

А можно вариант по-проще? без "length" и "val"

оставил комментарий от Начинающий (190 баллов)
0 0

Цикл замените на while a<>0
a1=a mod 10
После чего необходимо с помощью div отбросить последнюю цифру. Счетчик i лучше просто увеличивать с помощью inc внутри цикла, формула для вычисления прежняя.

...