1)
var
str : string;
begin
readln (str);
writeln (length (str) - pos (':', str));
end.
2)
var
str, s : string;
count, i : integer;
begin
readln (str);
s := copy (s, pos ('(', str) + 1, pos (')', str) - pos ('(', str) - 1);
count := 0;
for i := 1 to length (s) do
if s[i] = ' ' then inc (count);
writeln (count + 1);
end.
3)
var
str : string;
count : integer;
begin
readln (str);
count := 0;
while pos (',', str) > 0 do
begin
inc (count);
delete (str, pos (',', str), 1);
end;
writeln (str);
writeln (count);
end.
Сделано без проверки на соответствие условию.
program z_string;
uses crt;
const Letters = ['a'..'z','A'..'Z','а'..'я','А'..'Я'];
var StringS, Symbol :string;
CounterI, Number:byte;
begin
clrscr;
writeln('Введите строку текста');
readln(StringS);
Number := 0;
Symbol := '';
for CounterI := 1 to length(StringS) do
begin
if (StringS[CounterI] in Letters) and (Symbol = '') then
Symbol := StringS[CounterI];
if (not(StringS[CounterI] in Letters)) and (CounterI <> 1) then
begin
if StringS[Counteri - 1] = Symbol then
inc(Number);
Symbol := '';
end;
if (CounterI = length(StringS)) and (StringS[CounterI] = Symbol) then
inc(Number);
end;
writeln;
writeln('Количество слов начинающихся и заканчивающихся одной и той же буквой ', Number);
readln;
end.
ахах тоже составляли такую,прикольная;)
Дискета вмещает 1,44 Mb информации.
x= 8*1,44 Mb/(55*65)= 8*1,44*1024*1024/(55*65) страниц= и получилось приблизительно 3406 страниц.
(Замечание:мы предположили, что 1 символ кодируется 8 битами, если это не так, задачку )... придется пересчитывать...
Проверьте мою арифметику, а то я уже Спю - в Сибири - 9 часов...