давно
Старший Модератор
31795
6196
07.02.2009, 02:31
общий
это ответ
Здравствуйте, Sasha Sugak!
Программа в приложении.
Вопросы задавайте в мини-форум.
Удачи!
Приложение:
var
a,b,c:string;{рабочие строки}
d:set of char;{множество разлелителей}
e:integer;{просто так индекс}
begin
{вводим строку}
repeat
write('Enter String:');
readln(a);
until (length(a)>0)and(length(a)<250);
a:=a+' ';
{ставим множество разделителей}
d:=['.',',',':','-','+','*','/'];
{заменяем разделители}
for e:=1 to length(a) do
if a[e] in d then a[e]:=' ';
{удаляем двойные пробелы}
while pos(' ',a)>0 do
delete(a,pos(' ',a),1);
{начинаем работу}
c:='';
e:=0;
while length(a)>0 do
begin
{выделяем слово}
b:=copy(a,1,pos(' ',a));
delete(a,1,pos(' ',a));
{считаем слово}
inc(e);
if not odd(e)then
begin
{заменяем букву прописную и строчную}
while pos('A',b)>0 do
b[pos('A',b)]:=chr(ord(b[pos('A',b)])+11);
while pos('a',b)>0 do
b[pos('a',b)]:=chr(ord(b[pos('a',b)])+11);
while pos('O',b)>0 do
b[pos('O',b)]:=chr(ord(b[pos('O',b)])-4);
while pos('o',b)>0 do
b[pos('o',b)]:=chr(ord(b[pos('o',b)])-4);
end;
{формируем результат}
c:=c+b;
end;
write('Result string:',c);
readln;
end.
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.