Предмет: Информатика, автор: missamazingschool153

Сортировать строки можно как по возрастанию, так и по убыванию значений в том смысле, который подразумевается при сравнении строк. На вход вашей программе будут подаваться две строки и символ, который обозначает направление сортировки:

> - означает, что вывести нужно строку с бОльшим значением,


СРОЧНО!!!
Язык мой
Пример 2
Ввод Вывод
Язык мой
Враг мой
<
Враг мой


missamazingschool153: А можешь на питон
missamazingschool153: пожалуйста

Ответы

Автор ответа: MaxLevs
1

Язык не указан → приведу пример на SWI-Prolog.

Код

  • %Файл string_sortin.pl
  • sort([], [], _).
  • sort([Head|Tail], Ordered, Qrd) :-  sort(Tail, SubSorted, Qrd),
  •         put(Head, SubSorted, Sorted),
  •         order(Sorted, [], Ordered, Qrd).
  • put(X, [], [X]).
  • put(X, [H|T], [X,H|T]) :- compare(>, X, H).
  • put(X, [H|T], [H|R]) :- put(X, T, R).
  • order(X, _, X, ">").
  • order([], R, R, "<").
  • order([H|T], B, R, "<") :- order(T, [H|B], R, "<").
  • select(">", Bufer, Bufer, _, ">").
  • select("<", Bufer, Bufer, _, "<").
  • select(S, Bufer, [S|Bufer], Ord, Ord).
  • input_strings(Input, Bufer, Strings, Ord, ROrd) :-
  • compare(=, Ord, "="),
  • read_string(Input, "\n", "\r", _, String),
  • select(String, Bufer, SS, Ord, OO),
  • input_strings(Input, SS, Strings, OO, ROrd).
  • input_strings(_, Strings, Strings, Ord, Ord).
  • ?- current_input(Input), input_strings(Input, [], Strings, "=", Ord), sort(Strings, [R|_], Ord), writeln(R).

Приложения:
Похожие вопросы
Предмет: Русский язык, автор: tlegenovakama0
Предмет: Русский язык, автор: sergo3719