// PascalABC.NET 3.2, сборка 1325 от 19.10.2016 function BinToOct(s:string):string; // переводит двоичную триаду в восьмеричную цифру begin case s of '000':Result:='0'; '001':Result:='1'; '010':Result:='2'; '011':Result:='3'; '100':Result:='4'; '101':Result:='5'; '110':Result:='6'; '111':Result:='7'; end end;
begin var s2:=ReadlnString('Введите целое двочное число'); var k:=s2.Length mod 3; if k<>0 then s2:=(3-k)*'0'+s2; // дополнить до кратной 3 длины var s8:=''; for var i:=1 to s2.Length div 3 do s8:=s8+BinToOct(Copy(s2,3*i-2,3)); Writeln(s8); end.
Пример Введите целое двочное число 10101100001 2541
// PascalABC.NET 3.1, сборка 1213 от 04.04.2016 begin var f: file of integer; var t:integer; Assign(f,'input.dat'); Rewrite(f); for var j:=1 to 5 do begin for var i:=1 to 10 do begin t:=Random(10,99); Write(f,t) end; for var i:=1 to 10 do begin t:=-Random(10,99); Write(f,t) end end; f.Close; end.
2. Программа, которую требовалось написать
// PascalABC.NET 3.1, сборка 1213 от 04.04.2016 begin var f,g: file of integer; var a:=new integer[20]; var t:integer; Assign(f,'input.dat'); Reset(f); Assign(g,'output.dat'); Rewrite(g); while not f.Eof do begin for var i:=0 to 19 do Read(f,a[i]); a:=a[10:15]+a[0:5]+a[15:20]+a[5:10]; for var i:=0 to 19 do Write(g,a[i]) end; f.Close; g.Seek(0); while not g.Eof do begin Read(g,t); Print(t) end; g.Close end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку