среда, 12 февраля 2014 г.

Типовые задачи на обработку символьных строк

1. Дана строка, в которой содержится 30 символов. Напишите программу, подсчитывающую, сколько раз в строке встречается буква 'k'.

var a: string[30];
n: integer;
begin
writeln('vvedite stroku');
readln(a);
n:=0;
for i:=1 to length(a) do
if a[i]='k' then n:=n+1;
writeln ('v stroke', a, 'sodergitsya', n, 'bukv k');
end.

2. Измените программу так, чтобы она поменяла в строке все буквы 'k' на буквы 'n'.
var a: string[30];
n: integer;
begin
writeln('vvedite stroku');
readln(a);
for i:=1 to length(a) do
if a[i]='k' then a[i]:='n';
writeln ('novaya stroka', a);
end.


3. В строке, содержащей 25 символов, подсчитайте количество цифр.
var a: string[30];
var b: string[10];
i,j,n: integer;
writeln('vvedite stroku');
readln(a);
b:='0123456789';
for i:=1 to length(a) do
      for j:=1 to 10 do
         if b[j]=a[i] then n:=n+1;
writeln ('v stroke', a, 'sodergitsya', n, 'tsifr');
end.

4. Напишите программу, проверяющую, является ли слово палиндромом.
var a:string;
k,l,m: integer;
begin
writeln('vvedite slovo');
readln(a);
k:=0;
l:=lenght(a);
m:=trunc(l/2);
for i:=1 to m do
     if s[i]<>s[l+1-i] then k:=1;
if k=0 then writeln('palindrom') else writeln('ne palindrom');
end.

5. В строке символов удалите все точки.
var a,h: string;
i: integer;
begin
writeln('vvedite stroku');
readln(a);
for i:=1 to length(a) do
       if a[i]='.' then begin
                     k:=k+1;
                     h[k]:=s[i];
                     end;
for i:=1 to length (a) do
         write(h[i]);
end.








Литература
1. Житкова О.А., Кудрявцева Е.К. Справочные материалы по программированию на языке Паскаль. "Интеллект-центр", Москва, 2003

Комментариев нет:

Отправить комментарий