В списке символов S1, S2, ., St найти самое короткое слово - Prolog
Формулировка задачи:
Здравствуйте, помогите пожалуйста.
В списке символов S1, S2, ..., Sn*найти самое короткое слово, если разделителем между словами является один или несколько пробелов и удалить его.
Решение задачи: «В списке символов S1, S2, ., St найти самое короткое слово»
textual
Листинг программы
minstr(Str1, Str2, Str2) :- string_length(Str1, Len1), string_length(Str2, Len2), Len1>Len2, !. minstr(Str1, Str2, Str1) :- string_length(Str1, Len1), string_length(Str2, Len2), Len1<Len2, !. minstr(Str1, Str2, Str2) :- string_length(Str1, Len1), string_length(Str2, Len2), Len1=Len2, !. minstr([],[],[]) :- !. minstring([], MinStr,X) :- delete(X, MinStr,Y), write(Y), !. minstring([Head|List], String,X) :- minstr(Head,String,Min), minstring(List,Min,X). find(Str) :- split_string(Str," ", "",[H|T]), minstring([H|T],H,[H|T]).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д