program zadacha;
var
s,temp,max,min:string;
i,mxp,mnp:integer;
begin
writeln('Введите строку...');
readln(s);
s:=s+' ';
temp:='';
max:='';
min:=s;
for i:=1 to length(s) do
begin
if s[i]<>' ' then
temp:=temp+s[i];
if (s[i]=' ') and (temp<>'') then
begin
if Length(temp)<Length(min) then
begin
min:=temp;
mnp:=i-Length(temp)
end;
if Length(temp)>Length(max) then
begin
max:=temp;
mxp:=i-Length(temp)
end;
temp:='';
end;
end;
if max<>'' then
begin
Writeln('Самое длинное: ',max,' Оно начинается с: ',mxp);
Writeln('Самое короткое: ',min,' Оно начинается с: ',mnp)
end
else
WriteLn('В данной строке нет слов!')
end.
Для начала определим что такое разряд числа. Разряд это порядковый номер цифры, и счет начинается с запятой, отделяющей дробь, счет начинается с 0 разряда до последней цифры. Например, число 1234,0: 0 разряд - 4, 1 разряд - 3, 2 разряд - 2 и 3 разряд единица.
Теперь определимся как переводить из 16й в 10ю. Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа.
Т.е.:
Чтобы перевести буквы в числа надо воспользоваться списком:
A=10; B=11; C=12; D=13; E=14; F=15
Теперь расмотрим данные нам числа:
// Внимание! Если программа не работает, обновите версию!
function MatrCreate(m,n:integer):array[,] of integer;
begin
Writeln('*** Исходный массив A[',m,',',n,'] ***');
Result:=MatrRandom(m,n,-50,50);
Result.Println(4);
Writeln(4*n*'-');
end;
procedure Matr2File(a:array[,] of integer; fn:string);
begin
var f:file of integer;
ReWrite(f,fn);
foreach var r in a.Rows do
foreach var x in r do Write(f,x);
f.Close
end;
begin
var m:=ReadlnInteger('Количество строк в массиве:');
var n:=ReadlnInteger('Количество столбцов в массиве:');
var a:=MatrCreate(m,n);
var s:=ReadlnString('Имя файла:');
Matr2File(a,s);
Writeln('Работа завершена')
end.
Пример
Количество строк в массиве: 6
Количество столбцов в массиве: 9
*** Исходный массив A[6,9] ***
-8 47 -37 8 23 47 -18 5 18
13 -29 9 -12 -44 -27 -21 -20 11
17 -18 18 30 14 -42 -34 16 49
-4 -25 47 -28 -25 -20 39 44 -46
18 -45 39 12 3 24 27 16 -23
27 48 30 33 -38 -30 34 35 -50
Имя файла: MyFile.bin
Работа завершена