Нужно решить на языке паскаль. изучаем string. 1.вовочка скучая на уроке придумал себе игру. он открывал книгу на любой странице. выделял фрагмент текста, загадывал символ и подсчитывал сколько раз эта буква встречалась в фрагменте. составить программу, которая подсчитывает, сколько раз загаданная буква встречается в строке. 2.вася пупкин плохо писал диктанты. чаще всего вася писал двойные буквы. ваше написать программу которая удалит из текста повторяющиеся символы.
//1
Var
s:string;
c:char;
counter:integer;
begin
readln(s);
readln(c);
while pos(c,s)<>0 do
begin
inc(counter);
delete(s,pos(c,s),1);
end;
writeln(counter);
end.
Пример ввода:
banana
a
Пример вывода:
3
//2
Var
s:string;
i:integer;
begin
readln(s);
i:=2;
while i<=length(s) do
if s[i-1]=s[i] then
delete(s,i,1)
else
inc(i);
writeln(s);
end.
Пример ввода:
saad
Пример вывода:
sad
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadlnString('Текст:');
var c:=ReadlnChar('Буква:');
Writeln('Буква встречается ',s.Where(p->p=c).Count,' раз(а)')
end.
Пример
Текст: а роза упала на лапу азора
Буква: а
Буква встречается 8 раз(а)
// PascalABC.NET 3.2, сборка 1379 от 21.01.2017
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadlnString('Текст:');
var m:=s.MatchValues('(\w)\1{1}').Distinct;
foreach var cc in m do s:=s.Replace(cc,cc[1]);
s.Println
end.
Пример
Текст: стеклянный оловянный длинношеее искусство
стекляный оловяный длиношее искуство