Показать сообщение отдельно
Старый 25.11.2012, 18:53   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Night_Rain Посмотреть сообщение
Извините пожалуйста.
Pascal
Тогда получите:
Код:
Var
 S:String;
 W,Wrd:Array[1..100] of String;
 M:Array[1..100,1..100] of Char;
 Num:Array[1..100] of Real;
 i,j,Nw,Lmax,Nnumb,Nword,Shrt_W_Num,Min_Num:Byte;
 Code:Integer;
 R:Real;

Begin  
 Writeln('Enter the string:');
 Readln(S);
 Nw:=1;
 i:=0;
 W[Nw]:='';
 Repeat
  Inc(i);
  If (S[i]<>' ') and (i<=Length(S)) then
   W[Nw]:=W[Nw]+S[i]
  else
  If S[i]=' ' then
   begin
    repeat
     Inc(i);
    until S[i]<>' ';
    Dec(i);
    Inc(Nw);
    W[Nw]:='';
   end;
 Until i>Length(S);

 Nword:=0;
 Nnumb:=0;
 For i:=1 to Nw do
  begin
   VAL(W[i],R,Code);
   if Code=0 then
    begin
     Inc(Nnumb);
     Num[Nnumb]:=R;
    end
   else
    begin
     Inc(Nword);
     Wrd[Nword]:=W[i];
    end;
  end;

 Writeln;
 Writeln('Array of words:');
 Write(Wrd[1]);
 For i:=2 to Nword do Write(' '+Wrd[i]);
 Writeln;
 Writeln;

 Writeln('Array of numbers:');
 Write(Num[1]:0:3);
 For i:=2 to Nnumb do Write(' ',Num[i]:0:3);
 Writeln;
 Writeln;

 Lmax:=Length(Wrd[1]);
 Shrt_W_Num:=1;
 For i:=2 to Nword do
  begin
   if Length(Wrd[i])>Lmax then Lmax:=Length(Wrd[i]);
   if Length(Wrd[i])<Length(Wrd[Shrt_W_Num]) then Shrt_W_Num:=i;
  end;

 Min_Num:=1;
 For i:=2 to Nnumb do
  If Num[i]<Num[Min_Num] then Min_Num:=i;

 Writeln('Shortest word is "'+Wrd[Shrt_W_Num]+'";  Minimal number is ',Num[Min_Num]:0:3);

 Writeln;
 For i:=1 to Nword do
  For j:=1 to Lmax do
   M[i,j]:=' ';

 For j:=1 to Nword do
  For i:=1 to Length(Wrd[j]) do
   M[i,j]:=Wrd[j][i];

 For i:=1 to Nword do
  begin
   For j:=1 to Lmax do
    Write(M[i,j]+' ');
   Writeln;
  end;

 Readln;

End.
Изображения
 
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070