Даны два предложения. Определить слова первого предложения, которые встречаются во втором, причем неважно, на каком регистре набраны эти слова (т.е. одинаковыми считаются слова ГОД и год).
Помогите кто чем может! Заранее спасибо!
program predlog;
Uses Crt;
var
stroka : string;
begin
ClrScr;
WriteLn('Введите 2 предложения разделих их точкой ');
TextColor(Cyan);
ReadLn(stroka);
stroka:=stroka + '.';
uses crt;
type str=array[1..100] of string;
Procedure Split(var s:string; var output:str; var index:integer);
var i:integer;
Begin
index:=1;
For i:=1 to length(s) do
if (s[i] = ' ') then inc(index)
else output[index]:=output[index]+s[i];
End;
//------------------------------------------------------------------------------
var s1,s2,equals:string;
i,j,size1,size2:integer;
A,B:str;
begin
Write('Enter s1: ');
ReadLn(s1);
Write('Enter s2:');
ReadLn(s2);
Split(s1,A,size1);
Split(s2,B,size2);
WriteLn;
For i:=1 to size1 do
For j:=1 to size2 do
if (A[i] = B[j]) then WriteLn(A[i]);
Readln;
end.
function Eq(s,t: string): boolean;
var
i: integer;
e: boolean;
begin
e:= Length(s)=Length(t);
i:= 1;
while e and (i<=Length(s)) and (UpCase(s[i])=UpCase(t[i]) do Inc(i);
Eq:= e and (i>Length(s))
end;
function Eq(s,t: string): boolean;
var
i: integer;
e: boolean;
begin
e:= Length(s)=Length(t);
i:= 1;
while e and (i<=Length(s)) and (UpCase(s[i])=UpCase(t[i]) do Inc(i);
Eq:= e and (i>Length(s))
end;
procedure UpCaseRus(var s:string);{приведение к верхнему регистру русских букв}
{русские в верхний регистр}
var i:integer;
begin
for i:=1 to length(s) do
if s[i] in ['а'..'п'] then s[i]:=chr(ord(s[i])-32)
else if s[i] in ['р'..'я'] then s[i]:=chr(ord(s[i])-80)
else if s[i]='ё' then s[i]:='Ё';
end;
function UpCase(s:string):string;{приведение к верхнему регистру всей строки}
{UpCase}
var i,k:byte;
st:string;
begin
st:=s;
for i:=1 to length(s) do
if st[i] in ['a'..'z'] then st[i]:=UpCase(st[i])
else if st[i] in [' '..'Ї'] then st[i]:=chr(ord(st[i])-32)
else if st[i] in ['а'..'п'] then st[i]:=chr(ord(st[i])-80)
else if st[i]='с' then st[i]:='р';
while st[1]=' 'do delete(st,1,1);
while st[length(st)]=' ' do delete(st,length(st),1);
UpCase:=st;
end;
procedure LowCase(var s:string);{приведение к нижнему регистру}
var i:byte;
begin
for i:=1 to length(s) do
if s[i] in ['A'..'Z','А'..'П'] then s[i]:=chr(ord(s[i])+32)
else if s[i] in ['Р'..'Я'] then s[i]:=chr(ord(s[i])+80)
else if s[i]='Ё'then s[i]:='ё';
end;