// PascalABC.NET 3.1, сборка 1172 от 19.02.2016 begin var s:=ReadlnString('Введите двухзначное 16-ричное число'); var mH:array['A'..'F'] of integer:=(10,11,12,13,14,15); if s.Length=1 then s:='0'+s; var c:=s.ToCharArray; var n:=0; for var i:=0 to 1 do case c[i] of '0'..'9':n:=16*n+StrToInt(c[i]); 'A'..'F':n:=16*n+mH[c[i]]; else begin Writeln('Недопустимый символ: ',c[i]); Exit end end; Writeln('Десятичный эквивалент: ',n) end.
Тестовое решение: Введите двухзначное 16-ричное число 3A Десятичный эквивалент: 58
rusart3
16.11.2020
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016 begin var m:=ReadInteger('число строк '); var n:=ReadInteger('число столбцов '); var a:array[,] of real; SetLength(a,m,n); Randomize; var p:=1.0; for var i:=0 to m-1 do begin for var j:=0 to n-1 do begin a[i,j]:=89*Random+10; Write(a[i,j]:0:5,' '); if j mod 2=0 then p*=a[i,j] end; Writeln end; Writeln(p) end.
n²+5n+2=n²+2n+1+2n+2+5 → n=6