Предмет: Информатика, автор: Daniyar23

Задача по программированию на Паскаль, нужна помощь.
Дана строка состоящая из строчных букв английского алфавита. Необходимо определить какие буквы встречаются в этой строке больше одного раза.
Формат входных файлов: Входной файл содержит одну строку S длиной не более чем 100 символов, состоящую из букв a,b,c...
Выходной файл должен содержать в алфавитном порядке последовательность букв строки S, которые встречаются в ней больше одного раза. Каждая буква выводится не больше одного раза.

Ответы

Автор ответа: petyaGavrikov
0
var t1,t2:text;
s:string;
k:array['a'..'z']of integer;
i:integer; c:char;
begin
assign(t1,'input.txt');
reset(t1);
assign(t2,'output.txt');
rewrite(t2);
readln(t1,s);
for c:='a' to 'z' do k[c]:=0;
for i:=1 to length(s) do k[s[i]]:=k[s[i]]+1;
for c:='a' to 'z' do
 if k[c]>1 then write(t2,c);
writeln(t2);
close(t1); close(t2);
end.

Пример:
Файл input.txt:
xyzabcdefgabcdx

Файл output.txt
abcdx
Автор ответа: petyaGavrikov
0
Input и Output - стандартные текстовые файлы ввода и вывода соответственно. Так что формально всё ОК. )
Автор ответа: Аноним
0
Т.е. Вы хотите сказать, что раздел Паскаля по работе с текстовыми файлами можно смело выкинуть и подменить вводом с клавиатуры и выводом на монитор? Там везде пишут как раз "строки входного файла", "строки выходного файла". Не ожидал от Вас такого...
Автор ответа: Аноним
0
И, кстати, "Input и Output - стандартные текстовые файлы ввода и вывода" - это в какой операционной системе?
Автор ответа: petyaGavrikov
0
Ну прямо изругали совсем. Придется исправить.
Автор ответа: Аноним
0
Я не изругал, я просто сильно удивился. Это же не С/С++ с потоками....
Автор ответа: Аноним
0
// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ReadAllText('input.txt');
  WriteAllText('output.txt',s.GroupBy(c->c).Select(t->(t.Key,t.Count))
      .Where(t->t[1]>1).Select(t->t[0]).OrderBy(t->t).JoinIntoString(''))
end.

Пример
Во входном файле input.txt записана строка
petrwpoqwwefrnmvndihbgfuiusbnyaysinrivniweuwepkwqeofkwpr
В выходном файле output.txt будет получена строка
befiknopqrsuvwy
Похожие вопросы
Предмет: Физика, автор: sergey7847
Предмет: Математика, автор: gccdcx