Ввести два предложения и найти такую (максимально большую) часть первого предложения, которая входит во второе предложение. - Pascal ABC
Формулировка задачи:
Здравствуйте. Я только первый год учусь на программиста и не совсем ещё разбираюсь. Помогите пожалуйста решить задачку и если не сложно с объяснением. Вот задача "Ввести два предложения и найти такую (максимально большую) часть первого предложения, которая входит во второе предложение." ,
Решение задачи: «Ввести два предложения и найти такую (максимально большую) часть первого предложения, которая входит во второе предложение.»
textual
Листинг программы
uses crt; var s,s1,s2:string; i,j,mx:byte; begin writeln('Введите 1 предложение'); read(s1); writeln('Введите 2 предлжение'); read(s2); mx:=0;//пусть нет общих символов for i:=1 to length(s1) do //идем по строке for j:=i to length(s1) do //смотрим все впереди //если кусок есть во второй и он больше чемдо этого if (pos(copy(s1,i,j-i+1),s2)>0)and(j-i+1>mx) then begin mx:=j-i+1; //макс. длина s:=copy(s1,i,j-i+1);//сам текст end; if mx=0 then write('Во втором предложении нет символов из первого') else begin writeln('Наибольшая часть первого предложения, которая есть во втором'); write(s); end; End.
Объяснение кода листинга программы
- Ввод двух предложений с помощью функции readln.
- Инициализация переменной mx значением 0, которая будет хранить длину наибольшей общей части.
- Два вложенных цикла for для прохода по всем символам первого предложения.
- Внутри циклов проверяется наличие подстроки из первого предложения во втором с помощью функции pos.
- Если подстрока найдена и её длина больше текущей максимальной длины, то обновляются значения переменных mx и s.
- После завершения циклов проверяется значение переменной mx. Если оно равно 0, то выводится сообщение о том, что во втором предложении нет символов из первого.
- В противном случае выводится наибольшая общая часть первого предложения, которая есть во втором.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д