Составьте программу, позволяющую проверить, можно ли из букв слова х составить слово у. буквы можно переставлять, но каждую букву можно использовать только 1 раз.
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016 begin var x:=ReadlnString('Введите слово Х:'); var y:=ReadlnString('Введите слово Y:'); var Good:=True; for var i:=1 to y.Length do begin var p:=Pos(y[i],x); if p>0 then Delete(x,p,1) else begin Good:=False; Break end end; if Good then Writeln('Можно составить ',y) else Writeln('Нельзя составить ',y) end.
Тестовое решение: Введите слово Х: образование Введите слово Y: название Нельзя составить название
Введите слово Х: образование Введите слово Y: барон Можно составить барон
begin
var x:=ReadlnString('Введите слово Х:');
var y:=ReadlnString('Введите слово Y:');
var Good:=True;
for var i:=1 to y.Length do begin
var p:=Pos(y[i],x);
if p>0 then Delete(x,p,1)
else begin Good:=False; Break end
end;
if Good then
Writeln('Можно составить ',y)
else
Writeln('Нельзя составить ',y)
end.
Тестовое решение:
Введите слово Х: образование
Введите слово Y: название
Нельзя составить название
Введите слово Х: образование
Введите слово Y: барон
Можно составить барон