Напишите программу, которая проверяет, можно ли получить из одного имени другое путем...

0 голосов
92 просмотров

Напишите программу, которая проверяет, можно ли получить из одного имени другое путем перестановки его букв. При этом регистром букв нужно пренебречь.
stop pots
Yes
abbc bac
No
написать на paskal


Информатика (22 баллов) | 92 просмотров
0

да я буквой ошибся. 2)Да

Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  // вводим строку, перекодируем к нижнему регистру и делим на два слова
  var a:=ReadlnString.ToLower.ToWords;
  var (n1,n2):=(a[0].Length,a[1].Length); // длины слов
  if n1<>n2 then begin Writeln('No'); exit end;
  for var i:=1 to n1 do begin
    var p:=Pos(a[0][i],a[1]);
    if p=0 then begin Writeln('No'); exit end;
    Delete(a[1],p,1)
    end;
  Writeln('Yes')  
end.

Примеры
stop pots
Yes

aBbC bAc
No

ПароВоз ЗовоПар
Yes
(150k баллов)
0

огромное спасибо