Вопрос задан 09.02.2020 в 01:08. Предмет Информатика. Спрашивает Ялбаков Эжер.

Даны два натуральных числа m и n. Проверить, есть ли в записи числа m цифры, одинаковые с цифрами в

записи числа n. P.S. На языке паскаль.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Анпилогов Матвей.
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
begin
  var m:=ReadInteger('m=').ToString.ToSortedSet;
  var n:=ReadInteger('n=').ToString.ToSortedSet;
  if m.Intersect(n).Count>0 then Writeln('Есть одинаковые цифры')
  else Writeln('Нет одинаковых цифр')
end.

Тестовые решения:
m= 12345
n= 76840
Есть одинаковые цифры

m= 123456
n= 789087
Нет одинаковых цифр

А вот примерно так почему-то заставляют писать эту же задачу в школах:

// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
var
  i,m,n:integer;
  found:boolean;
  sm,sn:string;
begin
  Writeln('Введите через пробел два натуральных числа: ');
  Read(m,n);
  Str(m,sm);
  Str(n,sn);
  found:=False;
  for i:=1 to Length(sm) do
    if Pos(sm[i],sn)>0 then begin
      found:=True;
      break
      end;
  if found then Writeln('Есть одинаковые цифры')
  else Writeln('Нет одинаковых цифр')
end.

Тестовое решение:
Введите через пробел два натуральных числа:
5354353 111211
Нет одинаковых цифр


0 0
Отвечает Бутчик Вася.
//Pascal ABC.NET v3.0 сборка 1111

Var
 a,b,i,j:integer;
begin
 read(a,b);
 for i:=1 to length(inttostr(a)) do
  for j:=1 to length(inttostr(b)) do
  if inttostr(a)[i]=inttostr(b)[j] then
   begin;
    writeln('Есть');
    exit;
   end;
 writeln('Нет');
end.

Пример ввода:
123
345
Пример вывода:
Есть
0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос