LC

in ra từ dài nhất trong xâu, nếu nhiều từ có độ dài bằng nhau thì in ra tất cả các từ đó

Vd: nhâp xâu=truong thich hoc pascal

   truong

   pascal

ML
26 tháng 6 2023 lúc 19:38

Program HOC24;
var s: string;
a: array[1..255] of string;
max,d,i: byte;
begin
write('Nhap xau: '); readln(s);
while s[1]=#32 do delete(s,1,1);
while s[length(s)]=#32 do delete(s,length(s),1);
while pos(#32#32,s)<>0 do delete(s,pos(#32#32,s),1);
s:=s+' '
while length(s)<>0 do
begin
d:=d+1;
a[d]:=copy(s,1,pos(#32,s));
delete(s,1,pos(#32,s));
end;
max:=length(a[1]);
for i:=2 to d do
if max<length(a[i]) then max:=length(a[i]);
for i:=1 to d do
if max = length(a[i]) then writeln(a[i]);
readln
end.

Bình luận (0)
ND
27 tháng 6 2023 lúc 9:58

Program HOC24;
uses sysutils;

var s: string;
  words: TStringDynArray;
  max_length, i: integer;
  longest_words: array of string;

begin
  write('Nhap xau: ');
  readln(s);
  words := SplitString(s);
  max_length := 0;
  for i := Low(words) to High(words) do
    if Length(words[i]) > max_length then
      max_length := Length(words[i]);
  SetLength(longest_words, 0);
  for i := Low(words) to High(words) do
    if Length(words[i]) = max_length then
    begin
      SetLength(longest_words, Length(longest_words) + 1);
      longest_words[High(longest_words)] := words[i];
    end;
  writeln('Tu dai nhat trong xau là:');
  for i := Low(longest_words) to High(longest_words) do
    writeln(longest_words[i]);
end.

Bình luận (0)

Các câu hỏi tương tự
HD
Xem chi tiết
VD
Xem chi tiết
TD
Xem chi tiết
MN
Xem chi tiết
LC
Xem chi tiết
LC
Xem chi tiết
H24
Xem chi tiết
DK
Xem chi tiết
LC
Xem chi tiết