Помощь - Поиск - Пользователи - Календарь
Полная версия: Вхождение букв в строке из слов
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Guest
Задана строка символов. Вывести все буквы, которые входят в наибольшее количество слов строки.
Вот такая задачка. Кто-нить поможет???
BlackShadow
Ну, что-то типа этого:
Код

Type
 TLetter='a'..'z';
 TLetters=Set Ob TLetter;

Var
 Letters:Array[TLetters] Of Integer;
 c:Char;
 s,s2:String;
 i,max:Integer;

Begin
 For c:=Low(TLetter) To High(TLetter) Do
   Letters[c]:=0;
 Write('Enter String: ');
 ReadLn(s);
 While s<>'' Do
 Begin
   For i:=1 To Length(s) Do
     If (s[i] In Letters) Then
       Break;
   If i>Length(s) Then
     Break;
   Delete(s,1,i-1);
   For i:=1 To Length(s) Do
     If Not (s[i] In Letters) Then
       Break;
   s2:=Copy(s,1,i-1);
   Delete(s,1,i);
   While Length(s2)>0 Do
   Begin
     c:=s2[1];
     Inc(Letters[c]);
     While Pos(c,s2)>0 Do
       Delete(s2,Pos(c,s2),1)
   End
 End;
 max:=Letters[Low(TLetter)];
 For c:=Low(TLetter) To High(TLetter) Do
   If (Letters[c]>max) Then
     max:=Letters[c];
 For c:=Low(TLetter) To High(TLetter) Do
   If (Letters[c]=max) Then
     WriterLn(c)
End.

Или что-то похожее...
Guest
Спасибо.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.