Задание:
4) Число 1011112 перевести в восьмеричную систему счисления 5) Выполните умножение чисел 1112 и 1112 2) Определить количество двоичных разрядов достаточных для кодирования 510 различных состояний?
Решение:
4) Число 1011112 перевести в восьмеричную систему счисления function Pow (a,x: integer): integer; var P, i: integer; begin if x=0 then Pow: =1 else begin P: =1; for i: =1 to x do P: =P*a; Pow: =P; end; end; var count, c, r: integer; begin count: =0; r: =0; c: =101111; while c > 0 do begin r: =r+(c mod 10)*Pow (2, count); inc (count); c: =c div 10; end; writeln ('R=', r); end. 5) Выполните умножение чисел 1112 и 1112 function Pow (a,x: integer): integer; var P, i: integer; begin if x=0 then Pow: =1 else begin P: =1; for i: =1 to x do P: =P*a; Pow: =P; end; end; function Summ (a, b: integer): integer; var r, t, count: integer; begin count: =0; r: =0; t: =0; while (a > 0) or (b > 0) do begin r: =r+(a mod 2)+(b mod 2)+t) mod 2)*Pow (10, count); inc (count); t: =(a mod 2+b mod 2+t) div 2; a: =a div 10; b: =b div 10; end; r: =r+t*Pow (10, count); Summ: =r; end; var A,B , buff, count, r: integer; begin count: =0; r: =0; A: =111; B: =111; buff: =B; while Buff > 0 do begin r: =Summ (r, A*(Buff mod 10)*Pow (10, count); Buff: =Buff div 10; inc (count); end; writeln ('R=', r); end. 2) Определить количество двоичных разрядов достаточных для кодирования 510 различных состояний? function Pow (a,x: integer): integer; var P, i: integer; begin if x=0 then Pow: =1 else begin P: =1; for i: =1 to x do P: =P*a; Pow: =P; end; end; var N, count: integer; begin count: =1; write ('N='); Readln (N); N: =abs (N); while (Pow (2, count) < N) do inc (count); writeln ('Count=', count); readln; end.
Знаете другой ответ?