Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний технічний університет України
“Київський політехнічний інститут”
Кафедра ОТ
ЗВІТ
про виконання лабораторної роботи № 6
з дисципліни
“Основи програмування ”
Тема: РЯДКИ
Постановка задачі
У заданому рядку символів підрахувати кількість слів, що знаходяться між симвлоами ‘;’.
аналітичні викладки
Рядок - це масив символів коду ASCІІ. Для знаходження кількості слів в рядку потрібно знайти кількість пробілив у цьому рядку, отже є пробіл є слово, але треба вилучити пробіли що повторюються та впорядкувати їх.
блок-схема алгоритму
текст програми
program lab6;
uses crt;
type vek=array[1..10]of integer;
var
q:string; {flag povtoreniy programi}
r,s:string;
{====================}
procedure input(var l:string); {vvoda radka}
begin
readln(l);
end;
{==================}
procedure output(l:string);{vivoda radka}
begin
writeln(l);
end;
{===========================================}
procedure Blank;
begin
while (s[1] = ' ') do
Delete (s, 1, 1); { vilychenz probelov }
if Length (s) <> 0 then s := s + ' ';
while Pos (' ', s) <> 0 do
Delete (s, Pos (' ', s), 1); { vilechenz probelov povtr }
{ dodovana probely }
end;
{=====================}
procedure peret(l:string); {osnovnaya procedyra}
var
i,j:integer;{peremenie ciklov}
a:vek; {dopolnitelnii vektor}
{==================================}
function c4et(p1,p2:integer):integer; {fynkciya podcheta}
var i,k:integer;
begin
s:=copy(l,p1+1,(p2-p1)-1);
blank;
k:=0;
for i:=1 to length(s) do
if copy(s,i,1)=' ' then {podc4et slov}
k:=k+1;
c4et:=k;
end;
{=================================}
begin
i:=1; j:=0;
for i:=1 to length(l) do {poisk videlenogo promezytka}
if copy(l,i,1)=';' then
begin
j:=j+1;
a[j]:=i; {vvod promezytkov v dop. vektor}
end;
i:=1;
if j mod 2=0 then {proverka na pravelnost vvoda}
while i<j do
begin {vivod rezyltata}
writeln('v videlenii koli4estvo slov = ',c4et(a[i],a[i+1]));
i:=i+2;
end
else
writeln('nevernoe videlenie');
end;
{========================}
begin
clrscr;
writeln ('Laboratorna robota 6');
writeln ('Variant 15');
writeln('vikonav Kononec German ip-02');
q:='yes'; {startovoe zna4enie vneshnego cikla}
while (q='yes') or (q='Y') or (q='y') do {yslovie}
begin
input(r);
{output(r);}
peret(r);
writeln;
writeln('povtorit` program? (yes\no)'); {zapros na povtor programi}
readln(q); {vvidenie zna4enia cikla}
end;
end. {konec}
Відеокопія результату
/
Висновок
В даній роботі, навчився працювати з рядками, знаходити їх довжину, першу позицію необхідного символу, шукати кількість слів у заданому рядку.