Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Ввести из клавиатуры слово и распечатать символы, которые вс
Помогите пожалуйста переделать программку.

1.Ввести из клавиатуры слово и распечатать символы, которые встречаются более одного раза(с использованием символьной функции).

Не могу переделать, что использовалась функция.

1.

Code

program Project1;

var
   S : String;
   Arr : array[#0..#255] of Integer;
   Ch : Char;
   i, Len : Integer;
begin
   repeat
     Writeln('Задайте строку:');
     Readln(S);

     //Обнуляем элементы массива.
     for Ch := #0 to #255 do Arr[Ch] := 0;

     //Анализируем строку.
     Len := Length(S);
     for i := 1 to Len do Inc(Arr[S[i]]);

     //Формируем строку результата.
     S := '';
     for Ch := #0 to #255 do begin
       if Arr[Ch] > 1 then begin
         if S <> '' then S := S + ', ';
         S := S + Ch;
       end;
     end;

     //Ответ.
     if S <> '' then begin
       Writeln('Список символов, которые встречаются в тексте более одного раза:');
       Writeln(S);
     end else begin
       Writeln('Нет ни одного символа, который встречался бы в тексте более одного раза.');
     end;

     Writeln('Повторить - Enter. Выход - любой символ + Enter.');
     Readln(S);
   until S <> '';
end.

1 | Автор: SpyBot | 2011-04-18, 20:37   |  Репутация: [ + 0 ]
1 | Автор: SpyBot | 2011-04-18, 20:37   |  Репутация: [ + 0 ]
Держи:)

var
a:string;s,i:byte;c:char;
begin
readln(a);
for i:=1 to length(a) do begin
c:=a[1];
delete(a,1,1);
s:=pos(c,a);
if s<>0 then write(c,' ');end;
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2011-04-19, 12:51   |  Репутация: [ + 211 ]
"Спасибо" принимается повышением репутации (Зелёный плюсик:) ). Спасибо

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
3 | Автор: Berestovskiy | 2011-04-19, 12:54   |  Репутация: [ + 211 ]
  • Страница 1 из 1
  • 1
Поиск: