Может не работать с некоторыми дробными числами.
1)50 а второе 166.Объясняю как получила:1)переводим из 2 в десятичную 00110010(2)=0*2(7)+0*2(6)+1*2(5)+1*2(4)+0*2(3)+0*2(2)+1*2(1)+0*2(0)=0+0+32+16+0+0+2+0=50(10)
2)Переводим из 2 в 10:10100110(2)=1*2(7)+0*2(6)+1*2(5)+0*2(4)+0*2(3)+1*2(2)+1*2(1)+0*2(0)=128+0+32+0+0+4+2+0=166(10), ну по крайне мере нас так учили!) ты получаешь это все в битах а потом просто переводишь в байты,в 1 байте=8 бит!)Желаю удачи!!)
<em>// PascalABC.NET 3.3, сборка 1573 от 04.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrRandom(ReadInteger('n='),-2,2); a.Println;
var b:=a.IndexesOf(t->t=0).Select(t->t+1).ToArray;
b.Println
end.
<u>Пример</u>
n= 15
1 -1 0 2 0 0 -2 -2 -2 -2 0 2 0 -2 -1
3 5 6 11 13