Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Приклад 18.3




Приклад 18.2

Приклад 18.1.

Задано текст, який складають слова, які відокремлені одне від одного комами, а за останнім крапка. Визначити скільки слів з тексту мають дві літери ‘a’.

Розділ об'яв та ініціалізація файлів

Program slova_koma_kil_liter_a;

var s,old,new:string;

r,k,n,j:integer;

f,f1:text;

BEGIN assign(f,'slkomad.pas'); reset(f);

assign(f1,'slklitar.pas'); rewrite(f1);

Виведення слів у файл результатів

readln(f,s); { введення заданого рядка слів }

writeln(f1,s); { виведення заданого рядка слів у файл результатів}

j:=0;

while length(s)<>0 do begin

k:=pos(',',s); if k=0 then k:= pos('.',s);

old:=copy(s,1,k-1); {копіювання слів із заданого рядка}

write(f1,' old=',old); r:=0; { виведення слів у файл результатів}

Підрахунок кількості літер ‘a’ у слові

for n:=1 to k-1 do

if s[n]='a' then r:=r+1;{r - кількість літер ‘a’ у слові}

if r=2 then j:=j+1; { j - кількість слів з двома літерами ‘a’ у слові }

delete(s,1,k); { видалення слова із заданого рядка}

end;

writeln(f1); write(f1,'j=',j);

close(f1); end.

Заданий текст та отримані результати

Заданий рядок

zaz,month,sos,assa,beeb,abba,dog.

Отримані результати мають вигляд:

zaz,month,sos,assa,beeb,abba,dog.

old=zaz old=month old=sos

old=assa old=beeb old=abba old=dog

j=2

Задано текст, який складають слова, які відокремлені одне від одного комами, а за останнім словом крапка. Визначити скільки слів з тексту мають дві літери ‘a’. У цьому прикладі слова тексту запам'ятовуються у масиві.

Розділ об'яв та ініціалізація файлів

Program kil_liter_a;

var s:string;

old:array[1..10] of string;

i,r,k,n,j:integer;

f,f1:text;

BEGIN assign(f,'slkomad.pas'); reset(f);

assign(f1,'slklitar.pas'); rewrite(f1);

Створення масиву слів

readln(f,s); { введення заданого рядка слів }

writeln(f1,s); { виведення заданого рядка слів у файл результатів}

j:=0; i:=1;

while length(s)<>0 do begin

k:=pos(',',s); if k=0 then k:= pos('.',s);

old[i]:=copy(s,1,k-1); {копіювання слів із заданого рядка в масив}

Підрахунок кількості літер ‘a’ у слові

r:=0;

for n:=1 to k-1 do

if old[i,n]='a' then r:=r+1;{r - кількість літер ‘a’ у слові}

if r=2 then j:=j+1; { j - кількість слів з двома літерами ‘a’ у слові }

delete(s,1,k); { видалення слова із заданого рядка}

 

i:=i+1; end; writeln(f1);

write(f1,'j=',j);

close(f1); end.

Заданий текст та отримані результати

Заданий рядок

zaz,month,sos,assa,beeb,abba,dog.

Отримані результати мають вигляд:

zaz,month,sos,assa,beeb,abba,dog.

old=zaz old=month old=sos

old=assa old=beeb old=abba old=dog

j=2

Задана послідовність, яка налічує 40 латинських літер. Скласти програму, що підраховуватиме скільки однакових літер входить до заданого тексту та друкуватиме заданий текст вилучаючи повторні входження кожної літери та розміщуючи літери новоствореної послідовності у алфавітному порядку.

Розділ об'яв та ініціалізація файлів

Program lab12bukva;

var bukva:array['a'..'z'] of byte;

s,ost:string[40];

ch:char; f1,f2:text;

m,k1,i,n,k:integer;

begin assign(f1,'bk_alf5d.pas');reset(f1);

assign(f2,'bk_alf5r.pas'); rewrite(f2);

 

readln(f1,s);

ost:=s;

writeln(f2,'1 dani ',ost);

m:=length(ost);

for ch:='a' to 'z' do begin

k1:=pos(ch,ost);

if k1<>0 then begin write(f2,ch);

bukva[ch]:=0;

 

for n:=1 to m do begin

k:=pos(ch,ost);

if k<>0 then begin bukva[ch]:=bukva[ch]+1;

delete(ost,k,1);end

end; end else bukva[ch]:=0;

m:=length(ost); end;

 

writeln(f2);

writeln(f2,'Літери, що входять до тексту');

for ch:='a' to 'z' do

if bukva[ch]<>0 then

writeln(f2,ch,' ', bukva[ch]);

 

writeln(f2,'Літери, що не входять до тексту');

for ch:='a' to 'z' do

if bukva[ch]=0 then write(f2,ch,' ');

close(f2); end.

 

dani

alfacbetxyaceelftxrhjiuywxesdfyhjuiacbdz

abcdefhijlrstuwxyz

Літери, що входять до тексту

a 4

b 2

c 3

d 2

e 4

f 3

h 2

i 2

j 2

l 2

r 1

 

s 1

t 2

u 2

w 1

x 3

y 3

z 1

Літери, що не входять до тексту

g k m n o p q v




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 290; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.